IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

exit (logout) dans un bash


Sujet :

Shell et commandes GNU

  1. #1
    Membre confirmé Avatar de Goldocrack
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    126
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 126
    Par défaut exit (logout) dans un bash
    Bonjour à tous,

    Je cherche, sans résultat jusqu'à présent, à fermer ma session à partir d'un script bash.

    Concrètement, je me connecte avec un autologin et un programme se lance par défaut. Quand des conditions sont réunies, je souhaite fermer ma session (avec X lancé), ce qui doit avoir pour effet de fermer proprement les programmes et logiquement relancer automatiquement ma session avec l'autologin.

    Le problème c'est que je ne trouve pas comment fermer proprement ma session.

    J'ai fait certains tests en faisant un kill mais parfois cela plante en restant connement sur le tty1.

    Merci de votre aide.

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 635
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 635
    Par défaut
    Bonjour,

    regarde du côté de exec
    ...
    ?

    c'est préconisé dans les .xinitrc
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Membre confirmé Avatar de Goldocrack
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    126
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 126
    Par défaut
    Si j'exécute

    rien ne se passe.

    Si je fais une vérification avec

    ou
    Le script m'indique un " not login shell: use 'exit' "

    Vois-tu comment je peux m'en sortir ?

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 635
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 635
    Par défaut
    je pensais plutôt à exec ce_qui_tient_lieu_de WM.

    j'avance dans le noir.

    ce sujet fait suite à un autre ?
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  5. #5
    Membre confirmé Avatar de Goldocrack
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    126
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 126
    Par défaut
    Alors pour plus de précisions :

    Mon système démarre normalement, jusqu'en init 5. Il y a juste un autologin sur la console tty1 sur un user particulier.
    Dans cette session, des programmes se lancent tout seul (et potentiellement se ferment pour se re-ouvrir), je ne peux donc pas conditionner la fermeture de la session à la fermeture de ce programme.

    Je voulais pouvoir appeler un script qui fermerai la session proprement, ce qui aurait pour effet, automatiquement de relancer la session si c'est dans le bon tty1.

    Manuellement (et comme un cochon), je me place dans la console tty1, je fais un CTRL+C pour tuer X11 (en fait plusieurs car il fait une erreur -15) puis un CTRL+D pour le logout. A partir de là, la session repart comme il faut.

    A distance je ne peux pas taper ces commandes ^^, je souhaite donc un script (idem pour une tache cron pour jouerai le rôle de watchdog par ex.)

    Pour l'instant la méthode que j'utilise est de tuer (kill) mon serveur X puis tuer tout ce qui est rattaché de près ou de loin au tty1. C'est très violent mais ça marche... dans la plupart des cas.
    Dans certains cas, le serveur X ne se coupe pas totalement et le kill des tty1 n'a pas l'action escompté de couper totalement la session, donc de ne pas la relancer.

    J'espère avoir apporté des précisions utiles (et non, ce n'est pas la suite d'un autre sujet, sinon j'aurais mis le lien)

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut,

    Ton autologin il est bien activé avec un DM (Display Manager), KDM, GDM ou XDM, non ?

    Donc en relançant celui-ci ça ne le ferait pas ?

  7. #7
    Membre confirmé Avatar de Goldocrack
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    126
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 126
    Par défaut
    Citation Envoyé par zipe31 Voir le message
    Ton autologin il est bien activé avec un DM (...) Donc en relançant celui-ci ça ne le ferait pas ?
    Justement, comment puis-je, avec un script, arrêter proprement mon DM (à voir si je dois complètement délogguer ensuite) pour que l'autologin joue son rôle ?
    Aujourd'hui je le kille comme un porc.

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Un simple ?dm restart (ou kdm ou gdm à adapter) ne ferait pas l'affaire ?

  9. #9
    Membre confirmé Avatar de Goldocrack
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    126
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 126
    Par défaut
    Réponse en retard mais réponse quand même :

    après de nombreux tests, il a fallu que je fasse un mélange de stopper mon serveur X ET redémarrer mon service de session.

    Merci pour ta réponse.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utilisation GZIP dans script bash
    Par albedo0 dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 20/10/2011, 04h56
  2. Logout dans JSF
    Par ilya-bhn dans le forum JSF
    Réponses: 0
    Dernier message: 27/01/2011, 12h45
  3. RegEx dans un bash
    Par sdblepas dans le forum Linux
    Réponses: 12
    Dernier message: 05/05/2010, 09h21
  4. Requete SQL BETWEEN fonctionne dans le bash mais pas dans mon script?
    Par ssc37 dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 09/03/2009, 11h01
  5. récupération d'erreur dans le bash
    Par will972 dans le forum VBScript
    Réponses: 5
    Dernier message: 03/04/2007, 16h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo