脚本 /etc/init.d/sudo 是如何工作的?

脚本 /etc/init.d/sudo 是如何工作的?

我正在读剧本/etc/init.d/sudo。它已被写为脚本中的注释为特定用户提供有限的超级用户权限

不过,我无法理解该脚本是如何工作的?有人能给我解释一下剧本吗?

我使用的是 Ubuntu 14.04 32 位。

答案1

init 文件在系统启动时(或按需)运行,主要做两件事:

  • 他们启动守护进程运行
  • 它们执行各种每次启动一次的任务,例如清理或准备文件、设置网络参数等。

在这种情况下,sudoinit 脚本不会启动守护程序。相反,它会使系统上次关闭时可能留下的任何缓存的凭据文件失效。它通过使用touch将修改时间设置为很久以前(0,即 1970 年 1 月 1 日)来实现此目的。

case "$1" in
  start)
        # make sure privileges don't persist across reboots
        if [ -d /var/lib/sudo ]
        then
                find /var/lib/sudo -exec touch -d @0 '{}' \;
        fi
        ;;

答案2

那里的脚本/etc/init.d允许通过以下方式启动和停止服务系统和类似的初始化系统。它们具有特定的格式,并且是当您执行类似操作时实际调用的格式

service sudo stop

因此,您提到的脚本只是一个可以启动或停止sudo服务的包装器。有关更多详细信息,我建议您阅读 Linux 初始化脚本。

相关内容