Da crismonblog.orgPer tutti i possessori di netbook, nonchè amanti di openSUSE, questo articolo potrebbe rivelarsi davvero utile in quanto vedremo come installare
openSUSE 11.0 senza l’ausilio di un lettore CD esterno.
Per l’esattezza la versione di openSUSE in oggetto è la 11.0; per la sua installazione ricorreremo a una Pen Drive che, dopo aver apportato le dovute modifiche, si comporterà come un vero e proprio DVD.
Il primo passo da compiere è quello di effettuare il download della versione Gnome o KDE (
http://ediboard.altervista.org/index.php?topic=2255.0).
openSuSE 11.0 Gnome LiveCD i386openSuSE 11.0 KDE4 LiveCD i386E’ consigliabile optare per una versione Live visto e considerato che, utilizzandola su Eee Pc ci affideremo ai repository sia per le future installazione di software aggiuntivo, sia per eventuali aggiornamenti.
Il secondo passo è quello di procurarsi una Pen Drive di almeno 2gb. Il dispositivo va opportumamente trattato equipaggiandolo di filesystem FAT32 e rendendolo bootabile. Trovate utili informazioni su come gestire queste operazioni in
questo articolo (
http://www.crismonblog.org/unix/come-creare-una-partizione-il-suo-filesystem-e-come-renderla-bootabile.html) oppure, più semplicemente, utilizzando
Gparted.
La guida che andrò a esporvi è divisa in 2 parti: nella prima parte vedremo come preparare l’immagine in modo tale che il sistema in fase di installazione non richieda la presenza del DVD, la seconda consiste nella copia dei files all’interno del dispositivo USB.
Questo articolo ha la particolarità di poter essere utilizzato senza dover minimamente intervenire sui comandi (copia/incolla); le uniche 2 variabili riguardano la posizione e il nome dell’immgine ISO e il device in cui verrà collegata la vostra Pen Drive.
Prima parteInnanzitutto occorre installare syslinux: aprire una console e digitare:
sudo zypper in syslinuxA questo punto è necessario, dopo aver provveduto a creare una partizione FAT32, inserire la Pen Drive nell’apposita porta USB.
syslinux /dev/sdc1(In cui
/dev/sdc1 corrisponde alla partizione della penna usb.)
Passiamo alla creazione delle directory che utilizzeremo per montare l’immagine ISO e per svolgere le altre operazioni. Da terminale digitare:
mkdir workmkdir work/unpackedcd workPer la creazione delle directory successive necessitano i privilegi di amministrazione ragion per cui dopo averli ottenuti digitare:
mkdir /mnt/isomkdir /mnt/squashmkdir /mnt/usbMontare l’immagine ISO e proseguire impartendo i comandi che vi vengono suggeriti:
mount -o loop openSUSE-11.0-KDE4-LiveCD-i386.iso /mnt/iso/cd unpackedgzip -dc /mnt/iso/boot/i386/loader/initrd | cpio -imount -o loop /mnt/iso/openSUSE-*read-only.* /mnt/squash/cp /mnt/squash/lib/modules/*/kernel/fs/nls/nls_cp437.ko lib/modules/*/kernel/fs/nls/cp /mnt/squash/lib/modules/*/kernel/fs/nls/nls_iso8859-1.ko lib/modules/*/kernel/fs/nls/cp -r /mnt/squash/lib/modules/*/kernel/fs/vfat lib/modules/*/kernel/fs/cp -r /mnt/squash/lib/modules/*/kernel/fs/fat lib/modules/*/kernel/fs/Fatto ciò occorre modificare il files include. Editare il file con il vostro editor preferito; nel mio caso kwrite:
kwrite includeQuesta operazione è di vitale importanza infatti, modificando come indicato il file include, il sistema in fase di installazione non andrà a cercare il DVD. Per fare ciò è necessario cercare la così definita "function CDDevice" e
sostituire il codice che la definisce con questo:function CDDevice { # /.../ # changed this function so that it finds config.isoclient on vfat disks, e.g. USB drives # ---- find /lib/modules/*/kernel/fs/nls/nls* -exec insmod {} \; # needed for vfat filesystem find /lib/modules/*/kernel/fs/*fat/*.ko -exec insmod {} \; # needed for vfat filesystem insmod /lib/modules/*/kernel/drivers/usb/storage/usb-storage.ko # needed for USB sleep 5 # fixme; do this in a proper way cddevs=`/usr/sbin/hwinfo --disk | grep sd | grep "Device File:" | cut -f2 -d: | cut -f2 -d " "` # looks for disks instead of CDs echo cddevs $cddevs for i in $cddevs;do i=$i"1" # fixme; looks on the first partition only echo i $i if [ -b $i ];then test -z $cddev && cddev=$i || cddev=$cddev:$i echo cddev $cddev fi done if [ -z $cddev ]; then systemException \ “Failed to detect CD drive !” \ “reboot” fi } |
Salvare i cambiamente e provvedere alla creazione del initrd che chiameremo initrdud. Da console impartire il seguente comando:
find . | cpio -o -H newc | gzip -9 > ../initrdudSeconda ParteTorniamo alla nostra Pen Drive. Generalmente il sistema monta tale dispositivo su /media/disk (o qualcosa di simile). Per comodità, e per seguire con tranquillità il resto dell’articolo smontare la periferica e provvedere a rimontarla nel punto di mount creato precedentemente:
mount /dev/sdc1 /mnt/usb/Copiare tutti i files dell’immagine ISO nella Pen Drive:
cp -r /mnt/iso/* /mnt/usb/Copiare il contenuto della directory /boot/i386/loader/ nella penna usb:
cp -r /mnt/iso/boot/i386/loader/* /mnt/usb/Rinominare il file isolinux.cfg in syslinux.cfg:
mv /mnt/usb/isolinux.cfg /mnt/usb/syslinux.cfgE’ arrivato il momento di copiare il file initrdud, oggetto delle modifiche precedenti, all’interno del dispositivo USB:
cp ../initrdud /mnt/usb/Editare il file syslinux.cfg:
kwrite /mnt/usb/syslinux.cfgPer mettere in condizione il sistema di avviarsi facendo riferimento al file initrdud occorre modificare la riga:
append initrd=initrd ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent showoptsin
append initrd=initrdud kiwidebug=1 ramdisk_size=512000 ramdisk_blocksize=4096 splash=silent showoptsSmontare il dispositivo USB:
umount /mnt/usbE’ tempo di verifiche; se tutto il procedimento descritto è stato seguito correttamente saremo finalmente in grado di equipaggiare il nostro netbook con la versione 11.0 di openSUSE.
Questo articolo non è tutta farina del mio sacco, ma visto e considerato che l’articolo originale da per scontato molti passaggi ho deciso di svilupparla e renderla più semplice. Spero di essere riuscito nell’intento.
Author: Crismon