Lo Furòl

... de l'ouverture (en occitan)

Vous êtes ici : Accueil / Logiciels Libres / Installer Slackware en PXE via un serveur NAS Synology

Installer Slackware en PXE via un serveur NAS Synology

Suite à l'annonce de la sortie de MLED (http://linuxfr.org/news/un-poste-de-travail-xfce-complet-avec-mled), une distribution basée sur Slackware, pouvant fonctionner sous du matériel "dépassé" et étant curieux de nature, je suis allé consulter le site de kikinovak, auteur entre autre du bouquin "Linux aux petits oignons" (que je possède,  mais qui s'appuyait sur CentOS) : http://www.microlinux.fr/mledfr.php

C'était l'occasion de découvrir la distribution Slackware : je ne connaissais qu'Ubuntu (et Raspbian...). De plus, j'ai récupéré un portable d'une dizaine d'années (un Gericom Beetle...) que j'ai réussi à faire fonctionner sous Lubuntu 13.10 (et oui...) mais qui freezait régulièrement et que je ne pouvais décemment pas donner à un novice : ça aurait été un mauvais coup de pub pour les systèmes GNU/Linux et aussi une source de fréquents dépannages pour ma pomme. Le but des logiciels libres est quand même d'émanciper les utilisateurs, pas de les rendre dépendants d'un soit disant spécialiste...

Donc l'occasion était trop belle pour découvrir cette distribution.

Évidemment, on ne pouvait pas faire les choses simplement : le lecteur CD-rom était mort, pas de boot USB... Par contre, il y avait une possibilité de faire une installation par le réseau via PXE (c'est de cette façon que j'avais installé Lubuntu). Pour cela, je m'étais servi de mon NAS Synology DS713+ qui peut servir de serveur PXE. Par contre, je me suis rendu compte que ce n'était pas aussi simple que de récupérer une image iso.

Heureusement la doc est assez complète et l'on peut s'en sortir : http://mirrors.slackware.com/slackware/slackware-14.1/usb-and-pxe-installers/README_PXE.TXT

 

Prépararation du NAS Synology :

PXE1

Remarque préalable : On peut rendre n'importe quel ordinateur capable de fournir une image bootable sur le réseau en le configurant pour cela. Il "suffit" de suivre les instructions que l'on peut trouver sur Internet (par exemple : http://lea-linux.org/documentations/Installer_Debian_par_un_boot_réseau ou http://wiki.slackware-fr.org/installation:articles:installation_slackware_pxe ). Moi, j'ai profité de cette fonctionnalité déjà implémentée sur mon NAS (autant s'en servir et d'éviter de réinventer la roue).

Pour info, mon NAS tourne sous une béta de DSM 5.0 pouvant servir de serveur PXE (mais ça marche à partir du DSM 4.2).

- Création d'un dossier partagé "pxe" et d'un sous-dossier "slackware" qui est le dossier racine TFTP.

- Activation du serveur DHCP du NAS (ne pas oublier de désactiver le DHCP de la Livebox pour éviter des conflits).

 - Chargeur de démarrage : pxelinux.0. Ce fichier est à copier dans le dossier /pxe/slackware/

- Création d'un dossier "pxelinux.cfg"

 

 Récupération des fichiers sur le serveur :

Pour récupérer les fichiers, je suis passé en ligne de commande dans la console du serveur via la commande "ssh" et me suis placé dans le répertoire /pxe/slackware et j'ai utilisé la commande wget :

wget http://ftp.lip6.fr/pub/linux/distributions/slackware/slackware/usb-and-pxe-installers/pxelinux.cfg_default /pxelinux.cfg/default

wget http://ftp.lip6.fr/pub/linux/distributions/slackware/slackware/isolinux/f2.txtRépertoire /volume1/pxe/slackware avec tous les fichiers nécessaires

wget http://ftp.lip6.fr/pub/linux/distributions/slackware/slackware/isolinux/message.txt

wget http://ftp.lip6.fr/pub/linux/distributions/slackware/slackware/isolinux/initrd.img

wget -np -r -H http://ftp.lip6.fr/pub/linux/distributions/slackware/slackware/kernels/ (il a fallu ensuite que je modifie le chemin car j'avais le chemin complet et pas seulement le dossier "kernels")

Pour les paquets Slackware 14.1, j'ai récupéré l'iso que j'ai mis dans le même répertoire (2,3 Go à récupérer, c'est un peu long) : http://mirrors.slackware.com/slackware/slackware-14.1-iso/slackware-14.1-install-dvd.iso

 

Installation sur le portable :

- Activer le démarrage (boot) sur le réseau via le BIOS au démarrage (souvent on lance le boot sur le réseau en appuyant sur la touche F12). Puis appuyer sur la touche "Entrée" derrière l'invite "Boot:". Ensuite choisir le type de clavier (azerty-fr) et se connecter en tant que "root".

- Ensuite suivez le guide : http://www.microlinux.fr/mledfr_installation.php

Pour la source, choisir "4- Install from NFS". Puis indiquer l'adresse IP du serveur NAS : "192.168.1.32" et ensuite le dossier où se trouvent les paquets contenus dans l'image iso : "/volume1/pxe/slackware/" (ne pas oublier volume1 qui est le nom du disque du serveur NAS) . Normalement si ça marche, un message vous indique que le répertoire a bien été trouvé. J'ai obtenu un message m'indiquant que l'iso téléchargée avait été reconnue et qu'elle allait être montée pour servir de source aux paquets : c'est rassurant de voir que tout se passe bien et que l'on est donc sur la bonne piste. Ensuite continuez à suivre le guide cité ci-dessus. Les paquets vont s'installer et au moment de certains choix se référer au guide.

