สร้าง Ubuntu Live CD ของคุณเอง

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา

ที่นี่ใน Ghacks ฉันได้กล่าวถึงเครื่องมือบางอย่างที่ช่วยให้คุณสร้างซีดี Linux ประเภทต่างๆ เครื่องมือเหล่านี้ส่วนใหญ่ช่วยให้คุณสามารถสร้าง Live CD ที่เป็นภาพของการแจกจ่ายที่ทำงานอยู่ในปัจจุบันของคุณหรือเครื่องมือในการสร้าง Live CD พร้อมแพ็คเกจพิเศษ แต่จนถึงขณะนี้ยังไม่มีเครื่องมือใดที่ช่วยให้คุณปรับแต่ง Live CD ได้ คุณไม่สามารถระบุพื้นหลังเดสก์ท็อปหรือตัวเลือกการกำหนดค่าอื่น ๆ นี่คืองานที่สามารถสร้าง Live CD แบบกำหนดเองได้อย่างคุ้มค่ากับความพยายาม

ในบทความนี้ฉันจะแสดงวิธีใช้อิมเมจ ISO ของ Ubuntu 9.10 ที่ดาวน์โหลดมาติดตั้งปรับแต่งและสร้าง Live CD ใหม่จากภาพที่คุณปรับแต่งใหม่ กระบวนการนี้อาจใช้เวลานาน แต่ก็คุ้มค่า กระบวนการทั้งหมดนี้จะทำจากบรรทัดคำสั่งดังนั้นเตรียมนิ้วของคุณให้พร้อมที่จะพิมพ์

สิ่งแรกที่คุณต้องมีคืออิมเมจ ISO ของรุ่นล่าสุด ดังนั้นกระโดดไปที่ เว็บไซต์ของ Ubuntu และดาวน์โหลดสำเนา 9.10 ใหม่ เมื่อเสร็จแล้วคุณก็พร้อมที่จะไปทำงาน

ก่อนที่คุณจะดำเนินการปรับแต่งต่อไปคุณต้องติดตั้งเครื่องมือบางอย่างที่จำเป็น จากบรรทัดคำสั่งออกคำสั่งนี้:

sudo aptitude ติดตั้ง squashfs-tools genisoimage

ตอนนี้สร้างไดเร็กทอรีว่างที่จะใช้ทำงานกับอิมเมจ ISO มาสร้างสิ่งนี้ในโฮมไดเร็กทอรีผู้ใช้ของคุณดังนั้นออกคำสั่ง:

mkdir ~ / LIVECD

ตอนนี้ย้ายอิมเมจ iso ที่ดาวน์โหลดมาใหม่ไปยังไดเร็กทอรีใหม่และเตรียมพร้อมที่จะทำงาน

สิ่งแรกที่ต้องทำคือการเมานต์อิมเมจ ISO ด้วยคำสั่ง คุณจะต้องสร้างไดเร็กทอรีย่อยเพื่อเชื่อมต่ออิมเมจดังนั้นให้ออกคำสั่ง:

mkdir ~ / LIVECD / เมาท์

ตอนนี้เมานต์ iso ด้วยคำสั่ง:

sudo mount -o ลูป ubuntu-9.10-desktop-i386.iso ~ / LIVECD / mount /

ตอนนี้คุณจะต้องสร้างไดเร็กทอรีอื่นที่คุณจะแยกเนื้อหาของ ~ / LIVECD / mount ไป ออกคำสั่ง:

mkdir ~ / LIVECD / extract-cd

จากนั้นแยกด้วยคำสั่ง:

rsync --exclude = / casper / filesystem.squashfs -a mnt / extract-cd

ตอนนี้แตกระบบไฟล์ squashfs ด้วยคำสั่ง:

sudo unsquashfs เมานต์ / casper / filesystem.squashfs

sudo mv squashfs-root แก้ไข

ก่อนหน้านี้ของสองคำสั่งข้างต้นจะใช้เวลาสักครู่ นั่นเป็นเรื่องปกติ
หากคุณต้องการเข้าถึงเครือข่ายด้วยระบบนี้ (และคุณอาจจะ) คุณจะต้องแก้ไขไฟล์ /etc/resolv.conf ดังนั้นจึงมีที่อยู่ DNS ที่เหมาะสม ในการดำเนินการนี้เพียงแค่คัดลอกการทำงานปัจจุบันของคุณ resolve.conf ไฟล์ลงในไฟล์ ~ / LiveCD / แก้ไข / ฯลฯ ไดเร็กทอรีด้วยคำสั่ง:

sudo cp /etc/resolve.conf ~ / LIVECD / แก้ไข / etc /

ตอนนี้เพื่อติดตั้งไดเรกทอรีที่สำคัญบางอย่างในระบบของคุณ:

ติดตั้ง sudo - ผูก / dev / แก้ไข / dev
sudo chroot แก้ไข
mount -t proc ไม่มี / proc
mount -t sysfs ไม่มี / sys
mount -t devpts ไม่มี / dev / pts

การยกเลิกการต่อเชื่อมไดเรกทอรีเหล่านี้จะมีความสำคัญมากในภายหลัง

ต่อไปเราจะสร้างมันขึ้นมาเพื่อหลีกเลี่ยงปัญหาโลแคลและอนุญาตให้เรานำเข้าคีย์ GPG (ถ้าจำเป็น) เราจะออกคำสั่ง:

ส่งออก HOME = / root

ส่งออก LC_ALL = C

ตอนนี้คุณสามารถดูแพ็คเกจทั้งหมดที่ติดตั้งบน ISO ที่ติดตั้งด้วยคำสั่ง:

dpkg-query -W --showformat = '$ {Package} n' | เรียง -nr | น้อยกว่า

คุณสามารถผ่านรายการนั้นและลบแพ็คเกจที่คุณไม่ต้องการใน Live CD ด้วยคำสั่ง:

ความถนัดล้าง PACKAGE_NAME

ที่ไหน PACKAGE_NAME คือชื่อของแพ็กเกจที่คุณต้องการลบ จากนั้นคุณสามารถติดตั้งแพ็คเกจใหม่บน Live CD โดยออกคำสั่ง:

ความถนัดติดตั้ง PACKAGE_NAME

ที่ไหน PACKAGE_NAME คือชื่อของแพ็คเกจที่จะติดตั้ง

ภาพพื้นหลังของเดสก์ท็อปล่ะ ใช่คุณสามารถปรับแต่งสิ่งนี้ได้เช่นกัน ถ้าคุณดูไฟล์ /usr/share/gnome-background-properties/ubuntu-wallpapers.xml คุณจะเห็นว่าพื้นหลังเริ่มต้นถูกกำหนดค่าไว้ที่ใด คุณสามารถแก้ไขไฟล์นั้นได้ แต่คุณจะต้องแน่ใจว่าไฟล์. png ที่คุณต้องการใช้นั้นอยู่ใน / usr / share / GConf / ค่าเริ่มต้น / 16_ubuntu-วอลล์เปเปอร์ .

คุณยังสามารถแก้ไขไฟล์ /etc/gconf/gconf.xml.defaults/%gconf-tree.xml เพื่อทำการเปลี่ยนแปลงการปรับแต่งเพิ่มเติมใด ๆ (ฟอนต์สีตัวเลือกแผง ฯลฯ ) ภายในไฟล์นั้น ทำความเข้าใจว่าไฟล์นี้เป็นไฟล์เปล่าซึ่งคุณจะเพิ่มค่าเริ่มต้นใหม่ให้ หากคุณต้องการใช้ gconftool เพื่อแก้ไขค่าเหล่านี้คุณสามารถทำได้โดยใช้คำสั่งเช่น:

gconftool-2 --direct --config-source xml: readwrite: /etc/gconf/gconf.xml.defaults - สตริงประเภท - ตั้งค่า KEY 'VALUE'

โดยที่ KEY คือคีย์ที่คุณต้องการเปลี่ยนและ VALUE คือค่าที่จะกำหนดให้กับคีย์

มีการกำหนดค่าอื่น ๆ อีกมากมายที่คุณสามารถทำได้ที่นี่ แต่สำหรับขอบเขตของบทความนี้เราจะปล่อยให้มันเป็นสิ่งที่เรามี

ถึงเวลาตรวจสอบให้แน่ใจว่าได้ลบไฟล์ชั่วคราวที่อาจหลงเหลือจากการติดตั้งแพ็กเกจด้วยคำสั่ง:

ความถนัดสะอาด

คุณยังสามารถลบไฟล์ /etc/resolv.conf ที่คุณเพิ่มด้วยคำสั่ง:

rm /etc/resolv.conf

เวลาในการยกเลิกการต่อเชื่อมไดเรกทอรี:

umount / proc
umount / sys
umount / dev / pts
ทางออก
sudo umount แก้ไข / dev

ใส่กลับเข้าด้วยกัน

ตอนนี้ถึงเวลาที่จะปะติดปะต่อทุกอย่างกลับเข้าด้วยกัน ก่อนอื่นคุณต้องสร้างรายการใหม่:

chmod + w extract-cd / casper / filesystem.manifest
sudo chroot แก้ไข dpkg-query -W --showformat = '$ {Package} $ {Version} n'> extract-cd / casper / filesystem.manifest
sudo cp extract-cd / casper / filesystem.manifest extract-cd / casper / filesystem.manifest-desktop
sudo sed -i '/ ubiquity / d' extract-cd / casper / filesystem.manifest-desktop
sudo sed -i '/ casper / d' extract-cd / casper / filesystem.manifest-desktop

ตอนนี้เพื่อบีบอัดระบบไฟล์:

sudo rm extract-cd / casper / filesystem.squashfs
sudo mksquashfs แก้ไข extract-cd / casper / filesystem.squashfs

คำสั่งดังกล่าวจะใช้เวลาสักครู่

ตอนนี้เปิดไฟล์ ~ / LIVECD / extract-cd / README.diskdefines และทำการเปลี่ยนแปลงที่จำเป็น

ขั้นตอนต่อไปคุณต้องลบผลรวม md5 เก่าและคำนวณผลรวมใหม่ ทำสิ่งนี้ด้วยคำสั่งต่อไปนี้:

สารสกัด cd-cd
sudo rm md5sum.txt
ค้นหา -type f -print0 | xargs -0 md5sum | grep -v isolinux / boot.cat | sudo ที md5sum.txt

ตอนนี้ถึงเวลาสร้างอิมเมจ ISO ทำโดยใช้คำสั่งต่อไปนี้:

sudo mkisofs -D -r -V '$ IMAGE_NAME' -cache-inodes -J -l -b isolinux / isolinux.bin -c isolinux / boot.cat -no-emul-boot -boot-load-size 4 -boot- ข้อมูลตาราง -o ../ubuntu-9.04.1-desktop-i386-custom.iso

ตอนนี้ในไดเร็กทอรี ~ / LIVECD คุณจะมี ISO ใหม่เพื่อเบิร์นลงดิสก์และใช้งาน

ขอแสดงความยินดีคุณเพิ่งสร้าง Ubuntu Live CD ของคุณเอง!