Sistema Operatiu Knoppix GNU/Linux en una memòria USB

  • warning: tempnam(): open_basedir restriction in effect. File() is not within the allowed path(s): (/srv/www/gilug.org/www/site.tree/) in /srv/www/gilug.org/www/site.tree/public/includes/file.inc on line 802.
  • warning: fopen(): Filename cannot be empty in /srv/www/gilug.org/www/site.tree/public/includes/file.inc on line 803.
  • El fitxer no s'ha pogut crear.

Amb l'augment considerable de capacitat de les memòries USB i també la baixada dels seus preus, podem portar un Sistema Operatiu complert i els nostres fitxers de treball en un estri més petit que una caixa de cerilles. Us mostraré com instal·lar Knoppix GNU/Linux en un USB pendrive, i alguns trucs per fer-lo encara més utilitzable.

Finalitat

He escollit el Knoppix GNU/Linux perquè està molt ben preparat per treballar en una memòria USB(*), en el moment d'arrancar fa una complerta detecció del maquinari i també incorpora característiques com el directori HOME persistent, que consisteix en que el directori personal i les configuracions es desen en un fitxer, i quan es torna a arrancar es munten al HOME de l'usuari. El funcionament és transparent i molt automatitzat. (* també anomenades “PenDrive”, “DriveKey” o “Pen” per els amics)

Knoppix GNU/Linux va molt ben equipat amb aplicacions de llicència d'ús lliure, per exemple:

  • OpenOffice.org, un paquet ofimàtic molt complet, tant o més bo que altres, i que a més llegeix i grava els altres formats
  • Gaim, missatger compatible amb tots els missatgers; Yahoo, M$ i molts d'altres, permet múltiples sessions al mateix temps
  • GIMP, tractament d'imatge professional, no té res a envejar al Photoshop
  • Iceweasel (FireFox), Konqueror, navegadors d'Internet
  • Icemail, Kmail, enviar i rebre e-mail
  • i molts d'altres

En aquest cas he usat una distribució Knoppix en Espanyol, i crec que aquestes instruccions serviran per les moltes distribucions GNU/Linux basades en Knoppix. Com podeu comprovar, hi ha moltes variants de Knoppix, algunes com el Damn Small Linux , que només ocupa 51MB i conté aplicacions molt senzilles; o altres distribucions especialitzades en sectors com la música, la medicina, etc...

He posat el Knoppix GNU/Linux "Live CD" versió 5.1.1 de Gener de 2007 en una memòria KINGSTON mini Data Traveller 2GB, treballant des de un sistema Debian GNU/Linux ja instal·lat.

He escollit GRUB (*) com el gestor d'arrancada perquè m'agrada com presenta la llista d'opcions i deixa triar amb les tecles del cursor, a més dona la possibilitat d'editar els paràmetres en el moment d'arrancar i inclús executar algunes ordres. (* en comptes de SysLinux, que sens dubte també faria el fet, segons es pot comprovar amb les Referències)

Una de les característiques de Knoppix és que s'executa amb el mitjà d'instal·lació en mode de només lectura per l'usuari; lo que no deixa que aquest guardi els seus documents com a fitxers del Pen. He desenvolupat un truc perquè l'usuari pugui guardar directament sobre el Pen, i així després es podran llegir en un altre màquina que funcioni amb Finestres o un altre Sistema Operatiu tant sols posant el Pen a l'USB. També explicaré com gravar un CDROM per arrancar el Pen en màquines que la BIOS no suporta arrancar l'USB; normalment son BIOS anteriors al 2001.

COMPTE!!! Els procediments que descriuré seguidament estan basats en la meva experiència personal i no pretenc fer un manual que descrigui amb tota exactitud cada una de les tecles a prémer. Qui vulgui instal·lar Knoppix GNU/Linux en una memòria USB ha de tenir coneixement i experiència en sistemes operatius i ha de saber interpretar correctament lo que aquí s'explica.

Començar

Lo primer, hem de fer còpia de seguretat de totes les dades que tinguem al Pen perquè segurament serà necessari formatejar-lo per poder-lo fer arrancable.

Per preparar el Pen hem de formatejar-lo, instal.lar-hi el gestor d'arrancada i copiar els fitxers de Knoppix GNU/Linux. Aquestes operacions es poden fer des de varis Sistemes Operatius, he treballat sempre que he pogut amb el Debian GNU/Linux.

Formatejar

Si voleu, abans de formatejar podeu instal·lar-hi el Gestor d'arrancada i veure si pot Arrancar.

