Asus Eee PC 2G Surf

De ClissXXI.

Cf. http://wiki.debian.org/DebianEeePC

Le lspci:

00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 04)
00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 04)
00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 04)
00:1b.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 04)
00:1c.1 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (rev 04)
00:1c.2 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 3 (rev 04)
00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 04)
00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 04)
00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 04)
00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 04)
00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 04)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d4)
00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 04)
00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 04)
00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 04)
01:00.0 Ethernet controller: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter (rev 01)
03:00.0 Ethernet controller: Attansic Technology Corp. L2 100 Mbit Ethernet Adapter (rev a0)

Pour le WiFi (sur l'étiquette: Wireless Module : Atheros AR5BXB63):

echo "deb http://backports.undebian.org/repositories/backports-kernel/ ./" >> /etc/apt/sources.list
wget -q -O http://backports.undebian.org/repositories/backports-kernel/archive-key.asc | apt-key add
apt-get update
apt-get install linux-image-2.6.29-backports.2-686
apt-get upgrade  # pour acpid et eeepc-acpi-scripts

Sauvegarde / restauration

Pour sauvegarder l'image en cours:

pc# nc -l -p 9000 | gzip -1 -c > ./eeepc.img.gz
# + ouvrir le port sur le pare-feu
eeepc# sync
eeepc# dd if=/dev/sda | nc -w 5 IP.DU.PC 9000


Pour restaurer l'image (écrasement):

eee-pc/rescue# nc -l -p 9000 | dd of=/dev/sda
pc# cat eeepc-xandros.img | nc 192.168.1.13 9000 -q2


Pour réinstaller Xandros, le mieux est de:

qemu-img create -f raw eeepc-xandros.img 3906250
qemu -hda eeepc-xandros.img -cdrom L701_EN_1.0.6.6.iso

Tout se complique quand on a un disque de 2G et non 4G (modèle 700 et pas 701). Auquel cas il faut retailler l'image de 4Go.

  • La monter (cf. lomount.sh dans autostrap), y faire un chroot, puis apt-get remove --purge sun-*/adobe* et rm -rf /usr/share/doc/ pour faire de la place:
sudo chroot eeepc-hda1
rm -rf /usr/share/doc/*
aptitude purge ~nacroread* ~nsun-* ~nopenoffice*
  • Avec fdisk, nettoyer les partitions, recréer la partition 1 à partir du cylindre 1 (secteur 63). On notera (cf. annexe) que le disque d'origine a 243 cylindres, ce que fdisk souhaite savoir pour travailler:
/sbin/fdisk eeepc-xandros.img -C 243
  • Redimensionner la partition: la monter en tant que périphériques (cf. losetup-helper.sh) puis:
fsck.ext3 -C0 -f /dev/loop1
resize2fs /dev/loop1 1700000k # cf. annexe
  • Xandros insiste sur la présence de /dev/sda2. On créer une 2e partition.
fdisk ...
losetup-helper.sh eeepc-xandros.img 2
fsck.ext3 -f /dev/loop2 232942
  • Optionnellement on peut créer sur les deux derniers cylindres une partition c W95 FAT32 (LBA) puis ef EFI (FAT-12/16/32) qui servent pour les mises à jour du BIOS (pas testé)
  • Tronquer l'image à la taille réelle du disque:
dd if=/dev/null of=eeepc-xandros.img bs=512 seek=3903795

Il y a peut-être moyen de faire plus simple en copiant les fichiers dans un disque déjà partitionné - l'intérêt ici est d'éviter de toucher à la partie GNU. L'idéal reste de sauvegarder l'image du disque avant de commencer à l'utiliser..

Si vous réussissez à utiliser gparted sur une image disque, vous pouvez aussi (après m'avoir envoyé un mail pour que je ne meurs pas idiot).

Annexe: déterminer la taille du disque

Le fdisk après installation Debian:

debian:~# fdisk -lu

Disk /dev/sda: 2000 MB, 2000388096 bytes
255 heads, 63 sectors/track, 243 cylinders, total 3907008 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x1b4f1b4e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63      257039      128488+  83  Linux
/dev/sda2          257040     3903794     1823377+  83  Linux
debian:~# fdisk -l

Disk /dev/sda: 2000 MB, 2000388096 bytes
255 heads, 63 sectors/track, 243 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x1b4f1b4e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          16      128488+  83  Linux
/dev/sda2              17         243     1823377+  83  Linux

On note donc qu'il y a 243 cylinders * 8225280 = 1998743040 octets (soit un peu moins que 2.10^9, au passage). Ceci est contredit par la taille de la sauvegarde de /dev/sda: 2000388096. Je suppose qu'il y a un peu de place non utilisée en fin de disque..

Taille d'une partition qui prend tout le disque:

3903732 secteurs * 512 / 1024 = 1951866k

Ce à quoi on enlève la taille pour la deuxième partition, plus un peu de marge au cas où.

Outils personnels