SheevaPlug
Attenzione: questo articolo è ancora incompleto e in fase di scrittura da parte del suo autore.
Sentitevi liberi di contribuire, proponendo modifiche alla guida tramite l'apposita pagina di discussione, in modo da non interferire con il lavoro portato avanti sulla voce. Per altre informazioni si rimanda al template. |
Questa guida illustra come installare Debian sullo SheevaPlug.
Attualmente la macchina viene fornita con Ubuntu 9.04 preinstallato sulla memoria flash.
Prima accessione
- Collegare il plug ad un router con DHCP attivato;
- alimentarlo;
- attendere qualche minuto;
- da un pc in rete accedere via SSH:
$ ssh root@IP_SHEEVAPLUG
nosoup4u è la password predefinita; come prima cosa è vivamente consigliabile modificarla tramite il comando passwd.
A questo punto occorre impostare correttamente l'ora sull'orologio hardware. Per far questo basta semplicemente impostare il fuso orario locale, fasare l'orologio di sistema e copiare l'ora sull'orologio hardware. Ecco come:
# dpkg-reconfigure tzdata # date 0105215610 # hwclock -w
dove 0105215610 significa gennaio-5-21:56-2010 (ora locale).
Installare Squeeze su SD
Aggiornare U-Boot
Una volta impostata correttamente l'ora, occorre probabilmente aggiornare U-Boot che, per poter avviare il sistema da SD deve essere almeno alla versione Marvell 3.4.19. Le versioni successive sembra che abbiano alcuni problemi, quindi installeremo proprio questa versione.
Per verificare quale versione è attualmente installata, bisogna accedere allo SheevaPlug tramite la sua interfaccia seriale disponibile sulla porta mini USB.
Verrà qui spiegato come farlo sfruttando un PC debianizzato. Per altri sistemi operativi, fare riferimento alla documentazione ufficiale presente sui siti citati in basso.
# aptitude install screen
Alimentare lo SheevaPlug e collegare allo SheevaPlug e al PC il cavetto mini USB fornito in dotazione. Da un terminale verificare che il dispositivo sia stato visto:
$ lsusb Bus 001 Device 002: ID 9e88:9e8f
Il kernel dovrebbe aver assegnato il dispositivo, nel caso non ci siano altri dispositivi USB attaccati al PC, al file /dev/ttyUSB0; è possibile verificarlo spulciando tra le ultime righe del file /var/log/syslog. A questo punto è possibile trasformare il monitor del nostro PC nel... monitor dello SheevaPlug:
$ screen /dev/ttyUSB0 115200
Il terminale apparirà completamente vuoto, ma in realtà siamo già collegati allo ShivaPlug e sta già ricevendo tutti gli output a video provenienti da esso. Digitiamo quindi
root
seguito da <Invio> ed effettuiamo il login immettendo la password scelta precedentemente.
Riavviando l'apparecchio possiamo finalmente accedere ad U-Boot:
# reboot
Per accedere alla console di U-Boot basta premere un tasto qualsiasi entro 3 secondi dal momento in cui si presenta il conto alla rovescia (poco dopo l'avvio).
Qualche comando essenziale della console di U-Boot (il manuale completo è presente qui): help stampa a video tutti i comandi ammessi; help [comando] stampa il manuale del comando; per effettuare il boot digitare boot; reset per riavviare.
Il comando version ci fornirà la versione di U-Boot attualmente installata:
Marvell>> version U-Boot 1.1.4 (Mar 19 2009 - 16:06:59) Marvell version: 3.4.16
A noi interessa la versione Marvell (l'ultimo numero).
In questo caso, come precedentemente spiegato, per installare Debian su SD occorre passare ad una versione successiva. Questa operazione sarebbe piuttosto critica, nel senso che nel caso in cui l'installazione non vada a buon fine, l'apparecchio perde la sua capacità di avviarsi. Fortunatamente è possibile ripristinare la configurazione di fabbrica attraverso l'interfaccia JTAG messa a disposizione sempre sulla porta mini USB dello SheevaPlug.
Scaricare quindi i binari e rinominare il file in uboot.bin. Ora ci sono due strade possibili:
- sfruttare un server TFTP
- copiare U-Boot su una chiavetta USB e installarlo da essa
Non avendo a disposizione un server TFTP, seguo la seconda opzione. È sufficiente formattare la chiavetta come FAT, copiarci il file, inserire la chiavetta nella porta dello SheevaPlug, accedere alla console di U-Boot e digitare i seguenti comandi:
usb start fatload usb 0:1 0x0800000 uboot.bin nand erase 0x0 0xa0000 nand write 0x0800000 0x0 0xa0000 reset
Verificare che sia tutto a posto. Infine per uscire da Screen occorre premere Ctrl-a seguito da k.
Far partire l'installer
Inserire una memoria SD nello slot dello SheevaPlug.
Sulla stessa chiavetta che abbiamo già usato (in realtà si potrebbero usare anche altri tipi di dispositivo) copiamo i file uImage e uInitrd; inseriamo la chiavetta nello SheevaPlug, entriamo nella console di U-Boot spiegato precedentemente e digitiamo questi comandi:
setenv mainlineLinux yes setenv arcNumber 2097 saveenv reset
Il dispositivo è così configurato in modo da poter eseguire il kernel usato da Debian; ora è possibile avviare l'installer, digitando nella solita console:
usb start fatload usb 0:1 0x0800000 /uInitrd fatload usb 0:1 0x400000 /uImage setenv bootargs console=ttyS0,115200n8 base-installer/initramfs-tools/driver-policy=most bootm 0x400000 0x0800000
Alla prima finestra selezionare C se si vuole localizzare la distribuzione in Italiano. Da qui in avanti l'installazione procede come di consueto: l'unica particolarità da tenere presente è la creazione obbligatoria, in fase di partizionamento, di una piccola partizione (circa 150 MB) bootabile formattata come ext2 con mount point /boot.
Fonti
- http://www.cyrius.com/debian/kirkwood/sheevaplug/install.html
- http://www.openplug.org/plugwiki/index.php/New_Plugger_How_To
- http://blog.debianizzati.org/2009/10/19/sheevaplug-debian-installer/