sudo
每当以不同的用户身份输入时,我都会看到此信息ubuntu
您必须以 root 身份登录 SSH 才能运行此命令:sudo
以下是输出sudo -l -U myuser
Matching Defaults entries for serverpilot on ubuntu-xenial:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin
User myuser may run the following commands on ubuntu-xenial:
(ALL) NOPASSWD: ALL
我添加了myuser
它/etc/sudoers.d/90-cloud-init-user
来Vagrant
管理我的机器。
附言:在我发布此文之前,我仍然能够通过上述方式添加新的 sudo 用户,没有任何问题。(以前的 ubuntu 盒子版本)
答案1
Serverpilot 是出于未知原因故意这样做的。它实际上并没有阻止使用 sudo,你可以使用哪个 sudo 来验证
/usr/bin/sudo
如果你使用完整路径调用 sudo 它可以正常工作。例如
/usr/bin/sudo whoami
正在设置别名
/etc/profile.d/serverpilot-aliases.sh
if [[ "$HOME" == /srv/users/* ]]; then
alias sudo='echo "You must SSH in as "root" to run this command: sudo"'
fi
你可以确认
alias
alias sudo='echo "You must SSH in as "root" to run this command: sudo"'
你可以暂时用以下方法修复它
unalias sudo
Serverpilot 需要出面解释他们的奇怪决定。您可以通过从列出的文件中删除该别名声明来永久修复。这样做可能会对 serverpilot 产生未知和意想不到的影响。他们这样做肯定是有原因的……