Salut. Mi-am propus sa scriu acest mic tutorial in urma unei incercari de a-mi customiza un LiveCD. In linii mari, n-am facut altceva decat sa adaug cateva mici utilitare, cum ar fi rsync si cvsup si/sau cateva tarball-uri. LiveCD-ul ales de mine pentru modificare a fost cel de la Gentoo, numit install-x86-minimal-2006.0.iso.
Incepem prin a obtine acest LiveCD. Il puteti downloada de pe un mirror local sau il puteti copia cu ajutorul comenzii 'dd' (vedeti man dd) de pe un cd deja existent in felul urmator:
CODE
dd if=/mount/point-ul/cd-ului of=/calea/catre/imaginea-dvs.iso
sau
cat /mount/point-ul/cd-ului > /calea/catre/imaginea-dvs.iso
Odata obtinuta imaginea dorita (tineti cont de faptul ca nu trebuie sa fie neaparat o imagine gentoo ) aceasta poate fi 'montata' (vedeti man mount) cu ajutorul comenzii 'mount' in regim loop. Pentru a putea face acest lucru aveti nevoie de optiunea 'loopback device' in fisierul de configurare al kernel-ului dumneavoastra.
Pentru a vedea daca optiunea respectiva este deja activata in kernel-ul dvs puteti folosi urmatoarea comanda:
CODE
andrei@titanium ~ $ find /dev -iname "loop*"
Daca suportul pentru device-ul loopback este deja prezent, in urma comenzii de mai sus veti vedea ceva asemanator cu:
CODE
/dev/loop7
/dev/loop6
/dev/loop5
/dev/loop4
/dev/loop3
/dev/loop2
/dev/loop1
/dev/loop0
/dev/loop
Tineti cont de faptul ca output-ul poate fi diferit in cazul dvs.
In cazul in care suportul pentru 'loopback device' a fost configurat ca si modul in setup-ul kernel-ului dvs. acesta poate fi activat cu ajutorul comenzii modprobe loop:
CODE
root@titanium ~ # modprobe loop
root@titanium ~ #
Verificati daca modulul in cauza a fost activat:
CODE
root@titanium ~ # lsmod | grep loop
loop 11656 2
root@titanium ~ #
Urmatorul pas este de a monta fisierul. iso pe care doriti sa-l modificati:
CODE
root@titanium ~ # mount -o loop /calea/catre/imaginea/iso /calea/catre/mount/point
In acest moment nu ne mai ramane decat sa copiem continutul. iso-ului intr-un director ales de noi, iar dupa aceea sa modificam iso-ul dupa bunul plac:
CODE
root@titanium ~ # mkdir ~/work
root@titanium ~ # cp -R /calea/catre/mount/point ~/work
Tineti cont de faptul ca directorul '~/work' a fost ales de mine. Poate fi situat oriunde in sistemul dvs.
In cazul de fata am adaugat niste stage-uri necesare instalarii si un snapshot portage recent.
CODE
root@titanium ~ # cd ~/work
root@titanium ~ # mkdir tarballs
root@titanium ~ # cp ~/stage* ~/work/tarballs
root@titanium ~ # cp ~/portage* ~/work/tarballs
Pentru a adauga orice fel de utlitar in componenta acestui livecd, vom proceda in felul urmator:
Marea majoritate a livecd-urilor folosesc filesystem-ul squashfs care permite o comprimare excelenta a ceea ce se numeste 'filesystem-ul root'. Scurt pe doi acest filesystem este cel care este montat in momentul in care kernel-ul termina procesul de boot si invoca initd. In cazul de fata LiveCD-ul ofera o imagine de tip squashfs care va trebui 'montata' la randul ei pentru a-i putea modifica continutul sau pentru a putea adauga diverse utilitare. De asemenea continutul ei trebuie copiat intr-un alt director decat cel folosit pentru montaj:
CODE
root@titanium ~ # mount -t squashfs /calea/catre/imaginea/respectiva /un/mount/point/oarecare
root@titanium ~ # cp -R /punctul/de/montaj/al/imaginii/respective /directorul/pe/care/il/doriti
In continuare vom adauga editorul de text nano; Pentru a face acest lucru, nu trebuie sa facem altceva decat sa-l compilam, (ceea ce ar fi indicat) si/sau sa-l copiem din distributia curenta; Totusi sa tinem cont de un lucru in momentul in care facem asta: Nu putem copia binarul 'nano' pur si simplu. Trebuie sa luam in considerare de bibliotecile folosite de acest executabil. Pentru a afla ce biblioteci foloseste binarul respectiv, putem folosi urmatoarea comanda:
CODE
root@titanium ~ # ldd /calea/catre/binar
andrei@titanium ~ $ ldd /usr/bin/nano
linux-gate.so.1 => (0xffffe000)
libncurses.so.5 => /lib/libncurses.so.5 (0xb7eee000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7dd4000)
libdl.so.2 => /lib/libdl.so.2 (0xb7dd0000)
/lib/ld-linux.so.2 (0xb7f3e000)
andrei@titanium ~ $
Ceea ce vedeti mai sus este lista de biblioteci folosite de binarul in cauza. Pentru a ne asigura ca acesta la putea fi executat, aceste biblioteci trebuiesc copiate in interiorul directorului in care am copiat continutul imaginii squashfs. Insa tineti cont de faptul ca aceste biblioteci pot exista deja. Cele insirate mai sus sunt absolut necesare pentru functionarea oricarui sistem, de aceea este foarte probabil sa existe. In cazul de fata nu voi face altceva decat sa copiez binarul nano in directorul usr/bin:
CODE
root@titanium ~ # cp /calea/catre/binarul/nano /calea/catre/continutul/imaginii/squashfs
Daca spre exemplu doriti sa integrati un client de IRC cum ar fi X-Chat (doar un exemplu) atunci trebuie sa copiati si bibliotecile folosite de acesta in continutul imaginii squashfs.
Urmatorul pas este sa re-impachetam imaginea squashfs cu ajutorul comenzii 'mksquashfs':
CODE
root@titanium ~ # mksquashfs directorul_dorit/ ~/calea/catre/imaginea/squashfs
Copiati imaginea squasfs in directorul final continand toate componentele viitorului ISO gen kernel, imaginea initrd (daca folositi una):
CODE
root@titanium ~ # cp /calea/catre/imaginea/dvs /calea/catre/viitorul/iso
Nu ne mai ramane decat sa creem iso-ul final cu ajutorul comenzii 'mkisofs'
CODE
root@titanium ~ # mkisofs mkisofs -iso-level 2 -no-emul-boot -boot-load-size 4 -boot-info-table -r -b calea/catre/imaginea/el_torito -c calea/catre/imaginea/catalog -o iso-ul-dvs.iso /calea/catre/continut/
Pentru mai multe detalii cititi manualul mkisofs. Argumentele folosite in cazul de mai sus sunt 'strictul necesar'
Sper ca tutorialul scris mai sus va va fi de un real ajutor. In felul acesta va veti putea modifica propriile iso-uri, va veti putea customiza aplicatiile prezente pe acestea. Pentru a va da un caz cat se poate de real, voi lua in considerare Slax Linux. Slax va permite adaugarea unor module care de cele mai multe ori va permite rularea unor aplicatii care nu sunt prezente pe iso-ul original. Cu ajutorul acestui tutorial (sper) ca va veti putea modifica iso-ul si totodata customiza imaginea respectiva. Comentariile sunt bine-venite. In cazul in care intampinati dificultati, nu ezitati sa trimiteti un mesaj de reply. Mult succes
2). Varianta a-II-a: Nu stiu cat de on-topic e, dar m-am gandit ca poate ajuta pe cineva: daca aveti imagini nero (NRG) si vreti sa le convertiti in ISO uitati-va aici: http://gregory.kokanosky.free.fr/v4/linux/nrg2iso.en.html. Mie mi-a prins bine cand am avut nevoie.
3) Varianta a-III-a:Daca vreti sa creeati imagini si sa le montati rapid, folositi MountISO: Link: http://www.kde-apps.org/content/show.php?content=11577
Din tot sufletul sper sa te ajute!
F simplu:descarci power iso, instalezi programul...intri in program si dai new image, acolo pui ce fisiere iti trebuie, daca nu te descurci trece id-ul meu mirel_GMM2000 sper sa iti fiu de folos
Ceva mult mai simplu : Intri in Daemon Tools ( daca nu ai programul descarca-l ) si dai "make disc image" ( la mine asa e si am daemon tools LITE )... si in continuare te descurci . Bafta!
Lovely_6403 întreabă: