Difference between revisions of "Knoppix Remastering Howto Italiano"


From Knoppix Documentation Wiki
Jump to: navigation, search
(Sistema Richiesto: correz.ortografiche)
(Altre Indicazioni)
Line 612: Line 612:
 
=Altre Indicazioni=
 
=Altre Indicazioni=
  
Se la mia guida è troppo confusa, o desideri un secondo parere, guardate questo altro Howto per rimasterizzazione: http://gnubox.dyndns.org:8080/~sunil/knoppix.php.
+
Se la mia guida è troppo confusa, o desideri un secondo parere, guardate questo altro Howto per rimasterizzazione: http://brainstorms.in/?page_id=84
 
Un altro Howto lo trovate qui http://www.stirnimann.com/mystuff/doc/knoppix.txt
 
Un altro Howto lo trovate qui http://www.stirnimann.com/mystuff/doc/knoppix.txt
  

Revision as of 03:42, 21 May 2008

Questa è una guida che illustra come eseguire il remaster della KNOPPIX. (Note: I comandi appaiono in una riga, massimalizate il Vs. Browser per una corretta lettura. Se avete commenti/suggerimenti usate il post qui sotto.)

Potete intanto cominciare da una versione di Knoppix già su misura, in modo che non dobbiate fare tanto lavoro (vedendo quali programmi rimuovere). In caso affermativo, vedete Knoppix Customizations.

Contents

Sistema Richiesto

  • CD-ISO
    • Almeno 1 GB di RAM+Swap liberi (esempio: 256M RAM, and 750M SWAP Disponibili) (unless you use a different compression program - look in this page for compressloop)
    • 3 GB di filesystem Linux filesystem (ext2/3, xfs, etc.) liberi in una partizione formattata
  • DVD-ISO
    • 5 GB RAM + swap libera (per un DVD a dimensione completa)
    • 15 GB di filesystem Linux filesystem (ext2/3, xfs, etc.) liberi in una partizione formattata

Istruzioni

Settaggio per il Remastering

  1. Boot di una qualunque Knoppix CD
  2. aprite un terminale e andate in root o aprite un terminale in root shell:
    • Menu: Kmenu->Knoppix->Root Shell
    • Note: tutti i comandi sotto vanno eseguiti in root shell.
  3. Configurate la vostra connessione Internet (ne avremo bisogno sucessivamente). se usate il DHCP, dovete avere una rete che vi da tale supporto ( router, DHCP server,ecc....).
    • Note: Eseguite il comando ifconfig per una verifica.
  4. Trovate la partizione che volete usare per lavorare. In questo esempio si usa un disco hda1 . La partizione deve avere un minimo di 3 GB di spazio libero
  5. Mountare la partizione con il comando:
    • mount -rw /dev/hda1 /mnt/hda1
    • Note: accertatevi che sia in read/write oppure incorrete in errore quando dopo usate la chroot. Per Verificare: eseguite mount
  6. Create una root directory per lavorare -- Se voi mettere qui i vostri file poi potete cancellarli facilmente
    • mkdir /mnt/hda1/knx
  7. Se il Vs.PC non ha almeno 1 GB RAM ( egrep "(MemTotal|SwapTotal)" /proc/meminfo && echo "(physical+swap)" ) Allora avete bisogno di una SWAP creata su un swapfile:
