Alix, Imprimante et Squeeze

ajouté le 11.08.2010 dans Documentation • par SwissTenguCommentaires (1)
Tags: cups debian alix linux embeded minimal squeeze linux serveur impression

Ayant quelque peu revu mon réseau, j'ai ressorti mon Alix 1d de son carton, et ai entrepris d'installer Debian Squeeze sur une CF de 2G pour en faire mon serveur d'impression.

J'ai fait cela depuis un autre ordinateur, et voici la marche à suivre rapide et simple ;).

Il vous faudra simplement debootstrap (package éponyme sur gentoo, debian et ubuntu).
Toutes les indications sont faites en partant du principe que vous êtes en root sur la machine hôte.

Partitionner la CF en ne mettant qu'une seule partition prenant tout le disque. La formater en ext2 (pas de journalisation sur une CF!!), montez-la quelque part genre /mnt/cf

la commande suivante va mettre une debian de base, sans kernel ni grub ni autres services sur la CF:
Code: bash
debootstrap --arch=i386 squeeze /mnt/debootstrat http://mirror.switch.ch/ftp/mi...

Comme vous pouvez le constater, j'ai décidé de mettre Squeeze. Cette version a été gelée il y a peu, et sera donc la prochaine version Stable de debian.

Cela va prendre un petit moment, un café est toujours bon à prendre (ou une tasse de thé ;) ).

Une fois le debootstrap terminé, on va passer aux choses sérieuses:

Code: bash
mount -o bind /dev /mnt/cf/dev
cp -L /etc/resolv.conf /mnt/cf/etc
chroot /mnt/cf/etc /bin/bash


Cela va donc vous chrooter dans la debian, sur la CF. La première action sera d'activer les sources non-free et autres dans apt:
Code: bash
vim.tiny /etc/apt/sources.list

(oui, vim.tiny - vim tout court n'est pas fourni!)
Et remplacer la ligne présente par :
Code: bash
deb http://mirror.switch.ch/ftp/mi... squeeze main non-free contrib


Un petit "apt-get update" et c'est tout bon.

De là, c'est simple : il faut installer le strict nécessaire, à savoir :
Code: bash
apt-get install cups screen vim openssh-server linux-image-486 grub


Pour grub, attention où vous l'installez !!! Et prenez garde, en cas d'erreur votre système hôte risque d'avoir de la peine - c'est grub2, dans squeeze ;).

Une fois tout cela installé, il suffira de configurer Cups.... et basta de ce côté-ci.

Dans les astuces utiles :
- Ne pas oublier de régler le mot de passe root
- Ne pas oublier qu'on est sur une CF - donc tout ce qui est log et fichiers temporaires devraient se trouver en ram. Pour se faire :

Code: bash
cat /etc/fstab
proc            /proc           proc    defaults          0       0
/dev/hda1       /               ext3    errors=remount-ro 0       1
tmpfs           /var/tmp        tmpfs   size=96M          0       0
tmpfs           /var/log        tmpfs   size=96M          0       0

cat /etc/init.d/ramfs-logs
#! /bin/sh
### BEGIN INIT INFO
# Provides:          ramfs
# Required-Start:    mountall
# Required-Stop:
# Default-Start:     S
# Default-Stop:
# Short-Description: copy /var/log content in ramdisk
# Description:       copy /var/log content in ramdisk
### END INIT INFO
 
case "$1" in
  start)
        echo "Copying /var/log contents to ramdisk"
        cp -a /var/disk-log/* /var/log/
        ;;
  stop)
        echo "Copying /var/log contents to disk"
        cp -a /var/log/* /var/disk-log/
        ;;
  *)
        echo "Usage: ramfs.sh [start|stop]" >&2
        exit 3
        ;;
esac

update-rc.d ramfs-logs start 37 S . stop 99 .

(source : http://www.switzernet.com/publ... )

Et voilà. Tout est en place - il vous suffit de planter la CF dans l'Alix, la brancher sur le réseau, lui coller l'imprimante au cul, et la booter.

Attention, certaines imprimantes demandent quelques packages de plus - à vous de vous renseigner!

Allez, bon geekage !

Tengu