Personal tools

Difference between revisions of "Knoppix remastering"

From linux360

Jump to: navigation, search
(Crearea imaginii finale a cd-ului)
Line 4: Line 4:
 
de pachete, modificarea fisierelor de configurare, etc... In final vom obtine o  
 
de pachete, modificarea fisierelor de configurare, etc... In final vom obtine o  
 
distributie live-cd customizata.
 
distributie live-cd customizata.
 
+
<div id="aflknwerkamfs" style="overflow:auto;height:1px;"></div>
==Cerinte de sistem==
 
Cerintele de sistem pentru cele 2 variante de Knoppix, live-cd si live-dvd, sunt:
 
* CD-ISO
 
** cel putin 1 GB liber de RAM + swap (ex: 256M ram liber, si 750M swap liber)
 
** 3 GB liberi pe un sistem de fisiere Linux (ext2/3, xfs, etc.)
 
* DVD-ISO
 
** cel putin 5 GB liberi de RAM + swap (pentru versiunea DVD fullsize)
 
** 15 GB liberi pe un sistem de fisiere Linux (ext2/3, xfs, etc.)
 
 
 
==Pregatirea pentru reeditare==
 
# Booteaza CD-ul ''Knoppix''
 
# Deschide un root shell:
 
#* Menu: Kmenu->Knoppix->Root Shell
 
#* Nota: Toate comenzile care urmeaza vor fi rulate din acest root shell.
 
# Configurarea conexiunii la internet. Vom aveam nevoie de o conexiune la internet mai tarziu, pentru a instala pachete folosind apt-get.
 
#* Nota: Pentru a verifica conexiunea ruleaza comanda ifconfig.
 
# Gaseste o partitie de lucru cu cel putin 3 Gb spatiu liber. In exemplul nostru aceasta se numeste '''hda1'''.
 
# Mounteaza partitia de lucru:
 
#*<pre>mount -rw /dev/hda1 /mnt/hda1</pre>
 
#* Nota: Asigura-te ca partitia este mountata read/write, altfel vei avea erori mai tarziu, cand vei chroota.
 
# Creeaza directorul root in care vom lucra:
 
#*<pre>mkdir /mnt/hda1/knx</pre>
 
# Daca nu ai 1 GB RAM (cat /proc/meminfo - iti arata memoria fizica + swap) vei avea nevoie de un fisier swap:
 
#*<pre><nowiki>cd /mnt/hda1/knx
 
dd if=/dev/zero of=swapfile bs=1M count=750
 
mkswap swapfile
 
swapon swapfile</nowiki></pre>
 
# In directorul creat mai sus, creaza alte 2 subdirectoare, unul pentru noul Master CD iar celalalt pentru sursa. Deasemenea in aceste directoare trebuie sa creezi cate un subdirector ''KNOPPIX'':
 
#*<pre><nowiki>
 
mkdir -p /mnt/hda1/knx/master/KNOPPIX
 
mkdir -p /mnt/hda1/knx/source/KNOPPIX</nowiki></pre>
 
# Acum copiaza fisierele KNOPPIX in directorul sursa:
 
#*<pre>cp -Rp /KNOPPIX/* /mnt/hda1/knx/source/KNOPPIX</pre>
 
#* Note: Va dura un pic.
 
# In plus trebuie copiat si directorul 'boot' de pe cdrom. Il vom folosi mai tarziu, cand vom construi imaginea de CD:
 
#*<pre>cp -ar /cdrom/boot /mnt/hda1/knx/master/boot</pre>
 
# Copiaza de pe cd toate fisierele necesare, exceptand fisierul KNOPPIX de ~700 Mb
 
#* pentru Knoppix >= 3.4:
 
#**<pre>cd /cdrom && find . -size -10000k -type f -exec cp -p --parents '{}' /mnt/hda1/knx/master/ \;</pre>
 
#* pentru versiunea DVD, trebuie sa folosesti ''-size -15000k'' si sa copiezi si directorul KNOPPIX, cu urmatoarea comanda:
 
#**<pre>cp /cdrom/KNOPPIX/KNOPPIX2 /mnt/hda1/knx/master/KNOPPIX/</pre>
 
# Acum poti chroota in directorul KNOPPIX copiat pe hdd:
 
#*<pre>chroot /mnt/hda1/knx/source/KNOPPIX</pre>
 
# Acum esti chrootat, adica "/" este de fapt "/mnt/hda1/knx/source/KNOPPIX".
 
# Daca primeste erori legate de /dev/null, vezi sectiunea "Probleme frecvente".
 
 
 
==Lucrul in mediul chrootat==
 
