/etc/update-motd.d/ 中的脚本不起作用

/etc/update-motd.d/ 中的脚本不起作用

我创建了一个脚本/etc/update-motd.d/foo

#!/bin/sh
echo aaa
exit 0

我希望在 ssh 登录时执行此脚本,并显示输出。

我的 中有以下几行/etc/pam.d/sshd

session    optional     pam_motd.so  motd=/run/motd.dynamic
session    optional     pam_motd.so noupdate

我期望应该在 ssh 登录时执行该脚本。

但这不起作用,ssh 登录时没有打印任何内容。该脚本由 root 拥有,拥有 755 权限。

我还需要做什么?

我使用的是 Debian 10。

答案1

如果您希望能够使用 Linux PAM 模块,则应取消注释file 中存在的ssh行(如果该行不存在则添加它)。#UsePAM/etc/ssh/sshd_config

要编辑此类文件,我建议您使用:

sudo -e /etc/ssh/sshd_config

where-e用于以root权限编辑文件。
使用的编辑器-e由环境变量决定EDITOR,因此您可以将其设置EDITOR=nvim为例如,如果您想使用 neovim 而不是默认编辑器(即 nano,AFAIK)

答案2

您需要启用文件的可执行位。

chmod +x path/to/your/file

相关内容