Créer un script / tâche de déconnexion pour Linux


15

Dans la même veine que ma question pour Windows et Mac OS X , comment procéder pour créer un script de déconnexion pour Linux?

Toute distribution est très bien, car je suis sûr qu'elle serait extensible à d'autres. Je connais le mieux RHEL / CentOS / Fedora et Ubuntu.

addition
Si cela existe à la fois pour une connexion graphique (c'est-à-dire sur un poste de travail lcoal) et pour une connexion à distance (comme via ssh), ce serait idéal - mais je me contenterais de l'un ou de l'autre si les deux ne sont pas possibles.

Réponses:


13

Pour les sessions SSH distantes, c'est le travail de votre shell de gérer les scripts de déconnexion. Le shell Bash s'exécute généralement ~/.bash_logout.

Pour les sessions X, le gestionnaire de connexion contrôle les scripts de déconnexion. L'emplacement des fichiers dépend du gestionnaire de connexion utilisé. Le Xserver n'est pas en cours d'exécution lorsque le script de déconnexion est exécuté, donc n'incluez aucun programme dans le script qui tente d'accéder à l'affichage.

  • Pour Gnome , utilisez /etc/gdm/PostSession/Defaultun script de déconnexion par défaut à l'échelle du système (s'exécute, peu importe qui se déconnecte). Contrairement au script de déconnexion de Bash, je ne pense pas qu'il existe une version spécifique à l'utilisateur d'un script GDM PostSession.

  • XDM utilise un script de réinitialisation sur lequel est installé /etc/X11/xdm/Xreset.

  • Pour KDE (en utilisant KDM) , vous voulez le Resetscript . KDE3 utilise /etc/kde3/kdm/Xreset. L'emplacement peut être spécifié dans le fichier de configuration de KDM,, /etc/kde3/kdm/kdmrcavec la Resetclé.

  • WDM utilise apparemment une paire de scripts de réinitialisation: un script par affichage à /etc/X11/wdm/Xreset_0(pour l'affichage :0) et un script global à /etc/X11/wdm/Xreset. Le fichier de configuration WDM est dans /etc/X11/wdm/wdm-config.

Les emplacements des fichiers dans cette réponse proviennent des paquets Debian. Les packages Ubuntu utiliseront généralement les mêmes fichiers, mais d'autres distributions peuvent utiliser des emplacements alternatifs.


existe-t-il une fonctionnalité similaire pour KDE ou fluxbox ou icewm?
warren

1
GDM est le remplacement Gnome pour XDM, le gestionnaire de connexion X. KDE est KDM, je crois. il y en a d'autres mais ce sont les trois grands. Je pense que WDM est souvent recommandé pour une utilisation avec Fluxbox? il y a aussi SDM (basé sur SSH!) qui fournit probablement un support de script. ne sais pas plus de détails; si j'en ai l'occasion plus tard, je vais essayer de le découvrir.
Quack Quichotte

6

Si la distribution utilise PAM pour authentifier les utilisateurs, vous pouvez l'installer pam_scriptpour fournir des fonctionnalités onsessionopen/onsessionclose.

Je l'utilise dans les distributions basées sur Debian pour vérifier les fichiers modifiés par les utilisateurs scpuniquement et ajuster les autorisations des fichiers.

Vous pouvez télécharger à pam_scriptpartir du code libre .


5

Le C-shell, alias csh, a la fonctionnalité .logout, et Bash (la valeur par défaut la plus récente) a .bash_logout, mais je ne me souviens d'aucun autre shell (ksh, sh, etc.) avec un concept similaire.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.