大家都在尝试列出用户可以作为root访问的所有sudo命令,显然我们可以在sudoers文件中看到,但是如果有很多用户/命令别名就很难
我正在尝试以root身份为其他用户执行sudo -l </ p>
我尝试过使用-u选项
sudo -u testuser -l
抛出命令用法消息
sudo -u testuser sudo -l
提示输入testuser的密码(我不希望密码提示,因为我以root用户身份进行操作)
su - testuser -c 'sudo -l'
给我以下错误
sudo: no tty present and no askpass program specified
请告诉我如何解决这个问题
答案 0 :(得分:1)
根据man sudo
:
-U user, --other-user=user
Used in conjunction with the -l option to list the privileges
for user instead of for the invoking user. The security pol-
icy may restrict listing other users' privileges. The
sudoers policy only allows root or a user with the ALL privi-
lege on the current host to use this option.
你正在使用-u
,这是完全不同的东西:
-u user, --user=user
Run the command as a user other than the default target user
(usually root ). The user may be either a user name or a
numeric user ID (UID) prefixed with the '#' character etc...