Bonjour tout le monde, je souhaite pouvoir logger au démarrage un username et lancer un environnement graphique tout bête avec startx au démarrage en runlevel 3.
Le souci que je rencontre est que le shell me renvoi le message suivant :
-sh: you don’t have the job control in this shell
Quelqu’un connaît-il la méthode pour lancer un startx proprement d’un user quelconque à partir du runlevel 3 ?
(plus de détails dans le courant de la matinnée sur la façon dont j’ai fait)
je ne comprends pas pourquoi tu ne choisis pas tout simplement un login manager que tu configurerais en auto login, mais bon, puisque tu as décidé de faire autrement…
Maintenant, ce serait interressant que tu dises COMMENT tu lances ton startx en automatique.
A priori, le pb semble venir d’un appel genre “startx &” qui est refusé par le shell de lancement.
Mais il me semble que startx rend la main aprés son lancement, donc peut être qu’en oubliant simplement le &, ca passerait, non ?
Malheureusement je n’ai pas de fichier kdm ou xdm sur ce minipc. De plus, je ne comprend pas comment il ne connaît pas la commande xinit, elle se situe dans /usr/X11R6-e/bin qui est dans ma variable $PATH ($PATH=/usr/bin:/bin:/usr/X11R6-e/bin:/usr/sbin:/sbin).
J’ai essayé de rajouter un autre chemin qui contient cette commande dans $PATH, j’ai donc fait :
echo "login de arcom et lancement de startx"
/bin/su toto -c 'export $PATH="/usr/bin:/bin:/usr/X11R6-e/bin:/usr/sbin:/sbin:/usr/X11R6/bin" ; /usr/X11R6/bin/startx'
J’obtiens ceci :
login de arcom et lancement de startx
sh: line 1: export: `/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin=/usr/bin:/bin:/usr/X11R6-e/bin:/usr/sbin:/sbin:/r
\n /usr/X11R6/lib/X11/xinit/xinitrc
\n
/usr/X11R6/bin/startx: line 68: xinit: command not found
A la suite de ceci, je remarque qu’il ne m’a pas laissé changé le contenu de la variable $PATH, il fait donc encore la même erreur.
Merci pour ton aide stonfi, j’arrive à logger l’utilisateur tout comme il faut, mais le souci vient du .bash_profile maintenant.
Mon utilisateur toto ne possédait pas de .bash_profile alors je lui en ai créé un, mais apparament il ne l’utilise pas au login de cette utilisateur donc il ne lance pas le startx qui est dedans.
Il ne m’affiche pas le echo du début, j’en conclue qu’il n’est pas rentré dedans et je n’ai toujours pas compris comment faire pour qu’au login de l’utilisateur, il s’en serve.
regardes dans /etc/password ce que ton user utilise comme shell. Ce n’est peut être pas un bash (mais j’avoue que ce serait étonnant). Au pire, tu peux changer ça avec chsh
Au fait, pour pouvoir lancer le autologin créé par stonfi, je n’arrive pas à le lancer à partir du inittab avec la ligne 1:2345:respawn:/sbin/getty -n -l /usr/sbin/autologin 38400 tty1. Pour mon système embarqué, le constructeur préconise d’ajouter tout fichier que l’on veut lancer au démarrage dans le /etc/rcX.d/ (3 dans mon cas à la place du X). J’ai donc placé le autologin dedans en l’appelant S95autologin pour qu’il s’exécute après les autres S… (le système les exécutant un à un en partant de celui dont le numéro est le plus bas).
J’ai donc ajouté aussi un .bash_profile dans le /home/toto mais il ne le lance pas. J’ai essayé alors d’ajouter un script dans le /etc/rcX.d/ après celui de mon autologin pour lancer mon startx mais il ne me le lance pas. Je pense que quand il exécute le autologin et qu’il est bien loggé, il ne se préoccupe plus des fichiers dans /etc/rcX.d (une sorte d’appel bloquant lorsqu’on lance la console ??).
Ma machine est une solution embarqué de Arcom, j’y accède via ethernet en ssh, je l’ai aussi relié avec le port com de mon ordi pour rediriger les infos inscrites par la console sur un terminal à l’aide de minicom, ce système embarqué n’affichant des choses sur son écran que au lancement de startx (le but étant de mettre le minipc sous tension et de voir à l’écran seulement l’ihm que je développe dans l’environnement graphique).
Ce que je trouve bizarre, c’est que j’arrive très bien à lancer l’environnement graphique quand j’accède au minipc en ssh en me loggant sur n’importe quel user et en rentrant la commande startx. J’avoue que je commence à être un peu perdu et je n’ai plus trop d’idées pour mon autologin-startx.
as tu essayé le chsh pour forcer l’utilisation de bash à ton user toto (normalement, sh est un lien vers bash, mais on ne sait jamais)
Par ailleurs, as tu essayé de mettre tes commandes dans le .login ou le .cshrc, pour voir ?
Sinon, comme c’est soit l’inittab, soit le script rc, je te conseillerais de le mettre dans l’inittab seulement pour profiter du respawn.
Par ailleurs quitte à faire un binaire d’autologin, autant essayer d’envoyer directement startx au lieu d’un login, non ? c’est pas possible avec un exec quelconque ?
Merci à tout le monde pour votre aide je viens de trouver où était le souci pour lancer le startx. Le fichier dans lequel faire le startx n’était pas .bash_profile sur mon minipc mais .profile caché dans un coin de façon vicieuse pour pas que je le débusque ^^.