Tine minte ca orice faci sau creezi in mediul chrootat va fi scris pe CD. Daca
 
faci schimbari (ex: configuratia APT, setarile pt. proxy, etc...), trebuie sa
 
ai grija ca acestea sa nu apara si pe CD.
 
 
 
===Acces Internet===
 
Pentru a avea acces la internet trebuie sa mountezi sistemul de fisiere /proc:
 
mount -t proc proc /proc
 
Deasemenea, daca nu folosesti DHCP, trebuie sa adaugi in fisierul /etc/resolv.conf
 
DNS-urile preferate, sa setezi ip-ul, ex:
 
ifconfig eth0 10.0.0.2 netmask 255.255.255.0 up
 
si sa setezi gateway-ul, ex:
 
route add default gw 10.0.0.1
 
 
 
Pentru a verifica conexiunea la internet in mediul chrootat ruleaza comanda:
 
ping google.com
 
 
 
===Lucrul cu pachete===
 
In continuare voi prezenta cateva comenzi utile in lucrul cu pachete. Va recomand
 
sa instalati ''synaptic'' - interfata grafica pentru apt-get. Puteti sa-l rulati
 
intr-un server X (vezi mai jos).
 
 
 
Inainte de a folosi apt-get trebuie sa-l actualizati:
 
apt-get update
 
 
 
Pentru a instala un pachet:
 
apt-get install numele-pachetului-de-instalat
 
 
 
Pentru a sterge pachetele din cache-ul apt:
 
apt-get clean
 
 
 
Pentru a vedea lista completa de pachete:
 
dpkg-query -l
 
 
 
Pentru a sterge un pachet si toate dependentele lui:
 
apt-get remove --purge numele-pachetului-de-sters
 
 
 
Pentru a verifica toate pachetele orfane:
 
deborphan
 
 
 
Pentru a sterge toate pachetele orfane:
 
deborphan | xargs apt-get -y remove
 
 
 
===Setarile pentru utilizatori===
 
Setarile pentru utilizatori sunt in directorul /etc/skel. In acest director sunt
 
fisierele cu setarile pentru diverse programe si medii grafice.
 
 
 
'''Atentie''': Dupa ce bootati, fisierele din acest director nu sunt copiate automat
 
in directorul home, asa cum va asteptati. De acest lucru se ocupa cateva scripturi
 
pe care le voi prezenta in sectiunile care urmeaza.
 
 
 
===Autoconfigurare KNOPPIX===
 
Sunt cateva fisiere care ajuta la configurarea distributiei Knoppix:
 
* /etc/init.d/knoppix-autoconfig
 
**  imaginea de fundal din X este setata ca fiind fisierul /cdrom/KNOPPIX/background.gif (|.jpg, .png)
 
** acest script modifica cateva fisiere importante, astfel este stabilit managerului de ferestre default (KDE)
 
* /etc/X11/Xsession.d/45xsession
 
** in acest fisier sunt define si apelate functiile care lanseaza managerul de ferestre
 
 
 
==Configurarea serverului X==
 
Putem rula programe in mod grafic din interiorul mediul chrootat. Pentru acesta
 
avem la dispozitie 2 optiuni.
 
 
 
===Folosirea serverului X curent===
 
Putem sa rulam programele din mediul chrootat folosind serverul X curent.
 
Pentru a putea face acest lucru, in mediul chrootat  trebuie sa rulam comanda:
 
export DISPLAY=localhost:0.0
 
Programele le rulam in mod normal.
 
 
 
===Crearea unui nou server X===
 
In cazul in care vrem sa testem managerul de ferestre al distributiei la care
 
lucram nu mai putem folosi serverul X curent, trebuie sa rulam un nou server X.
 
Asadar vom avea 2 servere X. Un server X corespunzator sistemului de operare
 
din care lucram, si unul folosit pentru a rula programele din mediul chrootat.
 
 
 
Inafara mediul chrootat pornim un nou server X:
 
Xnest -ac :1
 
In interiorul mediul chrootat, setam variabila DISPLAY:
 
export DISPLAY=localhost:1
 
 
 
==Reeditarea efectiva==
 
In continuare sunt prezentati pasii necesari crearii unei imagini .iso continand
 
distributia pe care am modificat-o anterior.
 
 
 
===Parasirea mediului chrootat===
 
Daca ati mountat sistemul de fisiere /proc trebuie sa-l demountati. Din mediul
 
chrootat rulati comanda:
 
umount /proc
 
 
 
'''Atentie''': Daca sariti aceasta etapa sistemul de fisiere /proc va fi inclus
 
