Bu cevap ISO tezahürlerinden bahsediyor - bir örnek burada. .
Manifest dosyasından ISO oluşturmak mümkün mü, yoksa manifest dosyası sadece
dpkg --get-selections
bir metin dosyasına mı konulmuş?
İlgili, sorta:
Bu cevap ISO tezahürlerinden bahsediyor - bir örnek burada. .
Manifest dosyasından ISO oluşturmak mümkün mü, yoksa manifest dosyası sadece
dpkg --get-selections
bir metin dosyasına mı konulmuş?
İlgili, sorta:
Yanıtlar:
Filesystem.manifest şu komutla oluşturulur:
dpkg-query -W --showformat='${Package} ${Version}\n' > casper/filesystem.manifest
Sözdizimi böyledir package_name version
, Örnek:
xserver-xorg-video-nouveau 1:0.0.16+git20110411+8378443-1
Biçimi dpkg --get-selections
biraz farklıdır,package_name install
Misal
xserver-xorg-video-nouveau install
Böylece dosyayı, muhtemelen bir şekilde birden kullanabilirsiniz,
apt-get install -y $(awk '{print $1}' filesystem.manifest)
Dürüst olmak gerekirse, yıllar içinde birkaç özel iso yaptıktan sonra, nasıl çalıştığına dair bir öğrenme eğrisi vardır. Birkaç şeyi anladıktan sonra, çok zor değil, sadece gerekli bilgi orta derecede büyüktür ve tek bir güncel bilgi kaynağı yoktur.
2 derleme dizini kullanırsınız
~/custom - build directory for the iso
~/rootfs - build directory for the root file system.
custom - bu dizin son iso'ya gidecek tüm dosyaları içerir. Kök dosya sistemi, bir çekirdek, bir initramfs ve isolinux içerir.
rootfs - bu dizin canlı CD dosya sistemini içerir ve bu dizini (mksquashfs kullanarak) sıkıştırır ve CD'ye eklersiniz. Bunu debootstrap (sıfırdan canlı D) ile oluşturursunuz veya dosya sistemini ubuntu-desktop.iso'dan çıkarırsınız (canlı bir CD'yi özelleştirir). Ayrıntılar için aşağıdaki ubuntu wiki bağlantılarına bakın.
1) mksquashfs'i anlayın - kök dosya sistemini sıkıştırmak için mksquashfs kullanıncasper/filesystem.squashfs
sudo mksquashfs /home/bodhi/rootfs custom/casper/filesystem.squashfs
2) isolinux'u anlayın - bu, iso'yu ve CD (önyükleme) menünüzü önyüklenebilir hale getirir. Bkz. Arch Linux Wiki syslinux .
Grub2'yi isolinux'a alternatif olarak kullanabilirsiniz, ancak sonra grub2'nin nasıl çalıştığını anlamanız gerekir;). Çoğu canlı CD hala isolinux kullanıyor.
3) Bir initramf nasıl yapılır. İnitramfs önyükleme için kullanılan ikinci bir dosya sistemidir. Genellikle bir sorunla karşılaştığınızda (özel önyükleme görüntüsü çalışmıyor, çekirdek modülleri yüklenmiyor) ve neden kök dosya sisteminize baktığınızı anlayamıyorsunuz, cevap initramfs'de çok olası.
#extract to a working_directory , I use ~/initrd
cd ~/initrd
lzma -dc -S .lz ../initrd.lz | cpio -imvd --no-absolute-filenames
# Make your edits / adjustments
# Package
cd ~/initrd
find . | cpio --quiet --dereference -o -H newc | lzma -7 > ../custom.initrd.lz
Daha sonra yeni initrd.lz dosyanızı özel oluşturma dizininize taşırsınız, custom/casper/initrd.lz
4) Casper. Casper ve casper komut dosyaları 3 konumda bulunur ve her üçü de rol oynayabilir. Hepsi bash betikleri ve bir noktada neredeyse kesinlikle onlara bakmak isteyeceksiniz.
Ev sahibi - /usr/share/initramfs-tools/scripts/casper
B. kök dosya sistemi - özel / usr / share / initramfs-tools / scriptler / casper
İnitramfs dosyasında - / scripts dizinine bakın.
Ubuntu man casper'ı görün
5) Kullanıcı arayüzünde / uygulamalarında özelleştirmeler yaparsınız /usr/share
, /usr/share/gnome*
örneğin, kesin konumlar sürümden farklıdır, /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
sürümler arasında klasik ve oldukça standarttır.
6) Eğer özelleştirmeler yapamıyorsanız /usr/share/
, kullanın /etc/skel
, işte /etc/skel/.bashrc
bir klasik, bu dosya ~ / .bashrc kopyalanır. Firefox veya gnome için ya da ne için değil çeşitli confg dosyaları koyabilirsiniz, ancak / usr / share mümkünse daha iyidir (ayarlarına göre değişir).
7) mkisofs - yapı dizininizi iso'ya dönüştürmek için mkisofs kullanırsınız
cd ~/custom
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-info-table -o ../ubuntu-12.04-custom.iso .
8) Kalıcılık. Ubuntu-masaüstü cd ve özel bir cd de dahil olmak üzere birçok canlı CD ile kalıcılığı kullanabilirsiniz, bu casper tarafından uygulanır.
A. root - casper casper-rw
, / üzerine inek katmanı olarak etiketlenmiş bir bölüm veya dosya monte eder . Daha sonra bir paket yükler veya bir yapılandırma dosyasını değiştirirseniz, değişiklikler yeniden başlatma sırasında devam eder.
Bunu idareli kullanın. Tüm paketleri güncellerseniz çok yer kaplar. Ayrıca bu yöntemin bazen buggy olduğunu da düşünüyorum.
B. Home - Casper eşiği, aas home-rw
üzerine / home üzerine inek bindirmesi olarak etiketlenmiş bir bölüm veya dosya monte eder .
Firefox yer işaretlerim ve özel verilerim botlar arasında korunacağından bunu daha güvenilir buluyorum.
Kalıcı ev (kalıcı / için casper-rw olarak değiştir /
# this is a 1 Gb file, increase or decrease the count to make it larger or smaller
dd if=/dev/zero of=home-rw bs=1M count=1000
# make a file system
mkfs.ext4 home-rw
mke2fs 1.41.14 (22-Dec-2010)
home-rw is not a block special device.
Proceed anyway? (y,n) y <-- ANSWER 'y' here
#tune the file system to remove reserved blocks and label it 'home-rw'
tune2fs -m 0 -L home-rw home-rw
home-rw
/ (Bölümün kök dizinine) veya flash sürücüye (alt dizine değil) koyun .
Canlı CD'yi başlattığınızda, F6tuşuna basın, onlar '-' önündeki önyükleme parametrelerine Escseçenek eklerpersistent
quiet splash persistent --
Casper önyükleme komut dosyaları daha sonra otomatik olarak bir mount bulur.
Bkz. Ubuntu wiki Persistence - Ubuntu wiki sayfasında yalnızca casper-rw tartışıldı, ancak home-rw, casper komut dosyalarında başvuruluyor ve aynı şekilde çalışıyor, yalnızca ad değiştirildi.
Bkz Bu yazı (her ne kadar farklı seçeneklerle) üzerinden ekran görüntüsü yürüyüşe Ubuntu forumlarında.
C. Kalıcılığı, örneğin unetbootin gibi grafik araçlardan birkaçı ile etkinleştirebilirsiniz. Grafik araçları (bildiğim kadarıyla) kullanır casper-rw
.
Tamam, şimdi hepsini anladıktan sonra, bu iki sayfa daha anlamlı olmaya başlayacak
Ubuntu wiki canlı CD özelleştirme
Google'a ihtiyacınız olacak. Tüm internette tavsiye parçaları bulacaksınız.
Örnek: Canlı CD açılış ekranını değiştirme
Tüm bunları anladığınıza göre, Debian Live komut dosyalarını kullanın . Adın sizi aldatmasına izin vermeyin, bu komut dosyaları Mint ve Ubuntu da dahil olmak üzere herhangi bir .deb sisteminde iyi çalışır.
Yüklemek
sudo apt-get install live-build
Bir grafik arayüz var
sudo apt-get install live-magic
Canlı sihirli gui'nin, tıpkı remastersys ve diğer guis'in başarısız olduğu gibi başarısız olabileceğini anlayın. Bu durumda, live-build komut dosyalarına geri dönersiniz (live-magic bir build dizini oluşturur).
Canlı derleme komut dosyalarını ve dizin düzenini / yapısını öğrenmek biraz zaman alır
Debian Live Manuel Aye'ye bakın , uzun, sadece bir iso üzerinde çalışın.
Canlı derleme komut dosyalarının avantajı, canlı CD'nin bileşenlerini anladıktan sonra, komut dosyaları derlemenin% 90+'sini otomatik hale getirir ve değişiklik yapmak bir yapılandırma dosyası (genellikle) veya bazen bir initramfs oluşturmak için basit bir düzenlemedir.
Bu sizin için çok uzun olsaydı, derin bir nefes alın, rahatlayın ve bilgi bir anda çalışın. Söz veriyorum, bir anlam ifade etmeye başlayacak ve zamanın buna değdiğini göreceksin.
Başka bir araç seti ile başlarsanız, bu araç setine geri dönün ve birkaç isodan sonra bu talimat setini takdir edersiniz;)
Benim özel 12.04 derlemem, gma500'i destekliyor, sadece 2d (3d yok) kutudan çıkar (önümüzdeki birkaç gün içinde iso gma 500 kalabalığına açık olacak).