我想从非特权用户拥有的简单脚本中删除 root 用户拥有的文件 (/var/lib/pacman/db.lck):
#!/bin/bash
rm -f /var/lib/pacman/db.lck
但我不想使用 sudo
运行脚本,以避免每次以非特权用户身份执行脚本时都输入密码。为了实现这一点,我设置了 s
位:
-rwsrwsrwx 1 popov users 41 04.02.2015 10:35 unlock.sh
但是在运行脚本之后我得到了
rm: cannot remove ‘/var/lib/pacman/db.lck’: Permission denied
看来我错误地理解了s
位的用途。
所以问题是:如何设置脚本权限(和/或脚本的所有权),让脚本在非特权用户调用时删除 root 拥有的文件?
最佳答案
如果问题是 sudo 询问密码,您可以使用此命令使用“NOPASSWD”选项配置 sudo。类似的东西:
joe ALL=(ALL) NOPASSWD: /full/path/to/command
关于linux - 如何从 bash 脚本中删除 root 拥有的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28319105/