He trobat referències per formatejar USB amb Linux, moltes d'elles fan un format a baix nivell i algunes diuen que un paràmetre incorrecte pot convertir el Pen en irrecuperable, He intentat mkdiskimage, segons aquesta recepte però després de molta estona esperant, ha donat errors. Crec que la opció més encertada és USB Formatter Tool de HP que va amb Finestres , aquest és un programa senzill i ràpid (em refereixo a l'eina de formatejar)

Arranco el Finestres(*), instal·lo la utilitat i l'executo, mostra una pantalla on ha detectat la memòria USB com una unitat de disc, poso el format a FAT32 i un nom per el volum(**); al cap de pocs segons ha acabat. (* quan de temps feia que no l'arrancava! ) (** no fan falta els fitxers d'arrancada de cap sistema DOS, ja que seguidament posarem un gestor d'arrancada)

Els gestors d'arrancada només van amb FAT o FAT32, ni SysLinux ni GRUB arranquen NTFS, i la opció recomanada és FAT32.

Personalització del kernel

El Knoppix GNU/Linux fa que el Pen només sigui de lectura per l'usuari, per tenir permís per escriure-hi haurem de modificar l'escript d'arrancada linuxrc que es troba en el ramdisk inicial del kernel.

La personalització del kernel és opcional. però si la fem dona les ventatges següents:

  • l'usuari fa servir tota la capacitat del Pen per guardar els seus fitxers
  • els documents guardats en els directoris del Pen es poden llegir en una màquina engegada amb un altre Sistema Operatiu.

I si no la fem, la seguretat queda més garantida; perquè no es permet que l'usuari modifiqui fàcilment el sistema operatiu instal·lat en el Pen.

Des de el nostre sistema Debian GNU/Linux, treballant amb l'usuari root

Necessitem els fitxer minirt.gz(*) de “Knoppix Live Distro CD”, ara muntarem la ISO que hem descarregat abans,

