Installare openfiler su una penna usb

Ciao, questa è la prima volta che visiti questo blog. Se trovi i contenuti interessanti puoi condividerli, tramite l'uso dei pulsanti che vedi in fondo all'articolo, coi tuoi amici via twitter o facebook, oppure votare l'articolo su wikio. Se vuoi puoi restare sempre aggiornato sugli ultimi articoli via RSS Feed, Twitter, Facebook o Newsletter. Grazie del passaggio :)

Installare openfiler su una penna usb

Col tutorial di oggi vediamo come installare openfiler su una penna usb ed effettuare il boot da quella perfierica.

Con l’occasione vedremo anche un applicazione pratica del chroot, comando spiegato in maniera molto esaustiva dal nerd Bl@ster

Ma cusa l’è sto openfiler (letto “openfiler” come si scrive, da buon nonnetto milanese)

Verrebbe da domandarsi a questo punto “ma cosa cazzo è sto openfiler??” oppure “si ma a me non me ne fotte una minchia di sto openfiler”.

Se siete tra i primi continuate a leggere, se ahimè fate parte della seconda schiera premete pure alt+f4 e dirigetevi verso la porta di la :D —>

Openfiler è una distribuzione lunix basata su Fedora concepita e realizzata ad uso NAS/SAN. La differenza tra i due, nella definizione, sta nel mezzo in quanto la nas viaggia su tcp/ip e quindi su cavo ethernet, la san invece viaggia su fibre channel. Nella pratica invece quando mi viene chiesto qual’è la differenza tra i due io dico “dipende da quanto figo può essere per te usare NAS o SAN”.

Mi spiego, se vogliamo fare uno storage di dischi useremo il protocollo iSCSI, questo protocollo potrebbe essere NAS perchè effettivamente viaggia su tcp/ip, però potrebbe essere anche SAN perchè può viaggiare anche su fibre channel; quindi la sostanza del discorso è: se tu devi intortare un discorso ad un cliente dicendo che usi una tecnologia avanzata come il fibre channel allora è SAN, se invece vuoi vendere al cliente una tecnologia a basso costo ma veloce ed affidabile allora è NAS :P

Openfiler è tutto questo, è una distribuzione che ci consente di gestire un array di dischi (ma anche un solo disco sfigatissimo) per creare dalle più semplici condivisioni samba fino alle risorse di rete iSCSI.

Perchè Openfiler e perchè su USB?

Prima di tutto perchè è open source e quindi gratuito, secondariamente perchè le soluzioni come openfiler/freenas, ci consentono di fare le stesse identiche cose di un array di dischi da 30.000 euro riesumando vecchi pc/server destinati ad essere ferraglia da macello.

Su usb perchè l’obiettivo del tutorial è tenere separate le partizioni del sistema operativo dalle partizioni per i dati da condividere per svariati motivi:

  1. Sicurezza: Se si auto annichilisce la tabella delle partizioni del sistema operativo tengo salva quella dei dati e viceversa
  2. Prestazioni: Sebbene l’accesso usb sia lento (ma neanche tanto) sono sicuro che il 100% delle risorse hardware dei dischi sono dedicate ai dati.
  3. Spazio: Non devo sacrificare una piccola porzione di ogni disco per installarci il sistema operativo e quindi ho il 100% di spazio disponibile dell’array come utilizzabile.

L’ideale sarebbe poter installare Openfiler su una scheda di memoria da poter installare nel lettore interno del server, nel mio caso purtroppo non è stato possibile in quanto l’ho dovuto installare su un Dell PowerEdge 2850 serie “Anteguerra” che è già tanto se ha 4 porte USB (però ha anche il floppy eheh).

Proceda dottore!

Vediamo quindi come installare OF su questa benedetta pennetta usb;

Prima di tutto assicuriamoci di poter effettuare il boot da usb secondo il volere del nostro bios, in caso contrario potete benissimo seguire la seconda schiera di persone menzionata ad inizio articolo.

Soddisfatto questo primo requisito assicuriamoci di disattivare tutti i dischi rigidi presenti sulla macchina, se come me avete tra le mani una macchina con controller RAID Hardware è sufficiente sfilare tutti i dischi e riavviare la macchina.

Impostiamo il boot in modo che esegua PRIMA il cd e POI la porta USB;

Con il cd inserito riavviamo il server ed al prompt del boot digitiamo “expert” (per la modalità testuale digitiamo “expert text“.)

Scegliamo di configurare le partizioni manualmente con Disk Druid, io ho usato un unica partizione per la root “/”, in giro ho trovato anche chi ha settato una partizione per lo swap ed una per il boot, ma ritengo che su una penna usb la partizione di boot sia alquanto inutile, inoltre openfiler è parecchio leggero e già con 2GB di ram la partizione di swap si rende altrettanto inutile.

