有两个 unix 帐户,A
并且B
。我想从帐户执行 unix 命令,B
以便该命令的行为就像从帐户执行一样A
。我该如何执行此操作?
这里的问题是,我如何向该命令授予权限,以便它作为帐户所有者运行A
但从帐户运行B
。可以使用 来完成此操作sudo
吗?这类似于passwd
命令之类的东西,当从任何帐户运行时都能够更改/etc/passwd
以 root 作为所有者的文件。
答案1
您可以通过编辑来做到这一点/etc/sudoers
。您必须使用该命令visudo
来编辑该文件。visudo
将打开一个编辑器,让您编辑文件,然后在保存之前检查错误。手动编辑/etc/sudoers
可能会破坏您的系统。
根据您具体想要执行的操作,将用户规范添加到文件中。
B 可以运行cp
,mv
并且rm
作为 A:
B ALL = (A) cp, mv, rm
B 可以像 A 一样运行一切:
B ALL = (A) ALL
没有密码也一样:
B ALL = (A) NOPASSWD: ALL
查看man sudoers
更多。