#1 Le 30/03/2010, à 10:22
- Almtesh
zsh via une liaison série : pourquoi ça ne fonctionne pas ?
Bonjour,
Je dispose d'un serveur sur lequel il existe une liaison série en ttyS0. J'ai configuré son activation en terminal via le fichier /etc/init/ttyS0.conf que voici :
# ttyS0 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.
start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]
respawn
exec /sbin/getty -8 38400 ttyS0
Je connecte mon ordinateur portable avec un port série par USB et un câble NULL modem croisé (c'est pas un pléonasme ça ?) et j'obtiens ça :
Ubuntu 9.10 angelus ttyS0
angelus login: root
Password:
Last login: Tue Mar 30 11:19:36 CEST 2010 on ttyS0
angelus on Linux 2.6.31-20-generic-pae i686
┌------------------------------------------------------------------------------┐
| |
| AAAAAA N N GGGGGG EEEEEE L U U SSSSSS |
| A A NN N G E L U U S |
| A A N N N G E L U U S |
| AAAAAA N N N G GGG EEEE L U U SSSSSS |
| A A N N N G G E L U U S |
| A A N NN G G E L U U S |
| A A N N GGGGGG EEEEEE LLLLLL UUUUUU SSSSSS |
| |
├------------------------------------------------------------------------------┤
| |
| ANGELUS |
| |
├------------------------------------------------------------------------------┤
| |
| Serveur Angelus sous Ubuntu Karmic Koala (Linux 2.6.31-20-generic-pae) |
| |
└------------------------------------------------------------------------------┘
No mail.
et il s'arrête là et ne bouge pas jusqu'à que je fasse ^C et il reviens au login.
Ça fonctionne très bien avec bash, mais je tiens à me servir de zsh.
#2 Le 30/03/2010, à 15:02
- Saito
Re : zsh via une liaison série : pourquoi ça ne fonctionne pas ?
Salut,
à priori ça doit venir de ta conf sur ton ordi portable. En local sur Angelus, est-ce que zsh fonctionne bien en root ? Poste ton .zshrc afin qu'on puisse voir si quelque chose bloque.
Aku-Soku-Zan_Shinsengumi
Hors ligne
#3 Le 30/03/2010, à 15:42
- Almtesh
Re : zsh via une liaison série : pourquoi ça ne fonctionne pas ?
Zsh fonctionne en local sur tous les comptes qui l'utilisent. Voici mon fichier de configuration, localisé dans /root/.zshrc
#
# Bruno Bonfils, <asyd@asyd.net>
# Written since summer 2001
#
# My functions (don't forget to modify fpath before call compinit !!)
fpath=($HOME/.zsh/functions $fpath)
if [[ -r $HOME/.zen ]] ; then
fpath=($fpath $HOME/.zen/zsh/scripts $HOME/.zen/zsh/zle)
autoload -U zen
fi
# in order to have many completion function run comptinstall !
autoload -U zutil
autoload -U compinit
autoload -U complist
# Activation
compinit
local os host
# Set default umask to 027, can be override by host specific resource file
umask 027
# per host resource file
host=${$(hostname)//.*/}
if [ -f "$HOME/.zsh/rc.host/${host}.zsh" ] ; then
source "$HOME/.zsh/rc.host/${host}.zsh"
else
source "$HOME/.zsh/rc.host/default.zsh"
fi
# per OS resource file
os=$(uname)
[ -f "$HOME/.zsh/rc.os/${os}.zsh" ] && source "$HOME/.zsh/rc.os/${os}.zsh"
# Global resource files
for file in $HOME/.zsh/rc/*.rc; do
source $file
done
# Local file
[[ -f ~/.zsh/rc.local ]] && source ~/.zsh/rc.local
export PATH=$PATH:~/.zen/bin
# alias pour wget
alias wget="wget -c -t 0 -T 10"
Je vais essayer de supprimer ce fichier et de lancer zsh à nouveau, je vous dirais ce que ça donne. Je ne le fais pas tout de suite, Angelus n'est pas à côté de moi.
#4 Le 31/03/2010, à 13:11
- Saito
Re : zsh via une liaison série : pourquoi ça ne fonctionne pas ?
Effectivement, essaie sans .zshrc (ou alors en le vidant) histoire qu'on soit sûr que ça vienne pas de la conf.
Après si le shell par défaut de root est bien zsh et qu'il fonctionne bien en local, je vois pas trop ce qui cloche (j'ai jamais utilisé de connexion série de cette façon).
PS: Asyd ? C'est le premier utilisateur de zsh français que j'ai croisé sur #zsh sur freenode quand je suis arrivé
Aku-Soku-Zan_Shinsengumi
Hors ligne
#5 Le 31/03/2010, à 15:50
- Almtesh
Re : zsh via une liaison série : pourquoi ça ne fonctionne pas ?
J'ai remis bash par défaut avec ça au tout début du bashrc :
[ "`tty`" = "/dev/ttyS0" ] || [ "`tty`" = "not a tty" ] || exec /bin/zsh
Comme ça, si c'est la liaison série ou une commande à distance (genre 'ssh angelus w'), il reste en bash.
Dernière modification par Almtesh (Le 31/03/2010, à 15:51)