我正在使用 Ubuntu 10.04 LTS 服务器,具有默认安全模型(root 锁定,sudo用于提升权限)。sudo -i当我需要以提升的权限运行一系列命令时,或者当我需要在仅具有 root 权限的目录中翻找时,我偶尔会喜欢使用。
有时,在设置将作为自己的非特权系统帐户 ( adduser --system --group --no-create-home --disabled-login some-daemon-user)运行的软件时,我发现我需要以该用户的身份运行一系列命令,而不是我自己或 root 用户。我试过使用sudo -i -u some-daemon-user,但它只返回一个1状态而没有任何错误消息。
我已经检查了syslog、messages、auth和debug日志文件/var/log,它们都没有包含任何引用sudo或相关帐户的消息。
那么,是否有可能成为另一个非 root 用户,sudo 风格而不只是设置密码并登录(作为他们)?我的系统是否以某种方式“损坏”了还是我做错了?
sudo -i运行由目标用户的密码数据库条目指定的 shell,它是/bin/false您的系统用户。
用
sudo -u some-daemon-user bash
Run Code Online (Sandbox Code Playgroud)
或者
sudo -u some-daemon-user -H bash
Run Code Online (Sandbox Code Playgroud)
如果要设置为目标用户设置的 $HOME 环境变量。