SheevaPlug: differenze tra le versioni
(→Introduzione: al momento solo primo modello) |
m (versioni compatibili - rimosse ultime versioni) |
||
(22 versioni intermedie di 3 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili| | {{Versioni compatibili|Jessie}} | ||
== Introduzione == | == Introduzione == | ||
Questa guida illustra come installare Debian sullo [http://www.openplug.org/ SheevaPlug], primo modello. Per gli altri modelli, far riferimento alla documentazione indicata tra le [[SheevaPlug#Fonti|fonti]]. | Questa guida illustra come installare Debian sullo [http://www.openplug.org/ SheevaPlug], primo modello. Per gli altri modelli, far riferimento alla documentazione indicata tra le [[SheevaPlug#Fonti|fonti]]. | ||
Un grazie sentito a Martin Michlmayr, sul cui lavoro si basa gran parte di questa guida. | Un grazie sentito a Martin Michlmayr, sul cui lavoro si basa gran parte di questa guida. | ||
== Preparazione == | |||
=== Memoria SD === | |||
Se si intende effettuare l'installazione su SD, è consigliabile spianare completamente la memoria da un pc, eliminando qualsiasi partizione preesistente su di essa, ad esempio con | |||
<pre> | |||
# gparted /dev/mmcblk0 | |||
</pre> | |||
Nonostante la tabella delle partizioni sia appena stata ripulita può succedere che i vecchi dati facciano andare in errore il bootloader al momento dell'avvio. | |||
È allora possibile azzerare veramente la tabella delle partizione con dd | |||
<pre> | |||
# dd if=/dev/zero of=/dev/mmcblk0 bs=1M count=10 | |||
</pre> | |||
Con questo comando si scrivono i primi 10MB della scheda con degli 0. Questo è più che abbondante per cancellare la tabella delle partizioni e l'inizio della prima partizione. | |||
=== Server TFTP === | |||
Nella maggior parte dei casi non è strettamente indispensabile, ma è comodo. | |||
Per averne uno a disposizione, da una macchina Debian è sufficiente installarlo con <code>aptitude install tftpd-hpa</code>. Se lasciamo invariate le impostazioni, la directory root del nostro server TFTP sarà <code>/srv/tftp</code>. | |||
== Prima accessione == | == Prima accessione == | ||
Riga 27: | Riga 45: | ||
== Aggiornare U-Boot == | == Aggiornare U-Boot == | ||
Una volta impostata correttamente l'ora, occorre | Una volta impostata correttamente l'ora, occorre aggiornare U-Boot; sulla macchina probabilmente si troverà una vecchia versione modificata da Marvell per far funzionare U-Boot con il loro dispositivo, che però non permette l'installazione di Debian. Le versioni recenti di U-Boot includono già il lavoro fatto a suo tempo da Marvell, oltre a numerose migliorie e correzioni di bug che tornano utili al nostro scopo. | ||
Per verificare quale versione è attualmente installata, bisogna accedere allo SheevaPlug tramite la sua interfaccia seriale disponibile sulla porta ''' | 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. | Verrà qui spiegato come farlo sfruttando un PC debianizzato. Per altri sistemi operativi, fare riferimento alla documentazione ufficiale presente sui siti citati in basso. | ||
Riga 37: | Riga 55: | ||
</pre> | </pre> | ||
Alimentare lo SheevaPlug e collegare allo SheevaPlug e al PC il cavetto | 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: | ||
<pre> | <pre> | ||
$ lsusb | $ lsusb | ||
Riga 45: | Riga 63: | ||
Il kernel dovrebbe aver assegnato il dispositivo, nel caso non ci siano altri dispositivi USB attaccati al PC, al file <code>/dev/ttyUSB0</code>; è possibile verificarlo spulciando tra le ultime righe del file <code>/var/log/syslog</code>. A questo punto è possibile trasformare il monitor del nostro PC nel... monitor dello SheevaPlug: | Il kernel dovrebbe aver assegnato il dispositivo, nel caso non ci siano altri dispositivi USB attaccati al PC, al file <code>/dev/ttyUSB0</code>; è possibile verificarlo spulciando tra le ultime righe del file <code>/var/log/syslog</code>. A questo punto è possibile trasformare il monitor del nostro PC nel... monitor dello SheevaPlug: | ||
<pre> | <pre> | ||
# screen /dev/ttyUSB0 115200 | |||
</pre> | </pre> | ||
Riga 72: | Riga 90: | ||
</pre> | </pre> | ||
Come si può vedere, si tratta di una versione Marvell. | |||
In questo caso, come precedentemente spiegato, occorre passare ad una versione successiva. Questa operazione sarebbe teoricamente 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 | In questo caso, come precedentemente spiegato, occorre passare ad una versione successiva e ufficiale (almeno la 2011.12-3). Questa operazione sarebbe teoricamente 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 [http:// | Se si parte da una versione Marvell, occorre appuntarsi il MAC address del dispositivo col comando seguente (altrimenti verrà spianato e perso per sempre): | ||
<pre> | |||
Marvell>> print ethaddr | |||
</pre> | |||
Scaricare quindi [http://people.debian.org/~tbm/u-boot/2011.12-3/sheevaplug/u-boot.kwb i binari] e, se necessario, rinominare il file in <code>u-boot.kwb</code>. Ora ci sono due strade possibili: | |||
#sfruttare un server TFTP | #sfruttare un server TFTP | ||
#copiare U-Boot su una chiavetta USB e installarlo da essa. | #copiare U-Boot su una chiavetta USB e installarlo da essa. | ||
Se si dispone di un server TFTP, basta spostarvici <code>u-boot.kwb</code> e dalla console di U-Boot inserire questi comandi: | |||
<pre> | |||
setenv serverip 192.168.X.Y | |||
setenv ipaddr 192.168.X.200 | |||
tftpboot 0x0800000 u-boot.kwb | |||
nand erase 0x0 0x60000 | |||
nand write 0x0800000 0x0 0x60000 | |||
</pre> | |||
sostituendo ovviamente 192.168.X.Y con l'IP del server. | |||
Altrimenti è 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: | |||
<pre> | <pre> | ||
usb start | usb start | ||
fatload usb 0:1 0x0800000 | fatload usb 0:1 0x0800000 u-boot.kwb | ||
nand erase 0x0 | nand erase 0x0 0x60000 | ||
nand write 0x0800000 0x0 | nand write 0x0800000 0x0 0x60000 | ||
</pre> | |||
Riavviare: | |||
<pre> | |||
reset | reset | ||
</pre> | </pre> | ||
Se si partiva da una versione Marvell, occorre ora impostare nuovamente il MAC address, sostituendo l'indirizzo di esempio con quello precedentemente appuntato: | |||
<pre> | |||
setenv ethaddr 00:50:43:01:c0:ab | |||
saveenv | |||
reset | |||
</pre> | |||
== Installare | Verificare che sia tutto a posto: | ||
<pre> | |||
Marvell>> version | |||
U-Boot 2011.12 (Mar 11 2012 - 18:59:46) | |||
</pre> | |||
Infine per uscire da Screen occorre premere <code>Ctrl-a</code> seguito da <code>k</code>. | |||
== Installare Debian == | |||
Abbiamo la possibilità di installare il sistema operativo su diversi dispositivi: | Abbiamo la possibilità di installare il sistema operativo su diversi dispositivi: | ||
* scheda SD | * scheda SD | ||
* chiavetta USB | * chiavetta USB | ||
* disco esterno USB | * disco esterno USB | ||
Le chiavette USB non danno problemi, mentre U-Boot ha molto spesso difficoltà ad avviare da disco rigido esterno USB. Se si vuole installare il sistema su disco esterno, la soluzione più semplice è di lasciare la directory <code>/boot</code> su SD, e tutto il resto del sistema su disco esterno. In questo caso è ovviamente necessario eseguire l'installazione da rete, peraltro sempre consigliabile essendo molto semplice e comoda. | |||
Al momento non è possibile installare Debian sulla memoria flash interna. | Al momento non è possibile installare Debian sulla memoria flash interna. | ||
=== Far partire l'installer === | === Far partire l'installer === | ||
Scarichiamo da uno dei mirror del debian-installer ufficiale, in questo caso per la versione in | Scarichiamo da uno dei mirror del debian-installer ufficiale, in questo caso per la versione in stabile, [ftp://ftp.debian.org/debian/dists/stable/main/installer-armel/current/images/kirkwood/netboot/marvell/sheevaplug/uImage uImage] e [ftp://ftp.debian.org/debian/dists/stable/main/installer-armel/current/images/kirkwood/netboot/marvell/sheevaplug/uInitrd uInitrd]. Se contiamo di installare Debian su SD, copiamo questi file sulla stessa chiavetta che abbiamo già usato; viceversa, se vogliamo installare Debian su un dispositivo USB, copiamo i file su una scheda SD. Come terza, sempre valida e consigliabile alternativa, mettiamoli su un server TFTP. | ||
Inseriamo i due dispositivi (quello che contiene l'installer e quello su cui avverrà l'installazione) nello SheevaPlug; entriamo nella console di U-Boot come spiegato precedentemente e digitiamo questo: | Inseriamo i due dispositivi (quello che contiene l'installer e quello su cui avverrà l'installazione) nello SheevaPlug; entriamo nella console di U-Boot come spiegato precedentemente e digitiamo questo: | ||
Riga 137: | Riga 178: | ||
ext2load mmc 0:1 0x01100000 /uInitrd | ext2load mmc 0:1 0x01100000 /uInitrd | ||
</pre> | </pre> | ||
Infine, se si trova sul server TFTP: | |||
<pre> | |||
setenv serverip 192.168.X.Y | |||
setenv ipaddr 192.168.X.147 | |||
tftpboot 0x00800000 uImage | |||
tftpboot 0x01100000 uInitrd | |||
</pre> | |||
sostituendo ovviamente 192.168.X.Y con l'IP del server. | |||
Ora è possibile avviare l'installer: | Ora è possibile avviare l'installer: | ||
Riga 147: | Riga 197: | ||
=== Configurare U-Boot === | === Configurare U-Boot === | ||
Finita l'installazione illustrata precedentemente, rimane solo da configurare U-Boot in modo che lanci in automatico la nostra Debian. Per far questo, se installata su SD, bisogna inserire questi comandi nella console di U-Boot: | Finita l'installazione illustrata precedentemente, rimane solo da configurare U-Boot in modo che lanci in automatico la nostra Debian. Per far questo, se la directory <code>/boot</code> è installata su SD, bisogna inserire questi comandi nella console di U-Boot: | ||
<pre> | <pre> | ||
setenv bootargs_console console=ttyS0,115200 | setenv bootargs_console console=ttyS0,115200 | ||
setenv bootcmd_mmc ' | setenv bootcmd_mmc 'mmc init; ext2load mmc 0:1 0x00800000 /uImage; ext2load mmc 0:1 0x01100000 /uInitrd' | ||
setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_mmc; bootm 0x00800000 0x01100000' | setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_mmc; bootm 0x00800000 0x01100000' | ||
saveenv | saveenv | ||
Riga 163: | Riga 213: | ||
saveenv | saveenv | ||
</pre> | </pre> | ||
== Conclusioni == | == Conclusioni == | ||
Riga 212: | Riga 219: | ||
== Fonti == | == Fonti == | ||
*http://www.cyrius.com/debian/kirkwood/sheevaplug/install.html | *http://www.cyrius.com/debian/kirkwood/sheevaplug/install.html | ||
*http://www. | *http://www.plugcomputer.org/Documentation/howtos/new-plugger-how-to/ | ||
*http:// | *http://www.debianizzati.org/blog/2009/10/19/sheevaplug-finalmente-supportato-dal-debian-installer | ||
{{Autori | |||
|Autore = [[Utente:Stemby|Stemby]] | |||
}} | |||
[[Categoria:Server]] | [[Categoria:Server]] | ||
[[Categoria:Installazione]] |
Versione attuale delle 10:31, 28 set 2019
Attenzione. Questa guida è da considerarsi abbandonata, per via del tempo trascorso dall'ultima verifica.
Potrà essere resa obsoleta, previa segnalazione sul forum, se nessuno si propone per l'adozione. |
Versioni Compatibili Debian 8 "jessie" |
Introduzione
Questa guida illustra come installare Debian sullo SheevaPlug, primo modello. Per gli altri modelli, far riferimento alla documentazione indicata tra le fonti.
Un grazie sentito a Martin Michlmayr, sul cui lavoro si basa gran parte di questa guida.
Preparazione
Memoria SD
Se si intende effettuare l'installazione su SD, è consigliabile spianare completamente la memoria da un pc, eliminando qualsiasi partizione preesistente su di essa, ad esempio con
# gparted /dev/mmcblk0
Nonostante la tabella delle partizioni sia appena stata ripulita può succedere che i vecchi dati facciano andare in errore il bootloader al momento dell'avvio. È allora possibile azzerare veramente la tabella delle partizione con dd
# dd if=/dev/zero of=/dev/mmcblk0 bs=1M count=10
Con questo comando si scrivono i primi 10MB della scheda con degli 0. Questo è più che abbondante per cancellare la tabella delle partizioni e l'inizio della prima partizione.
Server TFTP
Nella maggior parte dei casi non è strettamente indispensabile, ma è comodo.
Per averne uno a disposizione, da una macchina Debian è sufficiente installarlo con aptitude install tftpd-hpa
. Se lasciamo invariate le impostazioni, la directory root del nostro server TFTP sarà /srv/tftp
.
Prima accessione
Attualmente la macchina viene fornita con Ubuntu 9.04 preinstallato sulla memoria flash.
- 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).
Aggiornare U-Boot
Una volta impostata correttamente l'ora, occorre aggiornare U-Boot; sulla macchina probabilmente si troverà una vecchia versione modificata da Marvell per far funzionare U-Boot con il loro dispositivo, che però non permette l'installazione di Debian. Le versioni recenti di U-Boot includono già il lavoro fatto a suo tempo da Marvell, oltre a numerose migliorie e correzioni di bug che tornano utili al nostro scopo.
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 SheevaPlug 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 avviare 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
Come si può vedere, si tratta di una versione Marvell.
In questo caso, come precedentemente spiegato, occorre passare ad una versione successiva e ufficiale (almeno la 2011.12-3). Questa operazione sarebbe teoricamente 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.
Se si parte da una versione Marvell, occorre appuntarsi il MAC address del dispositivo col comando seguente (altrimenti verrà spianato e perso per sempre):
Marvell>> print ethaddr
Scaricare quindi i binari e, se necessario, rinominare il file in u-boot.kwb
. Ora ci sono due strade possibili:
- sfruttare un server TFTP
- copiare U-Boot su una chiavetta USB e installarlo da essa.
Se si dispone di un server TFTP, basta spostarvici u-boot.kwb
e dalla console di U-Boot inserire questi comandi:
setenv serverip 192.168.X.Y setenv ipaddr 192.168.X.200 tftpboot 0x0800000 u-boot.kwb nand erase 0x0 0x60000 nand write 0x0800000 0x0 0x60000
sostituendo ovviamente 192.168.X.Y con l'IP del server.
Altrimenti è 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 u-boot.kwb nand erase 0x0 0x60000 nand write 0x0800000 0x0 0x60000
Riavviare:
reset
Se si partiva da una versione Marvell, occorre ora impostare nuovamente il MAC address, sostituendo l'indirizzo di esempio con quello precedentemente appuntato:
setenv ethaddr 00:50:43:01:c0:ab saveenv reset
Verificare che sia tutto a posto:
Marvell>> version U-Boot 2011.12 (Mar 11 2012 - 18:59:46)
Infine per uscire da Screen occorre premere Ctrl-a
seguito da k
.
Installare Debian
Abbiamo la possibilità di installare il sistema operativo su diversi dispositivi:
- scheda SD
- chiavetta USB
- disco esterno USB
Le chiavette USB non danno problemi, mentre U-Boot ha molto spesso difficoltà ad avviare da disco rigido esterno USB. Se si vuole installare il sistema su disco esterno, la soluzione più semplice è di lasciare la directory /boot
su SD, e tutto il resto del sistema su disco esterno. In questo caso è ovviamente necessario eseguire l'installazione da rete, peraltro sempre consigliabile essendo molto semplice e comoda.
Al momento non è possibile installare Debian sulla memoria flash interna.
Far partire l'installer
Scarichiamo da uno dei mirror del debian-installer ufficiale, in questo caso per la versione in stabile, uImage e uInitrd. Se contiamo di installare Debian su SD, copiamo questi file sulla stessa chiavetta che abbiamo già usato; viceversa, se vogliamo installare Debian su un dispositivo USB, copiamo i file su una scheda SD. Come terza, sempre valida e consigliabile alternativa, mettiamoli su un server TFTP.
Inseriamo i due dispositivi (quello che contiene l'installer e quello su cui avverrà l'installazione) nello SheevaPlug; entriamo nella console di U-Boot come spiegato precedentemente e digitiamo questo:
setenv mainlineLinux yes setenv arcNumber 2097 saveenv reset
Lo SheevaPlug è così configurato in modo da poter eseguire il kernel usato da Debian.
Digitiamo nella solita console, se l'installer si trova su USB:
usb start fatload usb 0:1 0x00800000 /uImage fatload usb 0:1 0x01100000 /uInitrd
Altrimenti, se si trova su una SD formattata ext2 o ext3:
mmcinit ext2load mmc 0:1 0x00800000 /uImage ext2load mmc 0:1 0x01100000 /uInitrd
Infine, se si trova sul server TFTP:
setenv serverip 192.168.X.Y setenv ipaddr 192.168.X.147 tftpboot 0x00800000 uImage tftpboot 0x01100000 uInitrd
sostituendo ovviamente 192.168.X.Y con l'IP del server.
Ora è possibile avviare l'installer:
setenv bootargs console=ttyS0,115200n8 base-installer/initramfs-tools/driver-policy=most bootm 0x00800000 0x01100000
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 avviabile (circa 150 MB) formattata come ext2 con mount point /boot
.
Configurare U-Boot
Finita l'installazione illustrata precedentemente, rimane solo da configurare U-Boot in modo che lanci in automatico la nostra Debian. Per far questo, se la directory /boot
è installata su SD, bisogna inserire questi comandi nella console di U-Boot:
setenv bootargs_console console=ttyS0,115200 setenv bootcmd_mmc 'mmc init; ext2load mmc 0:1 0x00800000 /uImage; ext2load mmc 0:1 0x01100000 /uInitrd' setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_mmc; bootm 0x00800000 0x01100000' saveenv run bootcmd
Se invece è installata su dispositivo USB:
setenv bootargs_console console=ttyS0,115200 setenv bootcmd_usb 'usb start; ext2load usb 0:1 0x00800000 /uImage; ext2load usb 0:1 0x01100000 /uInitrd' setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_usb; bootm 0x00800000 0x01100000' saveenv
Conclusioni
Abbiamo ora a disposizione una Debian in tutto e per tutto: divertitevi!
Fonti
- http://www.cyrius.com/debian/kirkwood/sheevaplug/install.html
- http://www.plugcomputer.org/Documentation/howtos/new-plugger-how-to/
- http://www.debianizzati.org/blog/2009/10/19/sheevaplug-finalmente-supportato-dal-debian-installer
Guida scritta da: Stemby | Debianized 20% |
Estesa da: | |
Verificata da: | |
Verificare ed estendere la guida | Cos'è una guida Debianized |