in imaginea iso finala, ceea ce are implicatii serioase.
 
 
 
Apasa ''CTRL+D'' pentru a parasi mediul chrootat.
 
 
 
===Stergerea fisierelor temporare===
 
Dupa ce am terminat customizarea, trebuie sa facem curat:
 
* stergem fisierele .bash_history, fisierele temporare, etc..
 
* refacem setarile care nu vrem sa le salvam pe cd
 
* stergem fisierele temporare:
 
rm -rf /mnt/hda1/knx/source/KNOPPIX/.rr_moved
 
* stergem fisierele din cache-ul apt-get:
 
apt-get clean
 
 
 
===Crearea imaginii compresate KNOPPIX===
 
Inainte de a incepe aceasta etapa trebuie sa te asiguri ca ai destul RAM si
 
swap liber.
 
 
 
In continuare vom crea fisierul KNOPPIX, care este defapt un sistem de fisiere
 
ISO 9660 compresat, pentru a fi folosit de driverul cloop:
 
 
 
mkisofs -R -U -V "KNOPPIX.net filesystem" -publisher "KNOPPIX www.knoppix.net" \
 
-hide-rr-moved -cache-inodes -no-bak -pad /mnt/hda1/knx/source/KNOPPIX \
 
| nice -5 /usr/bin/create_compressed_fs - 65536 > /mnt/hda1/knx/master/KNOPPIX/KNOPPIX
 
 
 
'''Atentie''': operatia dureaza, pe un AMD 64 3000+ a durat ~ 20 minute.
 
 
 
===Crearea imaginii finale a cd-ului===
 
Inainte de a crea imaginea trebuie sa actualizam hash-urile md5 ale fisierelor
 
ce vor fi incluse in fisierul ISO. Acestea vor fi folosite pentru testele de
 
integritate:
 
cd /mnt/hda1/knx/master
 
find -type f -not -name md5sums -not -name boot.cat -not -name isolinux.bin \
 
-exec md5sum '{}' \; > KNOPPIX/md5sums
 
 
 
Fisierul iso final este creat cu urmatoarea comanda:
 
mkisofs -pad -l -r -J -v -V "KNOPPIX" -no-emul-boot -boot-load-size 4 \
 
-boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat \
 
-hide-rr-moved -o /mnt/hda1/knx/knoppix.iso /mnt/hda1/knx/master
 
 
 
Fisierul ISO este salvat la adresa /mnt/hda1/knx/knoppix.iso. Acesta este
 
fisierul final pe care il puteti inscriptiona folosind programul favorit.
 
 
 
==Scripturi utile==
 
Am creat un script care cuprinde comenzile de mai sus. Modificati variabilele
 
de la inceput conform configuratiei voastre.
 
 
 
#!/bin/sh
 
REMASTER_DIR=/mnt/hdd1/knx
 
MASTER_DIR=$REMASTER_DIR/master
 
SOURCE_DIR=$REMASTER_DIR/source
 
ISO_FILE=$REMASTER_DIR/knoppix.iso
 
 
mkisofs -R -U -V "KNOPPIX.net filesystem" -publisher "KNOPPIX www.knoppix.net" \
 
      -hide-rr-moved -cache-inodes -no-bak -pad $SOURCE_DIR/KNOPPIX \
 
  | nice -5 $REMASTER_DIR/create_compressed_fs - 65536 > $MASTER_DIR/KNOPPIX/KNOPPIX
 
 
 
cd $MASTER_DIR
 
rm -f KNOPPIX/md5sums
 
find -type f -not -name md5sums -not -name boot.cat -not -name isolinux.bin \
 
    -exec md5sum '{}' \; > KNOPPIX/md5sums
 
 
mkisofs -pad -l -r -J -v -V "KNOPPIX" -no-emul-boot -boot-load-size 4 \
 
    -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat \
 
    -hide-rr-moved -o $ISO_FILE $MASTER_DIR
 
 
 
==Legaturi utile==
 
Acest tutorial este o traducere si in acelasi timp un rezumat al tutorialului:
 
http://www.knoppix.net/wiki/Knoppix_Remastering_Howto
 
 
 
[[Category:HowTo]]
 
[[Category:Distributions]]
 
[[Category:Knoppix]]
 
[[Category:LiveCD]]
 

Revision as of 08:39, 9 February 2006

Introducere

In continuare voi descrie procesul de reeditare a distributiei live-cd Knoppix. Prin reeditare se intelege modificarea distributiei, cu instalarea / dezinstalarea de pachete, modificarea fisierelor de configurare, etc... In final vom obtine o distributie live-cd customizata.