Installation du serveur DRBL


Sous debian lenny :





L'installation a été faite via Debian Lenny l'actuelle version stable (une installation via le réseau sans interface graphique).
Installation des paquets :
On rajoute les dépots du serveur drbl suivant dans /etc/apt/source.lst
deb http://drbl.sourceforge.net/drbl-core drbl stable
Il faut maintenant authentifier le nouveau dépot :
wget -q http://drbl.sourceforge.net/GPG-KEY-DRBL -O- | apt-key add -

On peut maintenant installer le paquet :
apt-get update && apt-get install drbl

Sous Mandriva 2009.1


source : wiki mandriva

Installation des paquets :

Installer la clé GPG dans le trousseau de RPM :
wget [[http://drbl.sourceforge.net/GPG-KEY-DRBL]] && rpm --import GPG-KEY-DRBL
remarque: Si vous avez un proxy dans votre réseaux penser à rentrer cette commande :
export "http_proxy=proxy:8080"
Ce réglage ne sera effectif que dans ce terminal.


Télécharger le paquet rpm pour DRBL sur http://drbl.sourceforge.net/download/sourceforge/. "On opte pour la version stable de DRBL"

Installation du paquet perl-Digest-SHA1 :
urpmi perl-Digest-SHA1

Installer le paquet rpm de DRBL téléchargé:
rpm -Uvh drbl-XXX.i386.rpm


Choix et téléchargement du système de base envoyé aux clients


On va maintenant installer tous les autres paquets nécessaires :
/opt/drbl/sbin/drblsrv -i
Voici la sortie de cette commande :
*****************************************************.
Conseil ! Quand une option oui/non (yes/no) est proposée, la valeur par défaut est affichée en majuscule.
Par ex. (y/N) où "N" est la valeur par défaut, sélectionnée si l'on appuie sur "Entrée".
Quand vous n'êtes pas sûr, appuyez simplement sur "Entrée".
*****************************************************.
*****************************************************.
DRBL : Installation en cours pour Debian Linux...
*****************************************************.
Voulez-vous installer les images de démarrage réseau de manière à laisser le client installer certaines distributions
GNU/Linux (Debian, Ubuntu, RedHat Linux, Fedora Core, Mandriva, CentOS et OpenSuSE) par le réseau ?
///NOTE/// Ce choix provoque le téléchargement d'un grand nombre de fichiers (> 100 Mo en tout) sur l'Internet,
ce qui peut prendre quelques minutes. Si votre machine cliente comporte un disque dur et s'il est possible
d'y installer GNU/Linux, alors tapez Y. Si vous répondez "no", vous pourrez exécuter drbl-netinstall pour les installer
ultérieurement.
[y/N]
*****************************************************.
This GNU/Linux distribution uses one kernel to support SMP and non-SMP arch.
*****************************************************.
Voulez-vous utiliser la sortie console série sur les clients ?
Si vous ne comprenez rien à ceci, répondez "N", sinon les clients pourraient ne RIEN afficher du tout à l'écran !
[y/N]
*****************************************************.
It's Ubuntu as server, so generic kernel is available.
*****************************************************.
Quelle architecture CPU voulez-vous choisir pour les clients DRBL ?
0 -> CPU niveau i386
1 -> CPU niveau i586
2 -> Le même niveau CPU que celui de ce serveur DRBL
Note ! Note ! Note ! Note ! Note ! Note ! Note !
NOTE!!! Si vos machines clientes ne sont pas au même niveau que le serveur, répondez "0" ou "1",
sinon vos machines clientes pourraient ne PAS démarrer.
Si vous utilisez un noyau non adapté au niveau du CPU, les paquetages glibc et openssl peuvent utiliser i686 ou i386.
Le noyau pouvant utiliser i686, i586 ou i386, cela ne convient pas à toutes les machines.
L'option "1" est recommandée si vous n'êtes pas sûr, car elle assure malgré tout de bonnes performances et une bonne compatibilité.
[2] 0
*****************************************************.
The CPU arch option for your clients: 0
Aucune optimisation pour votre système. Nous allons utiliser le paquetage "i386".
*****************************************************.
Nettoyage du cache d'apt pour forcer la configuration...
Nous avons choisis des CPU i386 pour une meilleure compatibilité. Si le parc informatique ne contient des ordinateurs plus récent, on pourra utiliser le i586.

Remarque : Sous Mandriva il est nécessaire d'installer ces paquets après cette étape
urpmi clonezilla wakeonlan

Configuration des interfaces du serveur



Il faut configurer l'adresse ip de l'interface étant relié aux clients PXE (Il est conseillé de choisir un sous réseau différent pour les clients pxe par rapport à celui utilisé par les clients normaux):

Sous Debian :
vi /etc/network/interfaces
On met :
iface eth0 inet static
address 192.168.2.9

Sous Mandriva :
vi /etc/sysconfig/network-scripts/ifcfg-ethX
Contenu du fichier:
DEVICE=eth0
BOOTPROTO=none
IPADDR=192.168.2.9
ONBOOT=yes

Configuration d'une interface virtuelle appartenant au sous réseau des clients normaux. Cette interface permettra plus tard de se connecter à l'interface d'administration "Restonux". Si votre serveur possède deux cartes réseaux vous n'êtes pas obligé de créer une interface virtuelle.

Sous Debian:

Sous Mandriva:

vi /etc/sysconfig/network-scripts/ifcfg-ethX:1
 
Contenu du fichier:
BOOTPROTO=static
BROADCAST=<adresse broadcast du sous réseaux des clients normaux>
IPADDR=<adresse ip>
NETMASK=255.255.255.0
NETWORK=<adresse du sous réseau des clients normaux>
ONBOOT=yes

Configuration du serveur DRBL




On va configurer le serveur DRBL (activer l'interface du serveur drbl avant):
/opt/drbl/sbin/drblpush -i
Voici la sortie de cette commande :
******************************************************
Astuce ! Lorsqu'un choix oui/non (yes/no) est proposé, la valeur par défaut est affichée en majuscule.
Par ex. dans (y/N) la valeur par défaut est "N", activée par l'appui sur "Entrée".
Chaque fois que vous n'êtes pas sûr de la réponse à fournir, appuyez sur "Entrée".
******************************************************
Recherche des paquetages du serveur DRBL installés. Ceci peut prendre quelques instants...
La recherche des paquetages du serveur DRBL est terminée.
******************************************************
------------------------------------------------------
Le mode interactif vous permet de fournir les paramètres de votre environnement DRBL.
------------------------------------------------------
------------------------------------------------------
Entrez le domaine DNS (ex : drbl.sf.net) :
[drbl.name] rtprive
Définir DOMAIN : rtprive
------------------------------------------------------
Entrez le nom de domaine NIS/YP :
[penguinzilla]
Définir DOMAIN : penguinzilla
------------------------------------------------------
Entrez le préfixe de nom d'hôte du client :
Ce préfixe est utilisé pour la création automatique des noms d'hôtes des clients.
Pour écraser certains des noms d'hôtes générés automatiquement, appuyez Ctrl+C afin de quitter ce programme, éditez /opt/drbl/conf/client-ip-hostname, puis réexécutez ce programme.
[Karmic]
Préfixe de nom d'hôte du client  Karmic
------------------------------------------------------
eth0: IP address 192.168.4.1, netmask 255.255.255.0
eth0:1: IP address 192.168.4.9, netmask 255.255.255.0
Cartes ethernet configurées dans le système : eth0 eth0:1
------------------------------------------------------
Impossible de trouver l'adresse IP publique de ce serveur.
Quel port ethernet de ce serveur est-il utilisé pour l'accès à l'Internet (pas pour la connexion DRBL) ?
Ports ethernet disponibles sur ce serveur:
eth1 (192.168.4.1), eth1:1 (192.168.2.199),
[eth0] eth0:1
Le port ethernet choisi pour la connexion WAN: eth0:1
Port(s) ethernet pour l'environnement DRBL :  eth0
 
Choissisez l'interface virtuelle pour être connécté au réseau Wan (sous réseau des clients normaux). L'interface non sélectionner sera l'interface du serveur Drbl.
******************************************************
******************************************************
Lecture des adresses MAC des clients !
Si vous désirez que le service DHCP de DRBL offre les mêmes adresses aux clients lors de chaque démarrage et que vous n'avez jamais suivi cette procédure, vous devez le faire maintenant !
Si vous disposez déjà des adresses MAC des clients, vous pouvez les placer dans différents fichiers de groupe (le numéro du fichier est le même que celui de la carte réseau du service DRBL). Dans ce cas, vous pouvez passer cette étape.
Pour gagner du temps et éviter les fautes de frappe, cette étape vous aide à enregistrer les adresses MAC des clients, puis les répartit en différents groupes.
Les adresses MAC sont enregistrées une à une au fur et à mesure du démarrage des clients.
Elles sont inscrites dans différents fichiers, en fonction de la carte réseau du serveur.
Le nom du fichier ressemble à macadr-eth1.txt, macadr-eth2.txt, etc. Les fichiers se trouvent dans le répertoire /etc/drbl.
Veuillez démarrer les clients un à un. Assurez-vous qu'ils démarrent sous etherboot ou PXE !
Voulez-vous les enregistrer ?
[y/N]
******************************************************
OK ! On continue...
******************************************************
Voulez-vous que le service DHCP de DRBL offre les mêmes adresses aux clients à chaque démarrage
(dans ce cas, il faut lire les adresses MAC des clients et les enregistrer dans des fichiers, comme sous la procédure précédente).
Ceci concerne les clients connectés à l'interface réseau du serveur DRBL eth0 ?
[y/N]
******************************************************
OK ! On continue. Attribution dynamique des adresses IP des clients (premier démarré, premier servi), plutôt que des adresses fixes !
Hostmin: 192.168.2.1
******************************************************
Valeur de début pour le dernier octet de l'adresse IP des clients DRBL connectés à ce port ethernet (celle de 'd' dans l'adresse IP a.b.c.d) eth0.
[1] 218
******************************************************
Combien de clients DRBL (postes stagiaires) sont-ils connectés à l'interface réseau du serveur DRBL eth0 ?
Entrez le nombre:
[12] 35
******************************************************
L'octet le plus à droite de l'adresse IP des clients est "253".
Le nombre client doit être égal au nombre de postes maximum dans une salle. Si vous choisissez un nombre de client trop élevé, la commande pour lancer une restauration/sauvegarde sera plus lente à se lancer.
Paramétrage de l'adresse IP des clients connectés à l'interface réseau du serveur DRBL eth0 comme: 192.168.2.218 -
 192.168.2.253
Accepter ? [Y/n]
******************************************************
OK ! On continue...
******************************************************
Paramétrage de votre environnement DRBL :
******************************************************
          NIC    NIC IP                    Clients
+-----------------------------+
|         DRBL SERVER         |
|                             |
|    +-- [eth0:1] 192.168.4.9 +- to WAN
|                             |
|    +-- [eth0] 192.168.2.9 +- to clients group 0 [ 244 clients, their IP
|                             |            from 192.168.2.118 - 192.168.2.253]
+-----------------------------+
******************************************************
Total clients: 35
******************************************************
Appuyez sur Entrée pour continuer...
******************************************************
------------------------------------------------------
Trois modes existent pour les services diskless linux :
[0] Mode DRBL complet. Chaque client a ses propres /etc et /var basés sur NFS.
[1] Mode DRBL SSI (Single system image). Chaque client utilise /etc et /var basés sur tmpfs. Sous ce mode, le chargement et l'espace disque nécessaires au serveur sont plus légers. NOTES ! (a) La mémoire de la machine cliente doit être d'au moins 256 Mo. (b)
Les fichiers de configuration du client ne sont pas sauvegardés sur le serveur DRBL ! Ils ne sont utilisés qu'une fois et disparaissent après l'arrêt de la machine !
De plus, si vous modifiez un fichier du client modèle (dans /tftpboot/nodes), vous devrez exécuter /opt/drbl/sbin/gen_ssi_files afin de créer le tarball du modèle sous /tftpboot/node_root/drbl_ssi/.
(c) Si vous désirez fournir des fichiers pour changer des paramètres du tarball modèle au démarrage du client, consultez /tftpboot/node_root/drbl_ssi/clients/00_README pour plus de détails.
[2] Ne PAS fournir de service diskless linux au client.
Quel mode préférez-vous ?
[0] 1
Le mode DRBL SSI est défini. Un mode élégant pour DRBL est actif !
******************************************************
******************************************************
------------------------------------------------------
Trois modes existent pour Clonezilla :
[0] Mode Clonezilla complet. Chaque client a ses propres /etc et /var basés sur NFS.
[1] Mode "Clonezilla Box". Chaque client utilise /etc et /var basés sur tmpfs.
Sous ce mode, l'espace de stockage et le chargement sont plus légers que ceux du mode complet.
Note ! Sous le mode "Box", les fichiers de configuration du client ne sont pas sauvegardés sur le serveur DRBL !
Ils ne sont utilisés qu'une fois et disparaissent après l'arrêt de la machine !
[2] Je ne veux pas Clonezilla.
Quel mode préférez-vous ?
[0] 1
Le mode "Box" est défini. Un mode élégant pour Clonezilla est préparé !
Ici, on a le choix entre deux modes :
- un mode qui sauvegarde le /var et /etc de tous les clients (prend beaucoup de place sur le serveur)
- un mode qui ne le sauvegarde pas

On choisis donc la deuxième solution.
******************************************************
******************************************************
------------------------------------------------------
Quel répertoire voulez-vous utiliser pour enregistrer les images sur ce serveur (le chemin doit être absolu et non affecté à /mnt/, /media/ ou /tmp/) ?
[/home/partimag]
Directory for clonezilla saved images: /home/partimag
Toutes vos images seront sauvegardée dans /home/partimag
------------------------------------------------------
Si un disque local de la machine cliente comporte une partition de swap ou un système de fichiers inscriptible,
voulez-vous exploiter cette partition de swap ou créer un fichier de swap dans le système de fichiers
afin que le client dispose de plus de mémoire ? (cette étape ne détruit AUCUNE donnée sur le disque)
[Y/n]
******************************************************
OK ! Essai de création d'un espace d'échange pour le client sur son disque local !
------------------------------------------------------
Taille maximale (mega-octets) pour l'espace d'échange ?
Tentative d'allocation de l'espace d'échange. Jusqu'à 60 % de l'espace libre seront utilisés si nécessaire.
[128] 256
******************************************************
------------------------------------------------------
Sous quel mode les clients doivent-ils démarrer ?
"1": Mode graphique (X window) (par défaut),
"2": Mode texte.
[1]
Les clients passeront en mode graphique après le démarrage.
******************************************************
------------------------------------------------------
Quel type d'ouverture de session au démarrage en mode graphique ?
0: normale, 1: automatique (auto-login), 2: temporisée
[0]
Les clients attendront que l'utilisateur ouvre la session.
******************************************************
------------------------------------------------------
Voulez-vous, pour plus de sécurité, définir le mot de passe du super-utilisateur des clients à la place d'un mot de passe unique récupéré sur le serveur ?
[y/N]
OK ! On continue...
------------------------------------------------------
Voulez-vous, pour plus de sécurité, définir le mot de passe pxelinux des clients afin d'obliger à entrer ce mot de passe au démarrage ?
[y/N]
OK ! On continue...
------------------------------------------------------
Voulez-vous définir le prompt de démarrage des clients ?
[Y/n]
Temporisation du prompt de démarrage, en 1/10è de sec. ?
[70]
OK ! On continue...
------------------------------------------------------
------------------------------------------------------
Voulez-vous un arrière-plan graphique pour le menu PXE au démarrage des clients ?
Note ! Si le démarrage avec un menu graphique échoue, vous pouvez passer en mode texte en exécutant
"/opt/drbl/sbin/switch-pxe-bg-mode -m text".
[Y/n]
Use text PXE Linux menu for client.
------------------------------------------------------
------------------------------------------------------
Voulez-vous laisser le son, cdrom, disquette, vidéo et plugdev (périphériques USB) accessibles à tous les utilisateurs des clients DRBL ?
Si oui, tous les utilisateurs seront ajoutés aux groupes de ces périphériques sur le serveur et sur les clients.
[Y/n]
OK ! On continue...
------------------------------------------------------
------------------------------------------------------
Grâce à un alias, chaque client peut avoir deux adresses IP,
l'une est privée pour la connexion des clients au serveur DRBL,
l'autre est publique pour la connexion des clients au WAN à travers un switch !
Voulez-vous définir l'adresse publique des clients ?
[y/N]
------------------------------------------------------
Voulez-vous donner la faculté aux clients DRBL de fonctionner en mode terminal ?
Par ex. vous voulez que les clients utilisent l'affichage distant (ce qui utilise les ressources du serveur).
Si oui, répondez "Y" ici.
Notes !
0. En répondant oui, les clients n'auront qu'un environnement très limité : pas d'accès à l'USB, CD, son, imprimante, etc.
1. Si le serveur n'est pas puissant, répondez "no" ici.
2. La réponse "yes" active xdmcp,
L'activation de cette option n'est pas sûr. Une autre possibilité est de paramétrer /etc/hosts.allow et /etc/hosts.deny afin de permettre uniquement des accès locaux, mais ce n'est pas la plus sûre.
Protéger le port 177 par le pare-feu est l'option la plus sûre lorsque xdmcp est actif.
Reportez-vous au manuel pour plus d'informations sur la sécurisation de XDMCP.
Vous devez configurer cette option vous-même !
3. En répondant "yes", vous aurez peut-être à redémarrer le gestionnaire d'affichage (gdm/kdm) par la suite. N'oubliez pas de sauvegarder vos données avant de refermer les applications !
Voulez-vous donner la faculté aux clients DRBL de fonctionner en mode terminal ?
[y/N]
OK ! On continue...
------------------------------------------------------
------------------------------------------------------
Voulez-vous que le serveur DRBL soit aussi un serveur NAT ?
Dans le cas contraire, vos clients ne pourront PAS accéder à l'Internet.
[Y/n] n
Ce serveur DRBL ne fournit pas le service NAT. Vos clients DRBL ne pourront donc pas accéder à l'Internet.
On se sert juste du serveur pour de la restauration : pas besoin d'aller sur internet.

******************************************************
Le noyau actuel du serveur supporte NFS over TCP!
Note ! En cas de changement du noyau actuel sur le serveur, et si le support de NFS sur udp ou tcp n'est pas assuré, il est conseillé d'exécuter à nouveau "drblpush -i" pour éviter tout problème de démarrage des clients !
Appuyez sur Entrée pour continuer...
------------------------------------------------------
Searching installed Etherboot files for dhcpd.conf... done!
******************************************************
The calculated NETWORK for eth0 is 192.168.2.0.
******************************************************
******************************************************
Prêt à déployer les fichiers sur le système !
Voulez-vous poursuivre ?
Attention ! Si vous continuez, les règles de votre pare-feu seront écrasées pendant la configuration !
Les règles initiales vont être sauvegardées sous iptables.drblsave dans le répertoire de la configuration système (/etc/sysconfig ou /etc/default).
[Y/n]