A fine installazione l’intero sistema occupa circa 600MB di spazio quindi una penna con un paio di giga dovrebbe essere sufficiente, io ho usato una da 4GB perchè quella avevo :D

Continuate con gli step normalmente ed iniziate l’installazione;

Prendetevi un paio di caffè perchè l’installazione su USB è parecchio lunga, a fine installazione eseguite come richiesto il reboot.

NON togliete il cd dal drive perchè se lasciate il sistema cosi com’è otterrete un bel kernel panic al boot in quanto dentro l’immagine initrd non sono presenti i moduli usb.

Fix!Fix!Fix!Fix!Fix!

Per far questo rientriamo nel boot da CD ed al prompt digitiamo “linux rescue” per ottenere una shell di salvataggio, qui entra in gioco il prode chroot.

Montiamo la penna usb


:~# mount /dev/sda1 /mnt/source
:~# chroot /mnt/source

ed iniziamo ad editare la configurazione di initrd:

:~# cp /boot/initrd*img /tmp/initrd.gz
:~# gunzip /tmp/initrd.gz
:~# mkdir /tmp/a
:~# cd /tmp/a
:~# cpio -i < /tmp/initrd
:~# vi init

…cerchiamo la stringa che contiene “insmod /lib/sd_mod.ko” ed inseriamo subito sotto:


insmod /lib/sr_mod.ko
insmod /lib/ehci-hcd.ko
insmod /lib/uhci-hcd.ko
sleep 5
insmod /lib/usb-storage.ko
sleep8

…salviamo a chiudiamo il file…


:~# cd /lib/modules/`uname -r`/kernel/drivers
:~# cp usb/storage/usb-storage.o /tmp/a/lib
:~# cp usb/host/ehci-hcd.ko /tmp/a/lib
:~# cp usb/host/uhci-hcd.ko /tmp/a/lib
:~# cd /tmp/a
:~# find . | cpio -c -o | gzip -9 > /boot/usbinitrd.img

…ed aggiustiamo il file /boot/grub/grub.conf per fargli caricare l’immagine initrd corretta. Questa procedura si dovrebbe ripetere ad ogni aggiornamento del kernel, ma come il buon Murhpy insegna: “se un sistema funziona non cambiarlo ne modificarlo, e non ti darà mai un problema.

Adesso abbiamo finito un bel reboot del sistema, questa volta col cd espulso, ed il sistema verrà caricato dalla penna usb. Durante la fase di boot ottengo un pò di errori circa il modulo sr_mod non trovato, ma fino  adesso non ho assistito a combustioni spontanee della macchina quindi ho deciso che posso pure fottermene di quegli errori, il boot procede a meraviglia. SE a voi da cosi tanto fastidio ricevere quegli errori potete eliminare la stringa relativa dal file di init, ma non so se questo può comportare qualcosa.

A lil’ bit of tuning

Siccome le usb notoriamente non brillano in velocità, un pò di sano tuning non fa mai male giusto per dare una bottarella alle prestazioni, e cosi leggendo un pò di qua ed un pò di la ho capito che è consigliabile spostare /tmp e /var/tmp su filesystem tmpfs e quindi montarle direttamente in RAM. Ho inserito quindi queste due stringhe in /etc/fstab:

tmpfs /tmp tmpfs defaults,noatime 0 0
tmpfs /var/tmp tmpfs defaults,noatime 0 0

Fine!, un ultimo reboot oppure un “mount -a -o remount” e siamo a posto, godetevi il vostro openfiler lavorare da usb.

M0rF3uS


Altri articoli che potrebbero interessarti

Plymouth sbarca su Ubuntu Vi ricordate di , il boot manager introdotto in Fedora 10, che promette prestazioni migliori in fase...
MontaVista promuove un boot in meno di un secondo. ...tale sistema operativo sarebbe capace di avviarsi e rendersi pienamente funzionale in meno di 1,5...
La maledizione del “Chicco Nero” Ammettetelo infidi bastardi le storielle vi mancavano, ecco perchè sto bestemmiando da 3 giorni è per...
Come installare più Ubuntu sullo stesso pc Chi è solito smanettare non poco, sicuramente avrà più sistemi installati sul proprio pc...partiamo...
Nasce il nuovo protocollo PPPoP Questo nuovo protocollo si riferisce sempre a connessioni di tipo punto-punto ma come mezzo di trasporto...

About the Author

M0rF3uS al secolo Alex è un ggiovine 25enne appassionato di informatica e linux. Lavora come Network and System Administrator e nel tempo libero gioca un pò con la sua fotocamera (Canon EOS 1000D) riuscendo a volte, per sbaglio, a fare qualche scatto decente. Completano il corredo, degli hobbies "vorrei ma non posso" ossia l'astronomia e l'astronautica....si è uno di quelli che da grande vorrebbe fare l'astronauta (povero coglione vero?).