- Après l'installation des paquets, il faut installer le paquet "slackpkg+" à l'aide de "links" : il s'agit du paquet "slackpkg+-1.3.0-noarch-2mt.txz" qu'il faut installer avec la commande "installpkg". Puis il faut configurer slackpkg+ ainsi que le miroir. Attention, le miroir qui fonctionne en France est le 3ème de la liste (celui chez OVH ne répondait pas). Suivez le guide cité ci-dessus pour avoir toute la démarche.

- Remplacement du kernel "Huge" par "generic" :-> Suivre ce HOW TO qui permet de réussir le changement: http://www.microlinux.fr/slackware/Linux-HOWTOs/Generic-Kernel-HOWTO.txt . En fait on rajoute un nouveau kernel au démarrage de Lilo : ça permet d'avoir toujours le kernel huge de départ en cas de plantage. Pour que le système par défaut démarre par défaut sur le kernel, il faut rajouter dans le fichier /etc/lilo.conf la ligne "default=label_du_kernel_voulu".

- Récupération des scripts "Microlinux" (cf le guide).

Dernières touches :

- Configurer le serveur X : http://www.slackware.com/config/x.php avec la commande "xorgsetup". Problème : j'ai une erreur de segmentation et le fichier /etc/X11/xorg.conf n'est pas créé. J'ai donc copié le fichier "xorg.conf-vesa" en "xorg.conf" pour avoir un point de départ.

- Ajouter un ou plusieurs utilisateurs avec la commande "adduser" en lui affectant des groupes déjà existant (cdrom, lp, usb etc...).

- Basculer le niveau d'exécution vers le 4 en modifiant le fichier /etc/inittab et la ligne "id:3:initdefault:" en remplaçant le 3 par un 4 -> "id:4:initdefault:" (http://www.slackware.com/config/init.php). Remarque : Si vous voulez un autologin (connexion automatique d'un utilisateur au démarrage) alors il faudra laisser le niveau à 3 !

- Choix de l'interface via "xwmconfig" : j'ai opté pour Xfce.

Peaufinage des réglages :

- Éditer le fichier /etc/lilo.conf pour :

  • Réduire le temps d'affichage de la fenêtre de démarrage Lilo à 5 secondes avec la ligne "timeout=50".
  • Rajouter la ligne : "default=Slackware" pour que le boot se fasse automatiquement sur le kernel generic.

Ne pas oublier ensuite de taper la commande "lilo" pour regénérer le menu de démarrage !!!

- Mettre Firefox et Thunderbird en français : les configurer en passant par le menu "Tools" et "Add-ons" puis "language" (merci Nicolas).

- Fenêtre de connexion avec clavier US qwerty lorsque l'on saisit les identifiants et les mots de passe alors que les textes sont bien en français. Par contre, la console ou la session XFCE ont bien le clavier en AZERTY : ce n'est que la fenêtre de connexion qui pose problème.
Résolution du problème : en fait comme la configuration "xorg.conf" ne s'est pas faite, il manque des fichiers. J'ai trouvé la solution ici : http://www.linuxquestions.org/questions/slackware-14/change-keyboard-language-in-startx-887985/ . En fait, il faut recopier le fichier /usr/share/X11/xorg.conf.d/90-keyboard-layout.conf dans /etc/X11/xorg.conf.d/90-keyboard-layout.conf et modifier la ligne en rempaçant "us" par "fr" :  Option "XkbLayout" "fr" .

- Configurer le wifi (c'est une carte pcmia) : http://docs.slackware.com/slackware:beginners_guide?s[]=networkmanager#graphical_network_configuration_services .

- Connexion automatique pour l'utilisateur principal : http://forum.salixos.org/viewtopic.php?p=16276 . La façon la plus simple est de rajouter cette ligne dans le fichier /etc/rc.d/rc.local ->
su --login bob -c '/bin/bash -l -c startx &> /dev/null' &
Attention, pour que l'autologin fonctionne, il faut remettre le niveau d'exécution à 3 dans le fichier /etc/inittab !!!

 

Conclusion :

Je n'ai pas fait le tour de cette "distribution" mais vraiment le fonctionnement est plutôt rapide et fluide, elle possède tous les logiciels utiles (et même plus pour un débutant).

De plus, il est possible d'accéder à l'ordinateur en ssh sans avoir à configurer quoi que ce soit : ça facilite l'administration par le réseau.

Je pense qu'elle mérite le détour sur des ordinateurs "obsolètes" tout en leur donnant une interface agréable et claire. De plus, Kiki Novak détaille clairement l'installation : j'ai réussi en suivant ses indications alors que je n'avais jamais utilisé Slackware. Après le peaufinage des réglages, on a un ordinateur pleinement fonctionnel et qui ravirait bien des débutants.

C'est vraiment du beau boulot et merci qui ? Kiki.

Bureau du Gericom Beetle de 2003 sous Slackware 14.1

Vous êtes ici : Accueil / Logiciels Libres / Installer Slackware en PXE via un serveur NAS Synology