我正在编写一个脚本来下载、构建和安装一堆软件包。构建有时需要一段时间,并且安装需要 root 权限:
制作;须藤制作安装
经常发生的情况是,当构建需要一段时间时,我需要不断输入密码。我希望只能输入一次。我可以用 root 访问权限调用脚本,但(据我所知)它所做的每次调用都将具有 root 权限。我不想这样,因为这样会创建许多文件和文件夹,如果没有 root 访问权限就无法删除它们。
那么最好的方法是什么?
答案1
使用timestamp_timeout参数。使用visudo编辑sudoers文件:
sudo visudo
并修改默认行,使其看起来像这样:
Defaults env_reset,timestamp_timeout=60
这将保留您的密码 60 分钟。
根据需要修改此时间:)
答案2
脚本本身可以包含 sudo 调用。如果您随后使用 sudo 运行脚本,它将覆盖脚本中的所有 sudo,应该没问题