为Linux创建注销脚本/任务


15

与我对于WindowsMac OS X的问题类似,如何为Linux创建注销脚本?

任何发行版都可以,因为我敢肯定它可以扩展到其他发行版。不过,我最熟悉RHEL / CentOS / Fedora和Ubuntu。

另外,
如果对于图形登录(例如,在lalal工作站上)和远程登录(例如,通过ssh)都存在,那将是理想的-但如果两者都不可行,我会选择其中一种。

Answers:


13

对于远程SSH会话,Shell负责处理所有登出脚本。Bash shell通常会运行~/.bash_logout

对于X会话,登录管理器控制注销脚本。文件位置取决于所使用的登录管理器。当执行注销脚本时,Xserver没有运行,因此不要在脚本中包含任何尝试访问显示的程序。

  • 对于Gnome/etc/gdm/PostSession/Default用于系统范围的默认注销脚本(无论谁注销,都可以运行)。与Bash的注销脚本不同,我认为GDM PostSession脚本没有特定于用户的版本。

  • XDM使用Reset脚本安装到/etc/X11/xdm/Xreset

  • 对于KDE(使用KDM) ,你想要Reset脚本。KDE3使用/etc/kde3/kdm/Xreset。可以/etc/kde3/kdm/kdmrc使用Reset密钥在KDM的配置文件中指定位置。

  • WDM显然使用了一对Reset脚本:位于/etc/X11/wdm/Xreset_0(用于display :0)的每个显示脚本,以及位于的全局脚本/etc/X11/wdm/Xreset。WDM配置文件位于中/etc/X11/wdm/wdm-config

该答案中的文件位置来自Debian软件包。Ubuntu软件包通常会使用相同的文件,但是其他发行版可能会使用其他位置。


KDE或fluxbox或icewm有类似的功能吗?
沃伦

1
GDM是X登录管理器XDM的Gnome替代品。我相信KDE是KDM。还有其他人,但那是三巨头。我认为通常建议将WDM与fluxbox一起使用?还有SDM(基于SSH!),它可能提供脚本支持。不知道更多细节;如果以后有机会,我会尝试找出答案。
魁北克吉x德09年

6

如果发行版使用PAM对用户进行身份验证,则可以安装pam_script以提供功能onsessionopen/onsessionclose

我在基于Debian的发行版中使用它来检查scp仅由用户修改的文件,并调整文件的权限。

您可以从freecode 下载pam_script


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.