Installare OpenFiler 2.3 su una chiavetta USB

Postato il Aggiornato il

openfiler_usbCome avevo preannunciato nei post precedenti su Openfiler, spiegherò passo passo come installare  openfiler su una chiavetta usb che minimo deve essere di 2GB (capirai 10€ di spesa!!).
Innanzitutto perchè installarlo su una chiavetta?
Se come me avete un server con un controller raid che gestisce solo 2 dischi in raid 1, e volete tener separato il volume di storage con quello dell’installazione del so di openfiler la soluzione non proprio ideale ma funzionale è appunto installare openfiler su chiavetta usb.
Infatti sul sito di openfiler vi è la possibilità di acquistare per 175€ un Plug n’ Play Openfiler Disk on Module, ovvero una flash memory card da 2GB con interfaccia sata da inserire direttamente sulla motherbord, con openfiler già installato.
La filosofia è la stessa della chiavetta usb ma meno economica.
Questa procedura è un po macchinosa perché bisogna forzare openfiler a  partire dal volume usb e occorre quindi modificare il demone initrd (che si occupa del boot) inserendo i moduli per l’usb.
Prima di tutto è necessario sincerarsi che il proprio pc/server permetta il boot da usb.
Dopodiché  inserire la chiavetta usb e scollegare/disabilitare  il volume destinato allo storage in modo tale che non venga visto da openfiler durante l’installazione.
Procuratevi poi una distribuzione live linux per fixxare grub in modo da  modificare il boot del sistema da usb key (io ho usato supergrubdisk).
Fate il boot dal solito lettore cd/dvd contente il disco d’installazione di openfiler.

openfiler01

Alla 1a schermata d’installazione digitate “linux expert” poi invio.
Seguire le stesse indicazioni di installazione del post “Openfiler parte 2a” con la differenza di non creare una partizione di swap, perchè la scrittura su usb è piuttosto lenta, e di utilizzare come filesystem per la partizione di boot e root ext2 perchè non ext2 è journal e quindi così non scrive continuamente sulla chiavetta.Date quindi 100MB alla partizione di boot e il restante alla root.
Prendetevela comoda perché l’installazione sulla chiavetta è davvero lentissima!
Una volta completata l’installazione effettuate il riavvio del sistema senza togliere il disco d’installazione di openfiler perché ancora ci serve.
Arrivati di nuovo alla schermata di installazione scrivete “linux rescue” e invio.
Alla schermata del prompt fare il mounting della chiavetta usb (fdisk -l vi aiuterà a individuare il volume).
Nel mio caso l’usb era /dev /sdj1
digitate i seguenti comandi:

mount /dev/sdj1 /mnt/source
chroot /mnt/source

Bene ora avete montato la partizione usb come se fosse di sistema.
Ora dobbiamo copiare initrd  in una directory temporanea (sempre sulla chiavetta) e decomprimerlo per editarlo e modificarlo quindi:

cp /boot/initrd-2.X.X.X.img /tmp/initrd.gz     –>copiamo il file init
gunzip /tmp/initrd.gz                                                  –>lo zippiamo
mkdir /tmp/a                                                                  –>creiamo una directory temporanea chiamata “a”
cpio -i < /tmp/initrd                                                    –>ripristinare l’archivio

ora editiamo il file init, che contiene i moduli del kernel che vengono richiesti durante la fase di boot:

vi init

individuate la seguente riga:

/lib/sd_mod.ko

sotto aggiungete i seguenti righe (aggiungiamo i moduli del kernel per il boot da usb):

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

Salvate il file e chiudetelo.
Ora dobbiamo copiare fisicamente i moduli del kernel nella directory temporanea:

cd /lib/modules/(inserite il kernel digitando il tab)/kernel/drivers
cp usb/storage/usb-storage.ko /tmp/a/lib
cp /usb/host/ehci-hcd.ko /tmp/a/lib
cp /usb/host/uhci-hcd.ko /tmp/a/lib
cp scsi/sr_mod.ko /tmp/a/lib
cd /tmp/a
find . | cpio -c -o | gzip -9 > /boot/usbinitrd.img    —> ricostruisce l’archivio initrd con le           modifiche apportate nominadolo usbinitrd.img.