(* en comptes del minirt.gz original aconsello el minirt_511a.gz descarregat del fòrum knoppix.net , ja que porta vàries millores en els escripts d'arrancada)

mkdir /tmp/iso
mount -o loop KNOPPIX_V5.1.1CD-ES-2007-01-09.iso /tmp/iso

Crearem un directori de treball,

mkdir initrd
cd initrd

Copiarem el ramdisk inicial,

cp /tmp/iso/boot/isolinux/minirt.gz .

el descomprimim,

gzip -d minirt.gz

el muntem en un directori,

mkdir dir
mount -o loop minirt dir

editem(*) l'escript d'engegada linuxrc (* compte amb quin editor fem servir ! ja que aquest fitxer conté codis de control que alguns editors poden modificar sense avisar ):

vi dir/linuxrc

Busquem la linia que posa umask 022 i la canviem per umask 000 , guardem i sortim de l'editor.

desmuntem el ramdisk, i tornem-lo a comprimir

umount dir
gzip -c minirt > minirt.gz

en els apartats següents farem servir aquest fitxer minirt.gz en comptes de l'original del CD.

Gestor d'arrancada

Instal·larem el gestor GRUB.

Des de el nostre sistema Debian GNU/Linux, treballant amb l'usuari root, suposem que ha detectat el Pen en el dispositiu /dev/sdb1 , per copiar la configuració de GRUB que tenim en el Debian executem:

mount /dev/sdb1 /media/sdb1/
cd /media/sdb1
mkdir -p boot/grub
cp -r /boot/grub/* boot/grub
echo '(hd1) /dev/sdb' > boot/grub/device.map
grub-install --root-directory=/media/sdb1 --no-floppy '(hd1)'

hem suposat que a l'ordinador en que treballem hi ha una sola unitat de disc, per lo que GRUB anomena hd0 al disc dur i hd1 al Pen.
Hem d'editar un fitxer /media/sdb1/boot/grub/menu.lst amb la configuració.

vi /media/sdb1/boot/grub/menu.lst

Opcions del kernel Knoppix, menu.lst

Examinant les opcions del fitxer boot/isolinux/isolinux.cfg que hi ha en el CD original es pot veure que es conserven característiques corresponents a maquinari molt antic, com per exemple la baixa resolució de pantalla a 1024x768, la incompatibilitat del DMA, o posar APM en comptes de ACPI. La meva configuració serà més actual; activarà el DMA, i altes resolucions de pantalla.
En el cas de que posem el paràmetre screen=1920x1440, no implica que el sistema engegui amb aquesta resolució sinó que configurarà la màxima resolució que permeti la pantalla.
En el paràmetre hostname posem un identificador personalitzat, per exemple el nostre nom, només pot tenir lletres de la a a la z, i guions al mitg de les lletres.

#
title Knoppix highres
  kernel /boot/linux ramdisk_size=100000 screen=1920x1440 init=/etc/init lang=ca home=scan hostname=elnostrenom noeject noprompt vga=791 initrd=minirt.gz loglevel=0 quiet BOOT_IMAGE=knoppix
  initrd /boot/minirt.gz
#
title Knoppix 1024x768
  kernel /boot/linux ramdisk_size=100000 init=/etc/init lang=ca home=scan hostname=elnostrenom noeject noprompt vga=791 initrd=minirt.gz loglevel=0 quiet BOOT_IMAGE=knoppix
  initrd /boot/minirt.gz
#
title Knoppix console
  kernel /boot/linux ramdisk_size=100000 init=/etc/init lang=ca home=scan hostname=elnostrenom noeject vga=normal vga=791 initrd=minirt.gz loglevel=0 quiet BOOT_IMAGE=knoppix 2
  initrd /boot/minirt.gz

Copiar els fitxers

Necessitem els fitxers de “Knoppix Live Distro CD”, ara muntarem la ISO que hem descarregat abans,

mkdir /tmp/iso
mount -o loop KNOPPIX_V5.1.1CD-ES-2007-01-09.iso /tmp/iso

Copiarem els fitxers del sistema,

mkdir -p /media/sdb1/knoppix
cp -r /tmp/iso/KNOPPIX/* /media/sdb1/knoppix

Copiarem el kernel; i si volem, el ramdisk modificat en Personalització del kernel

cp /tmp/iso/boot/isolinux/linux /media/sdb1/boot
cp /tmp/iso/boot/isolinux/minirt.gz /media/sdb1/boot

La configuració inicial ja és a punt, desmuntem el Pen

umount /dev/sdb1

Arrancar

Per arrancar amb un Pen es necessita un BIOS que ho suporti, Entrem en el BIOS i canviem l'ordre d'arrancada dels discs durs perquè el “KINGSTON mini Data Traveller 2GB” sigui el primer de la llista.

El PC ara ha d'arrancar amb el Pen i el “Knoppix Live CD”

En cas de que la BIOS no suporti arrancar un Pen, seguidament farem un CD. ( que no arrancarà tots els Pen, només aquest Pen amb el nostre Knoppix GNU/Linux )

En aquest cas preparem el BIOS per arrancar des de el CD.

Entrem en el BIOS i canviem l'ordre d'arrancada dels dispositius perquè el CDROM sigui el primer de la llista.

Construir un CD per arrancar aquest Pen

Ens situem en un directori de treball i fem un directori per GRUB

mkdir -p iso/boot/grub

Copiem el fitxer stage2_eltorito

cp /usr/lib/grub/i386-pc/stage2_eltorito iso/boot/grub
cp -r /media/sdb1/boot/* iso/boot/

El fitxer menu.lst és igual al que amb fet amb les Opcions del kernel Knoppix, menu.lst

I construim la imatge grub.iso

mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot \
  -boot-load-size 4 -boot-info-table -o grub.iso iso
que podem gravar en un CD fent servir el nostre programa de gravació preferit.

Directori personal

Knoppix GNU/Linux ens permet crear una “imatge persistent” del nostre directori personal, que guardarà els nostres fitxers i també les configuracions de forma automatitzada i transparent.
Per crear una imatge persistent de disc, després d'engegar amb el Pen, seleccionem l'icona del pingüí i “Configurar > Crear una imagen persistente de disco KNOPPIX”. Sortirà una finestra per seleccionar a quina partició de disc la volem. Escollim la partició que correspon al nostre Pen; en aquest exemple /dev/sdb1
Ens preguntarà per la mida de la imatge, aquí jo hi he posat 128 MB. He observat que com a mínim necessita 32 MB per els fitxers de treball. Haurem de controlar la ocupació d'aquest disc ja que és crítica per el sistema.

Perquè guardi automàticament les configuracions i fitxers hem de parar i tornar a arrancar amb el Pen. Quan arranca ens demana si volem fer servir la imatge. Seleccionem Si i continuem. Hem d'observar que la tercera opció anomenada overwrite es descriu com “sobreescribir la configuración del sistema” (*), actua al contrari de lo que sembla, si no la marquem recupera la configuració guardada i si la marquem lo que val és la configuració detectada a l'engegar, (* es tracta dels dispositius del sistema, teclat, pantalla, ratolí, tarja de só, ...)

Ara podem preparar l'escriptori de la nostra manera preferida, personalitzem les barres d'eines, els menús, els fons de pantalla, .. Quan aturem ho desarà i ho recuperarà quan tornem a engegar.

Els que hem escollit que l'usuari tingui accés als fitxers del Pen (fent la modificació al ramdisk inicial), podem crear un directori a l'arrel i enllaçar-lo des de el directori home.

mkdir /cdrom/Documents
ln -sn /cdrom/Documents /KNOPPIX.IMG/home/knoppix/Documents
En aquest cas aconsellarem a l'usuari que guardi els fitxers en la carpeta Documents del seu directori personal HOME, i li mostrarem que pot llegir els fitxers en un altre màquina i/o Sistema Operatiu.

Fitxer d'intercanvi (swap)

Knoppix GNU/Linux també ens permet crear un fitxer d'intercanvi per fer de memòria virtual del Sistema Operatiu; en realitat és obligat tenir memòria virtual si volem engegar un entorn gràfic com el KDE o GNOME en màquines que tinguin menys de 128 MB de RAM.
Per crear un fitxer d'intercanvi, després d'engegar amb el Pen, seleccionem l'icona del pingüí i “Configurar > Crear un fitchero swap”. Sortirà una finestra per seleccionar a quina partició de disc la volem. Escollim la partició que correspon al nostre Pen; en aquest exemple /dev/sdb1
Ens preguntarà per la mida de la imatge, aquí jo hi he posat 128 MB.

Anàlisi de capacitat

La instal·lació del CD ocupa 700 MB, amb una memòria de 1 GB ens quedarien 290 MB per documents, dels que hem de descomptar les configuracions que es guarden dintre del directori persistent i el fitxer swap.

Observació: Veient la mida de la ISO del DVD podem suposar que ens ocuparia quasi 4 GB, amb una memòria de 4 GB dubto que hi càpiga, i si fos així no ens quedaria espai lliure. Serien necessaris més de 4 GB per el DVD.

Conclusió

Knoppix GNU/Linux instal·lat en un Pen és ideal per els estudiants o la gent que viatja, tant sols portant una petita caixeta poden disposar d'un sistema operatiu molt complert i, vagin on vagin, trobaran un ordinador en llocs com biblioteques, cyber-cafès; on podran treballar amb el seu entorn personalitzat i els seus fitxers

Manteniment del fitxers d'imatge

Els fitxers d'imatge tenen un format ext2, o ext2 encriptat amb AES; el ext2 el muntarem amb els dispositius loop , però els encriptats necessiten el mòdul cloop

La manera més senzilla de fer el manteniment és engegar el Pen Knoppix GNU/Linux i, amb l'usuari root, examinar el contingut del directori /KNOPPIX.IMG. Podem observar si han quedat fitxers en el directori /var o en la paperera, o si tenim vàries còpies de configuracions a /etc/X11 , ...

En el cas de que vulguem canviar la mida del fitxers imatge hem de crear un fitxer nou en una altre partició de disc, i després muntar-lo en un directori temporal i copiar-hi el contingut de /KNOPPIX.IMG . Un cop hem copiat, el desmuntem i tornem a arrancar sense activar cap imatge, moguem el fitxer nou substituint el vell.

Inici personalitzat

En l'arrancada del Knoppix GNU/Linux tenim dos punts en els que s'executa un programa creat per l'usuari. Aquests programes es diuen knoppix.sh i un és /knoppix/knoppix.sh situat en el sistema de fitxers d'instal.lació; i l'atre és /knoppix.sh situat en la imatge persistent. S'executen quan el sistema arranca. L'instal·lador pot preparar aquests escripts perquè facin feines molt diverses.

Referències

USB_Based_FAQ

Success making bootable and persistent USB key with SYSLINUX

syslinux bootloader un altre article sobre posar Knoppix/Linux en una memòria USB fent servir SysLinux

Boot KNOPPIX from an USB Memory Stick Article sobre posar Knoppix 3.1 en USB, potser ja anticuat

Knoppix Web,Knoppix

Knoppix Informació, fòrums

Knoppix_Remastering_Howto Reconstruir el CDROM amb les nostres aplicacions preferides i/o actualitzacions de lo que ja hi ha instal.lat

Remaster Knoppix Reconstruir el CDROM amb les nostres aplicacions preferides i/o actualitzacions de lo que ja hi ha instal.lat

Knoppix/grub menu.lst Arrancar Knoppix amb GRUB

Ompliu els Buits

Podeu estar segurs de que aquesta pàgina és incompleta i inexacte, si us plau, feu comentaris amb correccions o afegits