Configuration Linux · 5 min read · Feb 02, 2026
Configurer une console série
Configurer une console série
Ce tutoriel vous montrera comment configurer une console série sur un système Linux et y connecter via un câble null modem. Cela est très utile si votre serveur Linux est en configuration sans tête (sans clavier ni moniteur), car cela vous permet d’obtenir facilement une console sur le système s’il y a des problèmes (en particulier des problèmes de réseau, lorsque SSH n’est pas disponible). À la fin, le menu GRUB apparaîtra sur le lien série, tout comme les messages de démarrage (sortie lors du démarrage du système). J’utilise Debian Etch sur le serveur et Ubuntu Edgy sur mon client, bien que cela devrait fonctionner sur n’importe quelle distribution Linux.
Premiers pas
L’une des choses les plus importantes à vérifier est que vous avez effectivement un port série sur le serveur :). Jetez un œil à l’arrière de votre serveur et voyez s’il a un port série 9 broches. La plupart des cartes mères ont soit un, soit deux ports série. Sur le système, vérifiez si Linux reconnaît les ports série :
root@server:~# dmesg | grep tty
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) est un 16550A
00:08: ttyS0 at I/O 0x3f8 (irq = 4) est un 16550A
Cela montre que mon système a un port série, ttyS0 (rappelez-vous cela pour plus tard).
Configuration de GRUB
L’étape suivante consiste à modifier la configuration de GRUB, afin qu’il envoie ses messages à la console série. L’une des choses les plus importantes est de définir un mot de passe, sinon n’importe qui peut connecter un câble série, modifier la ligne de configuration de GRUB pendant que le système démarre (via la touche “e”), et obtenir un accès root. Lorsqu’un mot de passe est défini, l’édition interactive du menu sera désactivée, sauf si le mot de passe correct est saisi. Pour définir le mot de passe, nous devons d’abord obtenir sa version cryptée.
Exécutez grub et utilisez la commande “md5crypt” pour crypter le mot de passe :
grub> md5crypt
Mot de passe : **
Crypté : $1$AlfMq1$FxRolxW5XvSLAOksiC7MD1
Copiez la version cryptée du mot de passe (nous en avons besoin pour l’étape suivante), puis tapez quit pour quitter.
Maintenant, nous devons modifier la configuration de GRUB. Modifiez le fichier /boot/grub/menu.lst (en tapant nano /boot/grub/menu.lst), et trouvez cette section :
## mot de passe ['--md5'] passwd
# S'il est utilisé dans la première section d'un fichier de menu, désactivez tout contrôle d'édition interactive
# (éditeur d'entrée de menu et ligne de commande) et les entrées protégées par la
# commande 'lock'
# par exemple : mot de passe topsecret
# mot de passe --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# mot de passe topsecretEn dessous, ajoutez :
mot de passe --md5 $1$AlfMq1$FxRolxW5XvSLAOksiC7MD1
série --unité=0 --vitesse=38400 --mot=8 --parité=non --arrêt=1
terminal --timeout=10 console sérieRemplacez $1$AlfMq1$FxRolxW5XvSLAOksiC7MD1 par la forme cryptée de votre mot de passe. La deuxième ligne indique à GRUB d’initialiser le port série à 38 400 bps (même vitesse que la console standard), 8 bits de données, aucune parité et 1 bit d’arrêt (en gros, les paramètres standard). Notez que le –unité=0 signifie qu’il utilisera le premier port série (ttyS0). Si vous utilisez le deuxième port série (ttyS1), changez-le en –unité=1. La dernière ligne indique à GRUB d’afficher son menu à la fois sur la ligne série et sur la console (moniteur).
Maintenant, nous devons également modifier les sections du noyau, afin qu’elles sortent des messages vers la console série. À la fin de chaque ligne de noyau, ajoutez console=tty0 console=ttyS0,38400n8 (remplacez ttyS0 par le port série correct). Dans mon cas, cela a fini par ressembler à :
titre Debian GNU/Linux, noyau 2.6.18-4-vserver-686
racine (hd0,1)
noyau /vmlinuz-2.6.18-4-vserver-686 racine=/dev/hda3 ro console=tty0 console=ttyS0,38400n8
initrd /initrd.img-2.6.18-4-vserver-686
savedefault
titre Debian GNU/Linux, noyau 2.6.18-4-vserver-686 (mode utilisateur unique)
racine (hd0,1)
noyau /vmlinuz-2.6.18-4-vserver-686 racine=/dev/hda3 ro unique console=tty0 console=ttyS0,38400n8
initrd /initrd.img-2.6.18-4-vserver-686
savedefault
titre Debian GNU/Linux, noyau 2.6.18-3-686
racine (hd0,1)
noyau /vmlinuz-2.6.18-3-686 racine=/dev/hda3 ro console=tty0 console=ttyS0,38400n8
initrd /initrd.img-2.6.18-3-686
savedefault
titre Debian GNU/Linux, noyau 2.6.18-3-686 (mode utilisateur unique)
racine (hd0,1)
noyau /vmlinuz-2.6.18-3-686 racine=/dev/hda3 ro unique console=tty0 console=ttyS0,38400n8
initrd /initrd.img-2.6.18-3-686
savedefault
Enregistrez et quittez, en appuyant sur CTRL+O (pour “sortie”, ou enregistrer le fichier), Entrée (pour accepter le nom du fichier) et CTRL+X (pour vraiment quitter).
Autoriser les connexions via la console série
Maintenant, le menu GRUB apparaîtra sur la connexion série, mais nous n’écoutons toujours pas pour les connexions (il n’y a pas de “getty” en cours d’exécution dessus encore). Modifiez le fichier /etc/inittab, et trouvez cette section :
# Exemple de comment mettre un getty sur une ligne série (pour un terminal)
#
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100En dessous (je n’aime pas modifier les lignes par défaut :P), ajoutez :
T0:2345:respawn:/sbin/getty -L ttyS0 38400 vt100Et c’est tout. Votre serveur affichera maintenant le menu GRUB sur la console série et permettra également les connexions (une fois qu’il a terminé de démarrer).
Testons-le !
Maintenant que tout cela est fait, nous devons configurer notre client. J’utilise GtkTerm sur mon ordinateur portable, bien que n’importe quel programme de terminal devrait fonctionner (tant qu’il peut utiliser un port série. Sur Windows, HyperTerminal devrait fonctionner). Mon ordinateur portable n’a pas de port série, donc j’utilise un adaptateur USB vers série que j’ai acheté sur eBay (il crée un périphérique ttyUSB0). Configurez votre programme de terminal avec ces paramètres :
- Port (Linux) : ttyS0 ou ttyS1 (si votre système a un port série), ou ttyUSB0 (si vous utilisez un convertisseur USB vers série).
- Port (Windows) : COM1 ou COM2
- Bits par seconde : 38400
- Bits de données : 8
- Parité : Aucune
- Bits d’arrêt : 1
- Contrôle de flux : Aucun, bien que le matériel (RTS/CTS) devrait fonctionner correctement
Redémarrez le serveur (probablement depuis une connexion SSH, ou comme vous avez modifié la configuration de GRUB ci-dessus), puis connectez le câble null modem pendant qu’il démarre (c’est-à-dire à l’écran BIOS). Appuyez sur n’importe quelle touche lorsque vous y êtes invité, et vous obtiendrez quelque chose comme :

Cela signifie que GRUB fonctionne bien :). Appuyez sur Entrée, et il devrait démarrer, affichant tous les messages dans la fenêtre du terminal. Une fois qu’il démarre, cela ressemblera à :

Enfin, connectez-vous et vérifiez que cela fonctionne bien :

Félicitations, tout est configuré et fonctionne bien.
J’espère que vous avez apprécié ce tutoriel ! :)
Daniel15 (Daniel Lo Nigro)
http://www.daniel15.com/
http://www.dansoftaustralia.net/
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.