Bene il più è stato fatto.
Ora però occorre sistemare il file di configurazione di Grub (/boot/grub/grub.conf) ovvero modificare il nome immagine initrd con usbinitrd.img.
Io ho utilizzato il supergrubdisk (anche per la curiosità di provarlo) in modo che carichi dal volume giusto nel mio caso sdj1 poi ripeto editate il file grub.conf e modificate il nome dell’immagine .img.
Fate il reboot del sistema e voilà avete openfiler funzionante e bootable da usb…comodo no??!!!
Purtroppo questa procedura va ripetuta ogni qualvolta un aggiornamento di Openfiler implica cambiamenti nel kernel.

It’s all and happy installation!🙂

11 pensieri riguardo “Installare OpenFiler 2.3 su una chiavetta USB

    jjaa ha detto:
    02/02/2010 alle 09:59

    “Alla schermata del prompt fare il mounting della chiavetta usb (fdisk -l vi aiuterà a individuare il volume).”
    A me qui appare una schermata blu… con scritto “Una volta terminato, uscire dalla shell. Il sistema si riavvierà.” e non riesco a vedere niente, se digito i comandi e premo invio un po’ di volte, dopo appaiano, ma non riesco a montare la usb.
    il prompt mi appare così: -/bin/sh-3.00#

    HELP!
    (sono newbie)
    grazie

      Ivan Zini ha risposto:
      03/02/2010 alle 13:28

      Ciao
      La schermata blu è normale (non siamo in windows😉 !!!) con il relativo avviso.
      una volta apparso il prompt non riesci a digitare nessuna lettera?

    Filippo Battaglini ha detto:
    28/02/2010 alle 23:12

    Ciao, innanzi tutto grazie per questi tuoi ottimi consigli, sono un appassionato ma molto molto inesperto, ho apprezzato i numerosi vantaggi di openfiler rispetto al freenas che ho usato fino ad oggi, soprattutto per la gestione dei permessi sulle condivisioni tramite il ldap integrato.
    Una cosa che però mi manca è la possibilità di disattivare i dischi inutilizzati per risparmiare energia.
    ora mi chiedo….. manca davvero o sono io che non l’ho trovata??
    Grazie per le vostre risposte….

      Ivan Zini ha risposto:
      01/03/2010 alle 11:27

      Ciao Filippo
      non credo esista la possibilità da interfaccia grafica di disattivare un volume.
      Se qualcuno conosce un comando lo posti…grazie🙂
      IZ

    Vanni Zatta ha detto:
    21/07/2010 alle 15:17

    Grazie per questa guida!! spero di poter risolvere un pò di problemi che ho con openfiler…
    C’è una cosa che non risco proprio a capire. Nella guida dici “Date quindi 100MB alla partizione di boot e il restante alla root.” Quindi boot e root sono in due partizioni distinte.
    A questo punto se faccio il mount di una e poi chroot non vedo l’altra partizione…
    Dove ho sbagliato o cosa non ho capito?
    Ho aggirato l’ostacolo facendo il mount di root in /mnt/source e poi il mount di boot sotto /mnt/source/boot. facendo poi chroot vedo il tutto….
    ciao, Vanni

    vincenzo ha detto:
    23/01/2011 alle 11:37

    Ivan, cortesemente puoi postare il print screen del file grub finale…non riesco a darne fuori

      Ivan Zini ha risposto:
      23/01/2011 alle 21:06

      Ciao Vincenzo
      non posso postare più il print screen perchè non ho più adotatto openfiler su chiavetta ma l’ho installato su un volume in raid.
      hai provato a sostituire in nome immagine in grub?
      ovvero:
      cd /boot/grub
      vi grub.conf

      e sostituisci il file .img con usbinitrd.img

      IZ

        vincenzo ha detto:
        25/01/2011 alle 11:16

        Grazie Ivan, stasera riprovo ma ricordo che anche editanto il grub andava in kernel panic…ti saprò dire

          vincenzo ha detto:
          25/01/2011 alle 15:33

          niente non va ! ho il dubbio che si crea male il file usbinitrd.img non è che potresti spedirmelo via mail

    […] di Openfiler 2.99, su una chiavetta usb risulta molto più semplice,  rispetto alla versione 2.3 (vedi post relativo), in quanto i driver Usb vengono caricati prima  durante il processo di boot. Consiglio di […]

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...