Kiosque Web …. recycler les vieux PC

1   Fabrication d’un kiosque web sous Linux

Dans les lycées et autres établissements de l’éducation nationale, les vieux PC sont mis au rebut du fait qu’il sont devenus trop lents pour supporter les systèmes d’exploitations et les logiciels utilisés actuellement.
Nous allons monter ici comment fabriquer simplement une borne d’accès web où l’utilisateur ne pourra qu’utiliser internet. La distribution choisie est une Ubuntu 10.04 LTS (Alternate CD).

D’après un article de Jean-Marc Gervais.

Attention dans les lignes de code, il faut remplacer « #038; » par du vide.

1.1   Téléchargement d’une distribution Ubuntu 10.04 LTS

Voici un lien de téléchargement :
Ubuntu 10.04-2 LTS alternate.
Une fois téléchargé, il suffit de graver cette image ISO sur un cdrom. Si vous ne savez pas le faire, regarder la documentation suivante en fonction de votre système d’exploitation:

1.2   Installation

1.2.1   Le système de base minimal

Au boot du cd alternate, appuyer sur F4 et choisir installation d’un système en ligne de commande. Seul un petit disque dur est nécessaire (taille < 10 Go) et 256 Mo de RAM.
Choisissez ensuite le formatage manuel et partitionnez de la manière suivante:

  • partition primaire unique en ext3 (et pas ext4 si vous souhaitez cloner votre installation avec partimage), bootable pour le point de montage /
  • partition swap de 512 Mo

Créez un utilisateur appelé surfeur et conservez bien son mot de passe. Il ne sera jamais divulgué aux utilisateurs.
Si vous utilisez un proxy, n’oubliez pas d’indiquer son adresse et son port lorsque l’on vous le demande sous la forme http://ip_proxy:port_proxy

Après redémarrage de la machine, connectez vous faites un

sudo chmod +s /sbin/halt

La machine ne demandera plus de mot de passe pour s’arrêter.

1.2.2   Paramétrage du réseau

Le plus simple est de configurer vos kiosques en adressage dynamique (DHCP). Vérifiez que le fichier /etc/network/interfaces contient bien les lignes suivantes

auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp

1.2.3   Interface graphique et navigateur

Le gestionnaire de fenêtres choisi ici est OpenBox du fait de sa légèreté. On installe nos paquets et leurs dépendances de la manière suivante

sudo apt-get install openbox obconf obmenu x-window-system-core xterm numlocks
sudo apt-get install xserver-xorg fbpanel feh ssh

Si l’installation s’est bien passée, un startx devrait vous donner accès à une belle interface graphique. Le bureau que vous voyez est totalement vide mais un clic droit vous donne accès au menu. obmenu lancé dans un terminal vous permet de configurer ce menu. Personnellement je n’ai gardé que le lancement du navigateur et ……..

1.2.3.1   Paramétrer la barre des tâches avec fbpanel

Il faut commencer par utiliser le paramétrage « par défaut » pour notre utilisateur surfeur

mkdir -p ~/.fbpanel
cp /etc/fbpanel/default ~/.fbpanel/

Le paramétrage se fera ensuite avec un

nano ~/.fbpanel/default

Voici le contenu de mon fichier

Code à inscrire

1.2.3.2   Installation du navigateur (Firefox) et paramétrages divers

Dans le menu, firefox est déjà inscrit mais il n’est pas encore installé

sudo apt-get install firefox

Installation des plugins nécessaires à un surf complet

sudo apt-get install evince mozilla-plugin-vlc mozplugger file-roller
sudo apt-get install ubuntu-restricted-extras ttf-mscorefonts-installer
sudo apt-get install flashplugin-nonfree openoffice.org-l10n-fr mozilla-openoffice.org

Afin d’avoir un environnement java fonctionnel, j’ai supprimé open-jdk

sudo apt-get remove --purge open-jdk

Éditer /etc/apt/sources.list et décommenter la ligne « partner » puis faire

sudo apt-get update
sudo apt-get install sun-java6-jre sun-java6-plugin

Pour éviter que vos utilisateurs ne fassent des configurations personnelles sur votre navigateur, je vous conseille d’installer l’extension Public fox qui permet de figer la configuration de firefox telle que vous l’aurez déterminée.

1.2.3.3   Problèmes de langues ?

Si votre firefox est en anglais, installer

sudo apt-get install language-pack-fr-base

et supprimer

sudo apt-get remove language-pack-en-base

1.3   Automatisations

1.3.1   Connexion automatique de surfeur

Afin que votre utilisateur surfeur se connecte automatiquement sans demander de mot de passe, installez mingetty

sudo apt-get install mingetty

Editer le fichier /etc/init/tty1.conf et faisant un

sudo nano /etc/init/tty1.conf

Puis remplacer dans ce fichier la ligne

exec /sbin/getty -8 38400 tty1

par

exec /sbin/mingetty tty1 --autologin surfeur

Et le tour est joué !

1.3.2   Lancement automatique de X l’interface graphique

Éditer le fichier .bashrc de l’utilisateur surfeur et ajoutez ce qui suit

if [ -z $DISPLAY ] && [ -z $SSH_CONNEXION ] && [ $(tty) == "/dev/tty1" ] ;
then
startx
TMOUT=1
fi

Avec ceci, OpenBox se relancera tout seul après sa fermeture.

1.3.3   Logiciels lancés au démarrage

Stockez un fond d’écran dans ~/.config/ et le nommer mon_fond_d_ecran.jpg

Pour lancer des logiciels au démarrage, il faut éditer (ou créer) le fichier autostart.sh

sudo nano ~/.config/openbox/autostart.sh

et écrire

xrandr -s 1280x1024 # on impose ici la résolution ... à modifier selon !
numlockx on &
fbpanel &
feh --bg-scale ~/.config/mon_fond_d_ecran.jpg &
firefox &

1.4   Clonage

Une fois que votre première machine est fabriquée et fonctionnelle, vous pouvez la cloner avec partimage et déployer l’image résultante sur d’autres machines même si elles n’ont pas la même configuration matérielle.
J’ai utilisé l’excellent (???) tuto de Framasoft disponible ici : http://www.framasoft.net/article4833.html

  • sauvegarde de l’image du kiosque
  • déploiement de l’image sur plusieurs postes

Par contre, par cette méthode, le mbr n’est pas restauré … donc grub ne peut pas se lancer et donc votre kiosque ne fonctionne pas ! Mais il existe une solution simple pour faire marcher tout ça :

Si le réseau ne fonctionne pas c’est que votre PC utilise eth1 au lieu de eth0 comme carte réseau. Éditez alors le fichier /etc/network/interfaces et remplacez eth0 par eth1 comme ci-dessous

auto eth1
iface eth1 inet dhcp

puis faire un

sudo /etc/init.d/networking restart

Et là, le réseau doit fonctionner …. en gros firefox doit pouvoir sortir sur internet.

Pour que grub2 fonctionne

grub-install /dev/sda
update-grub2 /dev/sda1

Éjecter surper-grub2-disk et redémarrer votre PC ….. tout doit être fonctionnel !!

 

Laisser un commentaire