{{tag>virtualbox console connexion}} ====== Connexion au système invité via console série ====== Il est possible de déclarer un **UART** sur la machine virtuelle et ainsi de se connecter sur le système invité de type *nix via un lien série émulé. Dans ce cas, l'invité peut être lancé sans interface graphique et contrôlé via la liaison série. Virtualbox émule un composant **UART 16550A** les modes suivants peuvent être paramétrés: * Déconnecté, le contrôleur série pourra être détecté par le système invité mais non utilisable. * Tube hôte, redirection du port série virtuel sur un fichier périphérique existant de l’hôte. * Périphérique hôte * Fichier, redirection de la sortie série dans un fichier (traces, débogage) ===== Configuration de la VM ===== Plusieurs contrôleurs série peuvent être déclarés via l'interface graphique ou vboxmanage. Il est recommandé d'utiliser les adresses de bases et les niveaux d'interruptions classiques listées ci-dessous: ^ Port 1 | 0x3f8, IRQ 4 | ^ Port 2 | 0x2f8, IRQ 3 | ^ Port 3 | 0x3e8, IRQ 4 | ^ Port 4 | 0x2e8, IRQ 3 | Modification de la VM, on ajoute le controleur série: $ vboxmanage modifyvm xubuntu --uart1 0x3f8 4 $ vboxmanage modifyvm xubuntu --uartmode1 server /tmp/xubuntu-ttyVM ===== Configuration du système invité ===== Sur les systèmes *buntu récents, aucun programme n’écoute sur le port série par défaut. Il faut modifier la configuration d'**Upstart**. Le plus simple est de copier le fichier de configuration d'une console existante: $ sudo cp /et/init/tty6.conf /etc/init/ttyS0.conf Modifier le fichier de configuration: # ttyS0 - getty # # Ce service maintient le daemon getty sur le périphérique virtuel série # jusqu'a l'extinction du système. start on runlevel [2345] and not-container stop on runlevel [!2345] respawn exec /sbin/getty 115200 ttyS0 Lancer le nouveau service: $ sudo initctl start ttyS0 On peut maintenant lancer la VM sans interface graphique (désactivation du service VRDE) $ vboxheadless --vrde off --startvm xubuntu Pour se connecter depuis l'hote sur le système invité, on utilisera **minicom** ou **socat** (plus généraliste il permet de rediriger de façon bidirectionnelle les flux du fichier /tmp/xubuntu-ttyVM). $ sudo apt-get install socat $ socat UNIX-CONNECT:/tmp//tmp/xubuntu-ttyVM STDIO,raw,echo=0 ===== Références ===== * http://wiki.zs64.net/VirtualBox_on_FreeBSD_cheat_sheet * http://doc.ubuntu-fr.org/console_serie