cd /mnt/hda1/knx
dd if=/dev/zero of=swapfile bs=1M count=750
mkswap swapfile
swapon swapfile
  1. Costruite 2 directori, uno per il vostro nuovo Master CD, uno per sourgente, nella vostra partizione. Create le directori come sotto con il nome KNOPPIX:
    • mkdir -p /mnt/hda1/knx/master/KNOPPIX
    • mkdir -p /mnt/hda1/knx/source/KNOPPIX
  2. Ora, copiate i KNOPPIX del vostro live CD nella directori sorgente :
    • cp -Rp /KNOPPIX/* /mnt/hda1/knx/source/KNOPPIX
    • Note: Questo richiede un lungo tempo (state copiando circa 2GByte). ATTENZIONE: sarete tentati di sostituire questo ordine di copia con una procedura molto più veloce: il risultato genera un indice vuoto. Tuttavia, a partire da Knoppix 4.0.2, vi è un bug nei unionfs che rende questa procedura più veloce si ma con perdita di dat. Per ora, copiate il comando ed usatelo cosi come si trova.
  3. In Aggiunta, copiare la cartella di 'boot' dal vostro cdrom - abbiamo bisogno di queste informazioni per creare la ISO image del CDROM verso la fine.
    • cp -ar /cdrom/boot /mnt/hda1/knx/master/boot
  4. Per la Knoppix 5.0.1 dovete avere la copia della cartella che contiene i 'modules':
    • cp -ar /cdrom/KNOPPIX/modules /mnt/hda1/knx/master/KNOPPIX/.
  5. Copia le main page HTML dello startup:
    • cp /cdrom/index.html /mnt/hda1/knx/master/
  6. Copiare tutto il resto dei file circa ~700 Mb di KNOPPIX file.
    • < 3.4:
      • cd /cdrom/KNOPPIX && find . -size -10000k -type f -exec cp -p --parents '{}' /mnt/hda1/knx/master/KNOPPIX/ \;
    • >= 3.4:
      • cd /cdrom && find . -size -10000k -type f -exec cp -p --parents '{}' /mnt/hda1/knx/master/ \;
    • Per la versione in DVD usete -size -15000k e copiate la cartella KNOPPIX2 come sotto qui:
      • cp /KNOPPIX2 /mnt/hda1/knx/source/KNOPPIX
  7. Preparate gli environment di ambiente per attivare il chroot
    • mount --bind /dev /mnt/hda1/knx/source/KNOPPIX/dev
    • mount --bind /proc /mnt/hda1/knx/source/KNOPPIX/proc
  8. Ora potete entare in "chroot" nella copia di KNOPPIX:
    • chroot /mnt/hda1/knx/source/KNOPPIX
  9. Se vedete errori dei /dev/null, datte uno sguardo alla guida common problems nella apposita sezione

Ora siete in chroot . "/" che si trova in "/mnt/hda1/knx/source/KNOPPIX"

Lavorare in Chroot Environment

Ricordate che qualunque cosa voi facciate o modficate in chroot viene concretizzato nel CD. Se fate cambiamenti fatevi una nota che vi aiuta a capire quale variazioni avete apportato ( configurazione, desktop, file di sistema, script, eccc...) prima della masterizzazione.

Accesso a Internet

Per usare internet avete bisogno di editare /etc/resolv.conf per aggiungere il nome del Server Dns del Vs. Provider o della Vs. rete oppure uscite dal chroot e copiate il resolv.conf nella cartella di chroot:

cp /etc/dhcpc/resolv.conf /mnt/hda1/knx/source/KNOPPIX/etc/dhcpc/resolv.conf

(proxy (nel caso ne abbiate uno sulla Vs.Rete): digitate "export http_proxy=http://your.proxy.com:<port>")
Per controllare la vostra connessione internet in chroot,

ping google.com

(se l'ICMP e filtrato dal vostro firewall potete fare una verifica del funzionamento di internet con "lynx http://www.google.com" e verificate se riceve la pagina dopo avere risposto "allow" alla richiesta di accettare i cookie)

Accesso SMB (Samba o Domini Windows)

Cambiate smb.conf con il vostro gruppo MS se avete bisogno del supporto smbd (MSHOME, DOMAIN e XP Home sono usaualmente con WORKGROUP per Windows 9x i nomi di gruppo usati, consultate il Vs. control pannel di una stazione Windows con l'icona "Sistema").

Accesso APT ( repositor di aggiornamento e upload pacchetti)

Aggiornate la lista pacchetti con apt-get update.

Nota: Se 'apt-get update termina con il messaggio "FATAL -> Could not set non-blocking flag Bad file descriptor", È necessario assicurarsi che il proprio chroot è montato senza le option "nodev". (Vedi sopra, dove si parla di errori /dev/null quando avete inserito il chroot, per la prima volta)
Warning: apt-get upgrade e una CATTIVA IDEA. Esso conclude , con una buona probabilita', rendendo la vostra KNOPPIX remaster non bootabe, o da buttare. Una buona cosa e' aggiornare solo i pacchetti necessari alla vostra distribuzione Live.

Nota: Se apt-get termina con il messaggio "Dynamic NMap ran out of room" Potresti provare questo piccolo gioiello, che fissa il problema per me:

#echo 'APT::Cache-Limit "25168524";'>> /etc/apt/apt.conf

(Va fatto questo, mentre siete in chroot, come descritto in precedenza.)

Prima di poter aggiungere roba, si avrà probabilmente bisogno di rimuovere alcuni pacchetti. Per ottenere una lista dei pacchetti installati, digitate questo comando:

dpkg-query -l

Se siete alla ricerca di grossi pacchetti installati allora il comando:

dpkg-awk "Status: .* installed$" -- Package Installed-Size | \
  awk '{print $2}' | egrep -v '^$' | xargs -n2 echo | \
  perl -pe 's/(\S+)\s(\S+)/$2 $1/' | sort -rg

ottenete una lista dei pacchetti in ordine discendente.

Almeno dieci volte più veloce è il comando:

dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -n

e non avete bisogno dei pacchetti dpkg-awk or awk or perl; Tuttavia non esclude che i pacchetti non sono installati. Se hai problemi con il comando di ordinamento, provare a utilizzare KPackage, ampliati tutti gli alberi e ordinati in base alla colonna dimensione cercate i grandi pacchetti.

Oppure, si potrebbe usare questo comando per ottenere velocemente da qpkg-query la lista dei pachetti non installati:

dpkg-query -W --showformat='${Installed-Size} ${Package} ${Status}\n' | grep -v deinstall | sort -n | awk '{print $1" "$2}'

Si fa la stessa cosa, come sopra. Solo che non ho potuto ottenere i risultati perché non ho dpkg-awk.

Per rimuovere i pachetti (e tutte le dipendenze incrociate), digitate:

apt-get remove --purge name-of-package-to-remove

Per verificare i pacchetti orfani, digitate:

deborphan

Vuoi risparmiare più spazio e per sbarazzarsi di questi strani orfani (come crudele!), il messaggio (Warning, non ti chiederà sì / no per rimuovere questi pacchetti. Quando si preme Invio dopo questo comando , Questi pacchetti saranno processati'):

deborphan | xargs apt-get -y remove

Se siete incerti circa il comando precedente e volete vedere cosa accadrà senza apportare eventuali modifiche, è sufficiente aggiungere il-s opzione per il comando apt-get (potete farlo con tutti i comandi Apt-get, si tratta di una buona abitudine fare uso di questa opzione prima di operazioni di massa come queste):

deborphan | xargs apt-get -s -y remove

Ora il comando giusto. Se si desidera aggiungere un pacchetto, digitate questo:

apt-get install 'name-of-package-to-install

Quando non si sa quali sono i pacchetti da installare? Digitate questo comando: Quando viene visualizzato l'elenco, è possibile esaminalo (sono >13k! linee) o usare la ricerca rapida usando /search-term:

apt-cache search .* | sort | less

Quando hai finito di aggiungere e rimuovere i pacchetti, un buon modo per ripulire è digitando questo comando:

COLUMNS=200 dpkg -l |grep ^rc |awk '{print $2} ' | xargs dpkg -P

Inoltre, poiché il sistema dei pacchetti Debian mantiene una cache dei pacchetti scaricati, è possibile che si desideri eseguire il seguente comando per eliminare quei file appoggio:

apt-get clean

Settaggio degli utenti

Impostazioni utente le trovate in /etc/skel. Questa directory viene copiata quando create nuove home directory degli utenti.

Consiglio: non mettete i file in /root saranno disponibili solo (in fase di runtime), in /KNOPPIX/root

Nota: L'utente di default 'knoppix' non è creata con adduser (1), quindi /etc/skel non viene copiato completamente, ma piuttosto in modeo selettivo. Se dovete mettere un file .xyrc in /home/knoppix, non è sufficiente a metterelo in /etc/skel. Una possibilità è quella di modifcare il codice di /etc/X11/Xsession.d/45xsession che è responsabile per la costruzione del contenuto di /home/knoppix.

AutoEsecuzione programmi

Quando si desidera il lancio automatico di alcuni programmi, si può creare uno script e metterlo nella directory /etc/rc5.d/ (Questo per i soli programmi caricabili prima del server X). Leggete i processi di SysV init per altre possibilità operative.

Per i programmi X considerate /home/knoppix/.kde/Autostart ma questo può trasferire il controllo a /etc/skel/.kde/Autostart on boot--12.106.237.2 18:08, 7 December 2007 (UTC)

Edit del KNOPPIX auto-configuration script

Potete trovare un sacco di informazioni interessanti su come KNOPPIX si autoconfigura il Vs. sistema guardando in /etc/init.d/knoppix-autoconfig script. Una serie particolare di note la trovate qui sotto.

Cambire la default KDE background image

L'auto-script di configurazione di default imposta l'immagine di sfondo di KDE per essere un'immagine caricata da CD-ROM. Un'immagine che è possibile modificare facilmente quando si rimasterizzazione KNOPPIX.

    • In KNOPPIX 3.3 e precedenti la trovate /cdrom/KNOPPIX/background.gif
    • In KNOPPIX 3.4 e successive la trovate /cdrom/KNOPPIX/background.jpg

Editare i file di autoconfigurazione di floppy e CD-ROM

La configurazione automatica di script imposta sia il CD-ROM sia il vostro disco floppy. I comandi per fare questo sono, rispettivamente 'floppyconfig' e 'cdromconfig'. La configurazione automatica con lo script anche cdrom/KNOPPIX/knoppix.sh, che è un semplice script per cambiare quando rimasterizzate KNOPPIX.

Cambiare i parametri del boot alla partenza

Tutti i parametri di boot ottngono i valori di default in /etc/init.d/knoppix-autoconfig script. Si tratta di uno script di BASH massiccio (è meglio conoscere bene BASH per giocare con questo file), ma è il luogo dove è possibile modificare uno qualsiasi dei parametri di boot di default. Per esempio, per passare da 'kde' a 'twm' come desktop di default cercate dove 'kde' è definito come valore di default (variabile DESKTOP, IIRC). Un altro esempio sarebbe quello di cambiare la lingua di default che può essere cambiato.

Notate che, se siete interessati a cambiare la lingua di default usata da KDE, la cosa più semplice da fare è caricare ilKDE, le istruzioni si trovano al di sotto, e utilizzare l'utility di configurazione di KDE per selezionare la lingua di vostro interesse.

Configurazione delle sessioni X

Quando si lavora con programmi basati su X, si dovrà fare in modo che lo schermo è impostato adeguatamente. Puoi farlo manualmente quando rimasterizzazione KNOPPIX. Inoltre,ci sono due script correlati a X Session è dove è possibile modificare o disattivare il suono di avvio e di arresto.

Start dei programmi della interfaccia X

Quando testate i programmi basati su X voi dovete avere attivato le variabili di ambiente

export DISPLAY=localhost:0.0

Questo consente di connettere le vostre applicazioni alle sessioni del server X. In alternativa (se avete lda testare il windows manager),Potete creare un successiva sessione X. Fuori da chroot, eseguite

Xnest -ac :1

All'interno di chroot, Settate così le variabili di ambiente

export DISPLAY=localhost:1

Indicazioni interessati le trovate in /etc/init.d/xsession :

  • Potete personalizzare il background modificando /usr/local/lib/knoppix.gif

Modifica/Disattivazione del sound alla partenza

Il suono alla attivazione di X è eseguito mediante le indicazioni presenti in /etc/X11/Xsession.d/45xsession. Potete disattivare il suono commentando le linee seguenti nello script.

playsound(){ 
# Play sound if soundcore module present (checking /dev/sndstat is unreliable)
# OGGPLAY=/usr/bin/ogg123
# PLAY=/usr/bin/wavp
# [ -x "$PLAY" ] || PLAY=/usr/bin/play-sample
# [ -x "$PLAY" ] || PLAY=/usr/bin/play
# if [ -x "$OGGPLAY" -a -f /usr/share/sounds/startup.ogg ]; then
# case "$(lsmod)" in *sound*) { $OGGPLAY -q -p 64 /usr/share/sounds/startup.ogg >/
# elif [ -f /usr/share/sounds/startup.wav -a -x "$PLAY" ]; then
# case "$(lsmod)" in *sound*) { $PLAY /usr/share/sounds/startup.wav >/dev/null 2>&
# fi
}

Modifica/disabilita il suono in shutdown

Il suono allo shutdown ( spegnimento) è eseguito mediante le indicazioni presenti in /etc/init.d/xsession. Potete disattivare il suono commentando le linee 210-220 nello script.

## Play informational sound if soundcore module present
## (checking /dev/sndstat is unreliable)
#OGGPLAY=/usr/bin/ogg123
#PLAY=/usr/bin/wavp
#[ -x "$PLAY" ] || PLAY=/usr/bin/play-sample
#[ -x "$PLAY" ] || PLAY=/usr/bin/play
#if [ -x "$OGGPLAY" -a -f /usr/share/sounds/shutdown.ogg ]; then
#case "$(</proc/modules)" in *sound*|*snd_*) { $OGGPLAY -q -p 64 /usr/share/sound
#elif [ -f /usr/share/sounds/shutdown.wav -a -x "$PLAY" ]; then
#case "$(</proc/modules)" in *sound*|*snd_*) { $PLAY /usr/share/sounds/shutdown.w
#fi

Cambiare il windows manager di default

Aprire /etc/init.d/knoppix-autoconfig e guardare o trovate la linea qui sotto:

# Allow only supported windowmanagers                                           
# Actually, this check is useless because it's done again in 45xsession. -KK    
# case "$DESKTOP" in gnome|enlightenment|kde|larswm|xfce|xfce4|lg3d|ratpoison|blackbox|openbox|windowmaker|wmaker|icewm|fluxbox|twm|nx|rdp|kiosk) ;; *) DESKTOP="kde"; ;; esac                                                                  
[ -n "$DESKTOP" ] || DESKTOP="kde"                                          

Cambiate "kde" tra gli apici della vostra interfaccia preferita, per esempio ( gdm, fluxbox, twm, ecc...).

Cambiare la grafica al boot, il messaggio di boot, e gli script di start

Quando siete in ambiente chroot potete cambiare facilmente il boot message, la grafica al boot e lo sfondo della grafica KDE.

Cambiare la grafica del boot

La Grafica di boot e' la prima immagine quando il CD/DVD partono. It looks similar to ASCII art and it is normally something flashy that says 'Knoppix'. You can change this to be any graphic that you please, but you must use a 640x400 graphic that has only 16 colors.

  1. Cambiate posizione di lavoro andando a /mnt/hda1/knx/master/boot. Scambiate '/mnt/hda1/' con il disco che si sta utilizzando.
    • cd /mnt/hda1/knx/master/boot/isolinux
  2. Fate una copia del vecchio logo nel caso abbiate problemi.
    • mv logo.16 logo.16.backup
  3. Costruite una immagine 640x400 16 colori e salvatela in formato GIF, es: 'logo.16.gif'. GIMP è favoloso per questo processo. Nota: Si può utilizzare una immagine grafica che originariamente ha più di 16 colori, ma è fondamentale che la conversione grafica a 16 colori avvenga prima di fare il passo successivo.
  4. Convertite le gif in lss16 usando i tools inclusi nella Knoppix CD.
    • giftopnm < 640x400x16.gif > logo.ppm 
      
ppmtolss16 <logo.ppm > logo.16

Cambiare il messaggio di boot

The 'boot message' is the message that you see under the 'boot graphic' on the initial screen when the Knoppix CD or DVD loads. It normally says something along the lines of Knoppix with the version number and includes a link to the Knoppix website. You can change this text to be whatever you please, but you shouldn't add too much text or it will make the boot screen look funny. Restricting yourself to a singly line of text that is no larger than the default one is a good idea.

  1. Change to the /mnt/hda1/knx/master/boot directory. Swap '/mnt/hda1/' for whatever disk you are using.
    • cd /mnt/hda1/knx/master/boot
  2. Back up your old message in case you break things.
    • cp boot.msg boot.msg.backup
  3. Edit the message with a text editor. You'll see at the top of the message that it shows the graphic. Don't change this text, just the line under.
    • vi boot.msg

Cambiare lo script di startup

The 'startup script text' is the text that you see after the initial boot screen, while Knoppix loads and configures your system. You can change as much of this text as you please. You can even add addition lines to the script; however, it is recommended that you don't play with this file. Limiting yourself to editing the 'Welcome to KNOPPIX' message is a good idea.

  1. Change to the /mnt/hda1/knx/master/boot directory. Swap '/mnt/hda1/' for whatever disk you are using.
    • cd /mnt/hda1/knx/master/boot/isolinux
  2. Back up your old minirt.gz in case you break things.
    • cp minirt.gz minirt.gz.backup
  3. Uncompress minirt.gz
    • gunzip minirt.gz
  4. Make a temporary directory to mount the minirt filesystem.
    • mkdir todelete
  5. Mount the minirt filesystem as an ext2 filesystem.
    • mount minirt todelete -t ext2 -o=/dev/loop0
    or if the above does not work use
    • mount minirt todelete -t ext2 -o loop
  6. Edit the linuxrc script to display the message you want. You'll find the default message approximately 2 pages down and it'll be using several colors, i.e. ${WHITE}, ${RED}, etc., so it might be slightly tricky to spot.
    • vi todelete/linuxrc
  7. unmount the minirt filesystem.
    • umount todelete
  8. Compress the minirt filesystem.
    • gzip -9 minirt
  9. Remove your temporary directory.
    • rmdir todelete

Lanciare KDE per cambiare Menu,Icone,ecc...

While you are in the chroot environment you can load KDE and use the configuration tools to change buttons, icons, etc. Once you are finished you can exit KDE and copy /home/knoppix to /etc/skel to keep these changes. To load KDE do the following.

  1. If you are not at runlevel 2 (i.e. if you are already in KDE), switch to runlevel 2.
    • init 2
  2. Copy /etc/skel to /home/knoppix
    • cp -Rp /etc/skel /home/knoppix
  3. Change permissions to the user 'knoppix'
    • chown knoppix:knoppix -R /home/knoppix
  4. Copy over your X11 configuration to the chroot'd environment (press ctrl+alt+F2 to switch to a non-chroot'd terminal, then ctrl+alt+F1 to switch back when done)
    • cp /etc/X11/xorg.conf /mnt/hda1/knx/source/KNOPPIX/etc/X11
    • Knoppix 3.7: I think it's XF86Config-4 rather than xorg.conf.
  5. (Optional)Switch to user 'knoppix'. If you want to uninstall packages, stay as root -- e.g. skip this step. If you want to configure the buttons, icons, background, etc., that you see when KDE boots, be sure to do this step.
    • su knoppix
    1. Launch KDE
      • startx
    2. Do your KDE changes
    3. Exit KDE
    4. Exit su and switch back to user 'root'.
      • exit
  6. Copy /home/knoppix back to /etc/skel to keep the changes
    • mv /etc/skel /etc/skel-old
      
mv /home/knoppix /etc/skel
  1. Set the owner back to root
    • chown root:root -R /etc/skel
  2. Remove the xorg.conf file
    • rm /etc/X11/xorg.conf
  3. If you find that some of your settings are not persistent after booting the new image, check the initialization file at /etc/X11/Xsession.d/45xsession. By default, Knoppix does not simply copy over all files from /etc/skel. You may need to make modifications here if you wish to do something different.

Cambiare la grafica del ksplash di KDE

Puoi cambiare la grafica di KDE che mostra attraverso ksplash quando carichi il KDE. Queste immagini sono in /mnt/hda1/knx/source/KNOPPIX/usr/share/apps/ksplash/Themes/Default/. E' probabile che volgiate cambiare splash_top.png con la Vs. grafica personalizzata in un PNG 400x248. Nota che il ksplash automaticamente non genera il bordo attorno alla Vs. immagine. Se desideri un bordo lo dovete aggiungere manualmente al vostro grafico.

Lasciare l'ambiente Chroot

Se voi montate chroot, dovete smontare /proc - Molto IMPORTANTE!!!!!

umount /proc

Premere CTRL+D per rilasciare chroot.

Rientrare in modo chroot

Se hai lasciato il chroot, ma si desidera tornare indietro e modificare alcune cose...

rimontare il Vs. hard disk locale (se necessario)

mount -rw /dev/hda1 /mnt/hda1

Settaggio delle variabili di ambiente per chroot

mount --bind /dev /mnt/hda1/knx/source/KNOPPIX/dev
mount --bind /proc /mnt/hda1/knx/source/KNOPPIX/proc

Ora potete entrare in "chroot" nella copia di KNOPPIX:

chroot /mnt/hda1/knx/source/KNOPPIX

Rimasterizzare la ISO

Quando siete pronti per bruciare il vostro CD: Iniziate con un po di pulizia:

  • rimovere i .bash_history file, tmp file, etc.
  • Riordinare i cambiamenti che non si desidera trovare quando si masterizza il CD
  • rm -rf /mnt/hda1/knx/source/KNOPPIX/.rr_moved

KNOPPIX Immagine Compressa

Ora creiamo l'immagine del file KNOPPIX che è un file system compresso ISO 9660 per l'uso da parte del cloop driver:

 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

"www.knoppix.net" e "Knoppix.net filesystem" possono essere cambiati con quello che volete. Verrà visualizzato un messaggio di errore che non è conforme alle norme ISO - potete ignorare questo messaggio. Si noti che, per eseguire create_compressed_fs, devi avere spazio sufficiente per memorizzare tutto l'ISO e RAM/swap. Assicurare di avere almeno 800M di spazio libero prima di cominciare.

Knoppix 3,4 e il create_compressed_fs script è stato aggiornato in modo da assicurarsi di utilizzare per ottenere il miglior risultato. Ha una nuova opzione '-b' (migliore), che consente la migliore compressione utilizzando differenti schemi di compressione e cerca di ottimizzare questo modo, ma fate attenzione, perché questa opzione è lenta (10x più lenta).

Nota: La suddetta non ha funzionato per me, con le ultime create_compressed_fs. Ho potuto creare la ISO, ma potrebbe non leggere correttamente l'immagine compressa quando si avvia (I/O errori durante la lettura del dispositivo cloop0). Penso che questo è stato perché create_compressed_fs non ha abbastanza RAM e anche se funzionava il comando non ha eseguito la compressione correttamente. Esso utilizza un file di memoria temporaneo per lo stoccaggio:

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 -B \
   65536 -f /mnt/hda1/isotemp - /mnt/hda1/knx/master/KNOPPIX/KNOPPIX

Live CD ISO

Bene quando avete finito, potete procedere a produrre l'immagine finale del CD-ROM:

cd /mnt/hda1/knx/master
find -type f -not -name md5sums -not -name boot.cat -not -name isolinux.bin \
   -exec md5sum '{}' \; > KNOPPIX/md5sums

(Questo aggiona il marker MD5 calcolando l'hash dei file includi nell'ISO, usato per verificare l'integrità) ora potete masterizzare; per Knoppix <= 3.3:

mkisofs -pad -l -r -J -v -V "KNOPPIX" -b KNOPPIX/boot.img -c KNOPPIX/boot.cat \
   -hide-rr-moved -o /mnt/hda1/knx/knoppix.iso /mnt/hda1/knx/master

per Knoppix >= 3.4 o altre distribuzioni isolinux:

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

(la ISO è memorizzata in /mnt/hda1/knx/knoppix.iso)

Trasferite la vostra ISO usando il vostro tool preferito, è il CD e pronto per l'uso.

Trucchi

Ho avuto buoni risultati rimasterizzazione di lavoro dal CD di lavoro come root da Fluxbox. Basta dire "Knoppix 2" al prompt boot e si avvio a un prompt di root dove si può poi dire "startx /usr/bin/fluxbox". Mi piace utilizzare la shell di xterm unicode.

Gestione dei pacchetti Software

Prima di fare il lavoro di rimasterizzazione da chroot e meglio usare

apt-get remove --purge pkg-name

per rimuovere i pacchetti, perché prima di tutto non si blocchi la masterizzazione e vi mostra dettagli su ciò che è lo stato delle dipendenze segnalando "sì o no" per la rimozione del superfluo.

Se non si utilizza il sopra "apt-get" e la lunga sequenza di controllo pacchetti, ecco il modo più semplice per farlo:

 COLUMNS=200 dpkg -l |grep ^rc |awk '{print $2} ' > topurge	

Che farà un elenco di tutti i pacchetti rimossi da spurgare

dpkg -P `< topurge `

se si purgano con:

COLUMNS=200 dpkg -l |grep ^rc |awk '{print $2} ' | xargs dpkg -P

il comando che completa l'opera:

deborphan | xargs dpkg -P .

Alternativa per macchine con poca Memoria

Non si ha realmente bisogno 1G di swap in quanto vi sono due nuovi strumenti per creare i filesystem compresso. Ecco alcuni dei candidati a sostituire il sistema di fs compresso:


  • Valentijn's riscrive il compressore [1]
  • Quozl's porting di compressloop per Knoppix 3.4 [2]
  • Quozl's distribuisce compressloop (Utilizzate più di un processore per velocizzare le cose) [3] or [4]
  • Justin's patch [5] (link broken)che a distribuito il cloop (anche per smp) Che trovate in questa stessa directory.

Test della immagine CD senza creare il supporto CD

Se avete un partizione con almeno 700MB di spazio libero formattato con ext2, ext3 o Vfat, è possibile utilizzarla per questo test per il boot da un floppy disk. Un floppy di boot vengono cercate un partizione con /KNOPPIX/ nella root, e la compressa immagine /KNOPPIX/KNOPPIX. Invece di usare la sotto-directory /mnt/hda1/knx/master/KNOPPIX/ come descritto sopra, deve essere chiamato /mnt/hda2/KNOPPIX/. La root index.html si trova in /mnt/hda2/index.html e immagine compressa sarà in /mnt/hda2/KNOPPIX/KNOPPIX. Ora potete fare il boot da dischetto e usare /mnt/hda2 come immagine. Per ulteriori informazioni, vedere Hd BasedHowTo.

Se non si dispone di una partizione o non si vuole usare il metodo precedente si può usare Qemu (vedi [6]), con l'immagine ISO come questo comando:

 Qemu-m 128 -cdrom /temp/Knoppix-custom.iso -boot d -net user

Come vedete la ISO deve essere pronta prima di lanciare il comando, provate Qemu è un emulatore che funziona bene per questo test.

Test della versione rimasterizzata senza creare il cloop file/iso

Ho usato una configurazione simile a Knoppix server terminal per testare il file remasterizzato senza dover ricreare una immagine Cloop ogni volta: il file remasterizzato vivere in un filesystem ext2 in un loopfile (knoppix_loop) montato in rw (questo è in chroot). Quando volte testare la configurazione attuale, ho un altro computer di rete in boot remoto e utilizzo i file della loopfile directory (si ha bisogno di un altro miniroot.gz). Vedi Utente: Ml # dev_setup

Se si desidera utilizzare una sola macchina, dovrete riavviare (o utilizzare qemu) e usare il "loopfile" e "fromhd" cheatcodes (vedi Utente: Ml # miniroot_changes). Ad esempio, questo è ciò che ho usato nel mio avvio di grub:

title           Remastered Knoppix
root            (hd0,0)
kernel          /boot/myknoppix/vmlinuz fromhd=/dev/hda4 loopfile=/samba/share/isos/knoppix_loop lang=us ramdisk_size=100000 init=/etc/init apm=power-off nomce vga=791 quiet BOOT_IMAGE=knoppix
initrd          /boot/myknoppix/miniroot.gz

Boot della immagine Knoppix con GRUB

  • Prima copiate /boot fuori dal Knoppix cd nella vostra partizione di booto (o la vostra partizione dos). Io la ho chiamata boot.knoppix

copate la master/KNOPPIX directory nella vostra directori di root. È possibile collocarlo altrove rispetto alla partizione di boot (ext2/3, reiserfs, vfat sono supportete).

  • Per Knoppix <= 3.3, ponete queste righe nel vostro: /boot/grub/menu.lst:
title KNOPPIX
        root   (hd0,0)
        kernel /boot.knoppix/vmlinuz 2 fromhd=/dev/hda4 lang=us
        initrd /boot.knoppix/miniroot.gz
  • per Knoppix >= 3.4 o altre distribuzioni basate su isolinux:
title KNOPPIX
        root   (hd0,0)
        kernel /boot.knoppix/isolinux/linux 2 fromhd=/dev/hda4 lang=us
        initrd /boot.knoppix/isolinux/minirt.gz
  • Note: il parametro fromhd: è la locazione della directory /KNOPPIX
  • reboot è buon divertimento.

Script Utili al vostro remastering


Questa e una struttura di directory raccomandata per il vostro remastering di KNOPPIX:

. (invoke ../remaster from here)
|-- master (invoke ../../umountbootimage from here)
|   |-- KNOPPIX
|   |   |-- KNOPPIX (compressed image)
|   |   |-- boot.img (boot floppy image)
|   |   `-- (other files snipped)
|   `-- index.html
`-- source
    `-- KNOPPIX (this directory can be chrooted into)
        |-- bin
        |-- boot
        |-- cdrom
        |-- dev
        |-- etc
        |-- floppy
        |-- home
        |-- initrd
        |-- lib
        |-- mnt
        |-- none
        |-- opt
        |-- proc
        |-- root
        |-- sbin
        |-- tmp -> /var/tmp
        |-- usr
        |-- var
        `-- vmlinuz -> boot/vmlinuz-2.4.22-xfs

Il seguente script "remaster" farà il processo di rimasterizzare per voi. Utilizzatelo come root, o vi ritroverete con errori ai diritti di accesso e dell'immagine ISO.

The script has last been tried out on Debian sid on 2004-04-02.

#!/bin/bash -x
# This script builds a new KNOPPIX ISO image.
# Copyright (C) 2004 by Marc Haber <mh+knoppix-remaster@zugschlus.de>
# License: GPL V2

ROOT="$PWD"
SOURCE="$ROOT/source/KNOPPIX"
MASTER="$ROOT/master"
CLOOPTARGET="$ROOT/master/KNOPPIX/KNOPPIX"
TARGET="$ROOT"
EXCLUDELIST="$ROOT/source/excludelist"

rm -rf $SOURCE/.rr_moved

cd $SOURCE
mkisofs -R -U -V "KNOPPIX.net filesystem" \
-P "KNOPPIX www.knoppix.net" \
-hide-rr-moved -cache-inodes -no-bak -pad \
-exclude-list $EXCLUDELIST \
. | nice -5 /usr/bin/create_compressed_fs - 65536 > $CLOOPTARGET

cd $MASTER
rm -f KNOPPIX/md5sums
find -type f -not -name md5sums -not -name boot.cat -exec md5sum {} \; >> KNOPPIX/md5sums
mkisofs -pad -l -r -J -v -V "KNOPPIX" -b KNOPPIX/boot.img \
-c KNOPPIX/boot.cat -hide-rr-moved -o $TARGET/knoppix.iso $MASTER

Il seguente script loop-mount floppy di boot di immagine e di immagine initrd per la modifica. La funzione umount costruire una nuova immagine initrd e reinserirla sul floppy di boot di immagine.

The script has last been tried out on Debian sid on 2004-01-13.

#!/bin/bash -x
# This script will loop-mount boot floppy and initrd image
# Copyright (C) 2004 by Marc Haber <mh+knoppix-remaster@zugschlus.de>
# License: GPL V2
unset CDPATH || true

# if not root, re-invoke self as root
if  "`id -u`" -ne 0 ; then
export LOCUSER="$USER"
export LOCHOME="$HOME"
if [[ "${SHELLOPTS/xtrace/}" != "$SHELLOPTS" ]]; then
sudo bash -x $0 $@
exit $?
else
sudo $0 $@
exit $?
fi
else
LOCUSER="${LOCUSER:-$USER}"
LOCHOME="${LOCHOME:-$HOME}"
fi
set -e

KNOPPIXDIR="KNOPPIX"
BOOTIMGFILE="$KNOPPIXDIR/boot.img"
BOOTIMGFS="vfat"
BOOTIMGDIR="boot.img"
INITRDGZ="$BOOTIMGDIR/miniroot.gz"
INITRDFILE="$KNOPPIXDIR/miniroot"
INITRDFS="ext2"
INITRDDIR="miniroot"

mountbootimage() {
if ! modprobe loop; then
echo >&2 "ERR: cannot load loop module"
exit 1
fi

if !  -e "$BOOTIMGFILE" ; then
echo >&2 "ERR: no $BOOTIMGFILE found"
exit 1
fi

for nofile in $BOOTIMGDIR $INITRDGZ $INITRDFILE $INITRDDIR; do
if  -e "$nofile" ; then
echo >&2 "ERR: $nofile already exists"
exit 1
fi
done

mkdir -p $BOOTIMGDIR
mount -o loop,uid=$LOCUSER -t $BOOTIMGFS $BOOTIMGFILE $BOOTIMGDIR

< $INITRDGZ gunzip > $INITRDFILE
mkdir -p $INITRDDIR
mount -o loop -t $INITRDFS $INITRDFILE $INITRDDIR
}

umountbootimage() {
dd if=/dev/zero of=$INITRDDIR/nullfile || true
sync
rm $INITRDDIR/nullfile
umount $INITRDDIR
rmdir $INITRDDIR
< $INITRDFILE gzip --best > $INITRDGZ
rm -f $INITRDFILE

umount $BOOTIMGDIR
rmdir $BOOTIMGDIR

syslinux KNOPPIX/boot.img
}

case "`basename $0`" in
mountbootimage)
mountbootimage
;;
umountbootimage)
umountbootimage
;;
*)
echo >&2 "ERR: called with unknown name `basename $0`"
exit 1
;;
esac

Spunti Intorno all'uso di apt-get per installare/update/rimozione applicazioni

(by gnarvaja)

  • If you booted from CD, even on a HD install (example: Pivot Install) instead of copying the original CD and KNOPPIX directory to the HD, you can use them directly from their mount points.
  • Another alternative is to mount an ISO image of the original CD as a loop device and mount the KNOPPIX image as a cloop device. You will save close to 2GB of space. Script to mount from an ISO image:
#!/bin/bash
# Assumes that the current directory is the working space
# original.iso is an image of the CD we will be using as master
mount -t iso9660 original.iso ./oldcd -o ro,loop
# initialize the compressed loop device
losetup /dev/cloop1 ./oldcd/KNOPPIX/KNOPPIX
mount -t iso9660 /dev/cloop1 ./KNOPPIX -o ro,loop
  • Get apt-spy and use it to modify the sources.list file with the best mirrors for your particular region. This will speed up the downloading. Backup the original sources.list just in case.
  • Another technique is to modify sources.list. Replace the string .de. in the ftp addresses (ftp.de.debian.org) with the code corresponding to your country. Examples: USA -> .us. (ftp.us.debian.org), Brazil -> .br. (ftp.br.debian.org). Check the Debian site for debian.org mirrors in your country.
  • Remember to uncomment the linuxtag ftp addresses to get the latest and greatest from Knoppix
  • Use apt-get update to get the lists with the latest releases and patches. Do not update a package if you don't need to, it may lead to the use of additional disk space (precious commodity when you want to keep everything below 700MB) and you may brake something else without knowing. Abuse the -s option to simulate the installation.
  • Before doing the update, I modified my default releases to testing, that means that the software I'll be using will have a good balance of stability and features. Knoppix uses unstable by default, which is too risky for my personal taste.
  • Get [apt-get install] locale and configure it with the locales you are going to use. It will save lots of space when downloading applications with plenty of locale modules and localized manual pages.
  • I use aptitude to get/remove applications, it is character based so it works with init 2. As you mark packages for install/update/removal, it will tell you how much disk space you will save/use, try to solve depencies problems and give you plenty control to fix them manually when possible.
  • When installing applications it is likely that your /etc/rc?.d directories will have new entries, many of them unwanted or unplanned. Make sure you check them and remove the new entries based on your preferences. I usually leave /etc/rc2.d and /etc/rc5.d as close as the originals as possible and modify /etc/rc3.d and /etc/rc4.d to test new stuff. Example: You may want to have ntfs installed, but not necessarily running by default. Same with apache, mysql and many others.
  • When removing/purging applications, they may leave behind non-empty directories. Usually this is announced by aptitude, apt-get or any other installation utilty. Make sure to check the messages and manually remove those directories.
  • After you are done, aptitude may leave some files behind. Here's a clean up script I use:
# !/bin/bash
# Clean package files generated by aptitude
rm /var/log/aptitude
rm /var/lib/apt/lists/*debian*
rm /var/lib/apt/lists/*knoppix*

Problemi Comuni riscontrati

  • You've startx'd (into whatever window manager you like) and you start a terminal (gnome-terminal, konsole, xterm). Nothing happens (such is the case in fluxbox, and you'll see an error in you ~/.xsession-errors file). Or perhaps the error is helpfully displayed:
 get_pty: not enough ptys

I had plenty yesterday... but then I chrooted so, to solve this,

 # NOT in your chroot environment
 cd /mnt/hda1/knx/source/KNOPPIX/dev
 MAKEDEV pty
 # enter your chroot environment
 chroot /mnt/hda1/knx/source/KNOPPIX/
 # and mount /dev/pts
 mount -t devpts /dev/pts/ /dev/pts

it might give that same "fstab not found" error as mounting proc does. so do what you'd do then, disregard.

start your X up again and try your terminal, should work. thanks to: technovelty[7] for the final enlightenment

Altre Indicazioni

Se la mia guida è troppo confusa, o desideri un secondo parere, guardate questo altro Howto per rimasterizzazione: http://brainstorms.in/?page_id=84 Un altro Howto lo trovate qui http://www.stirnimann.com/mystuff/doc/knoppix.txt

There is a wizard, which knows all the unpacking, compressing and CD-recording steps mentioned here. It also shows a shell where you can update the uncompressed KNOPPIX system using debian's standard software installation tools. It is called mmkcdrom and part of the plugscript package: [8]

Vedete questo HOWTO, per smanettoni delle shell, a http://quozl.linux.org.au/knoppix/

Potete dare uno sguardo a Knoppix Customization Forum per altre idee ad aiuto al vostro remastering.

Conclusioni

Questa è una versione aggiornata del mio howto precedente. Un suggerimento ai principianti del linux; Dovete conoscere bene come utilizzate i comandi del linux e apprendere delle singole funzioni l'esito dei comandi. Evitate se non avete una buona esperienza di Linux potreste fare danni alla Vs. installazione. Continueremo ad aggiornare e dettagliare la procedura in funzione anche dei vostri suggerimenti.

Ringraziamenti

Traduzione a cura di mcmax, e a knoppix per le correzioni i trucchi e le idee. Ritenetevi liberi di operare modifiche per aggiornamenti sulle procedure.

Note sullo swap:

Translations