Sheevaplug

De OpenWikiBSD
Aller à : navigation, rechercher

Description

Un petit boitier, gros comme un transfo qui se branche sur le secteur, sur le réseau et fait office de serveur headless; conso minimaliste (à mesurer au Wmètre)

Connexion

  • Ne pas perdre le câble USB, c'est un câble spécial pour se connecter ua port JTAG (mini USB) sur le côté.
  • Lancer minicom sur /dev/ttyUSB0 params 115200 8 N 1

Réparer un SheevaPlug

A la suite de vos expériences diverses, le machin refuse démarrer... On va bien le réinstaller tout propre :

  • Télécharger le nouvel installeur : ici
  • Détarrez et suivez la doc.
  • Attention les fichiers à modifier contenant l'@MAC du plug sont ./uboot/uboot-env/uboot-mmc-custom.txt et ./uboot/uboot-env/uboot-nand-custom.txt
  • Formatez une clé USB en VFAT et copiez dedans l'ensemble de l'arbo précédente.
  • Ajoutez en racine de la clé les fichiers suivants que vous trouverez dans cette même clé dasn ./installer :

initrd modules.tar.gz rootfs.tar.gz u uImage

  • Vérifiez que le fichier uboot/uboot.bin est en place sur la clé
  • 2jectez la clé
  • Quittez Minicom
  • Eventuellement sudo apt-get install libftdi1
  • Virez le test root dans runme.php, si Ubuntu User
  • Branchez le mini-USB et la clé USB, le tout sans HUB!
  • Lancez sudo php5 runme.php nand et 'laissez le tourner, même si vous arrivez à un segfault du script. Le machin redémarre tout seul!
  • j'insiste : Laissez le redémarrer et faites un coup de minicom pour voir quand il est prêt.

FAQ

[1]

Installer autre chose...Une Debian, for instance

[2]

En fait j'ai suivi ça

Je vous conseille fortement d'avoir un éditeur de teste ouvert dans lequel vous allez copier les commandes; à moins d'un gros coup de bol (ou d'une explication ici(présente, parfaitement claire...), vous risquez de refaire certaines d’entre elles, plusieurs fois.

Phase 1 Préparation

On y va :

  • Sauvegardez l'adresse MAC qui sera perdue
print ethaddr
  • Téléchargez les images ici ou
  • Connectez le Sheeva par minicom (et le câble JTAG-USB)
  • Redémarrez le sheeva et au boot appuyez sur une touche pour interrompre celui-ci.
  • Tapez version
    • Si vous avez une réponse du genre U-Boot 1.1.4 (Dec 27 2009 - 22:03:21) Marvell version: 3.4.27 contenant la chaîne Marvell, vous devez mettre à jour le firmware. Sinon, inutile, et passez directement à la suite.
  • Clé USB :
    • Si elle est en FAT, il faudra charger le noyau en utilisant fatload
    • Si elle est en ext2/3, il faudra charger le noyau en utilisant ext2load

TFTP

On va utiliser TFTP pour celà.

  • Récupérez le binaire UBoot et sauvez le dans l'arborescence du serveur TFTP sous le nom u-boot.kwb
sudo apt-get install atftpd
sudo mv u-boot.kwb /srv/tftp
sudo /etc/init.d/atftpd restart
  • Revenez au prompt du Sheeva
setenv serverip  #IP_of_your_TFTP_server
setenv ipaddr #IP_of_your_TFTP_Client
tftpboot 0x0800000 u-boot.kwb
nand erase 0x0 0x60000
nand write 0x0800000 0x0 0x60000

Bon, ben...l'a jamais redémarré le Sheeva après ça.. J'ai dû.. réinstaller

USB

  • Copier le u-boot.wkb sur la clé USB.
  • Rebooter le sheeva
  • Interrompez le boot
usb start
fatload usb 0:1 0x0800000 /u-boot.kwb

ou

ext2load usb 0:1 0x0800000 /u-boot.kwb
nand erase 0x0 0x60000
nand write 0x0800000 0x0 0x60000
setenv ethaddr @MAC
saveenv
print ethaddr
reset
version

U-Boot 2011.12 (Jan 08 2012 - 21:53:47)
Marvell-Sheevaplug - eSATA - SD/MMC
gcc (Debian 4.6.2-9) 4.6.2
GNU ld (GNU Binutils for Debian) 2.22

Bon, ça progresse..

Phase2. Install Debian

Ubuntu 9.04 étant très légèrement obsolète, on va réaliser l'install d'une Debian Squeeze récente (6 février 2011, salut Léo G.). Le principe est :

1. On met à jour l'installeur

2. On lance une install sur la clé USB.

3. On recopie cette install sur la flash interne.


[3], mais surtout [/Installing_Debian_To_Flash#Debian_Installer]

  • Copiez uImage et uInitrd sur la clé.
  • Ajoutez, aussi : dream-2.6.39.4.config , sheeva-2.6.39.4-Modules.tar.gz , sheeva-2.6.39.4-Image
  • Attention, la clé sera effacée par le processus d'install; faites une copie des fichiers, au cas où..


  • Branchez la clé sur le Sheeva
usb start
ext2load usb 0:1 0x00800000 /sheeva-2.6.39.4-uImage
ext2load usb 0:1 0x01100000 /uInitrd

ou

fatload usb 0:1 0x00800000 /sheeva-2.6.39.4-uImage
fatload usb 0:1 0x01100000 /uInitrd
setenv bootargs console=ttyS0,115200n8 base-installer/initramfs-tools/driver-policy=most
setenv mainlineLinux yes
setenv arcNumber 2097
saveenv
reset
bootm 0x00800000 0x01100000

Selon [4] et surtout

  • Faites l'install, et ne tenez pas compte du souci lié à l'absence de modules.
  • J'ai fait le choix d'une unique partition / en ext3, sans swap. A voir si c'est futé
  • Reboot
setenv bootcmd_usb 'usb start; ext2load usb 0:1 0x00800000 /boot/uImage; ext2load usb 0:1 0x01100000 /boot/uInitrd'
setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_usb; bootm 0x00800000 0x01100000'
saveenv
run bootcmd

SSH

  • Mdp par défaut de l'installeur Ubuntu 9.04: nosoup4u