我不明白为什么每次我想运行命令时都会弹出此错误systemctl
。我知道我必须使用 来运行它sudo
,它运行得很好,但我很好奇,为什么会发生这种情况?以前没有发生过这种情况,除了配置我的/etc/ssh/sshd_config
文件之外,我没有做任何特别的事情。
在此之前,如果我运行systemctl
不带 的命令sudo
,则会显示一条文本响应,请求我的用户的密码
但现在,这个请求不再弹出了!这是为什么?
\nuser@machine:~$ systemctl restart sshd\nFailed to restart sshd.service: Interactive authentication required.\nSee system logs and \'systemctl status sshd.service\' for details.\n
Run Code Online (Sandbox Code Playgroud)\n当我运行systemctl status sshd
命令时,我收到此错误:Couldn\'t open /etc/securetty: No such file or directory
。这是什么意思?\n顺便说一句,我的机器上有 Ubuntu 20.04 LTS。
user@machine:~$ systemctl status sshd\n\xe2\x97\x8f ssh.service - OpenBSD Secure Shell server\n Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)\n Active: active (running) since Fri 2021-05-21 19:47:32 …
Run Code Online (Sandbox Code Playgroud) 我希望群组中的用户foogroup
能够:
systemctl start foo.service
,systemctl stop foo.service
,systemctl status foo.service
, 和journalctl -u foo.service
不使用提升的权限。那可能吗?
我有一个 systemd 服务,如下所示:
[Unit]
Description=foo service
[Service]
Type=simple
ExecStart=/bin/sleep infinity
User=foobot
Group=foogroup
Run Code Online (Sandbox Code Playgroud)
foobot
系统用户在哪里。
我知道我们可以安装单元文件以~/.config/systemd/user/
允许非特权用户使用 systemd,但这并不能真正帮助组。
注意:我计划在 cockpit 中使用sd - bus API ,因此添加不会有帮助。libsystem-dev
systemctl
/etc/sudoers
我不太关心systemctl enable
,如果我需要更高的特权也没关系。
sudo
名为的用户在尝试重新加载Amazon Linux 2 EC2 映像my-host
时收到以下错误消息。systemctl
[my-host@ip-12-3-4-56 ~]$ systemctl --user daemon-reload\nFailed to get D-Bus connection: Connection refused\n
Run Code Online (Sandbox Code Playgroud)\n\n\n具体需要做什么来解决和消除此错误?
\n
我发现的关于此错误消息的其他帖子要么与 Debian 相关,其apt-get
解决方案不适用于此处,要么与 Docker 映像相关,该解决方案也不适用于此处。
\n\n如果问题与用户权限有关,需要采取什么措施来修复该问题?
\n
这台机器有一个要求,systemctl
像这样的一些命令不能作为sudo
.
根据 @Stewart 和 @JdeBP 的建议再次尝试直接登录用户:
\n然后我们尝试使用具有来自外部世界的直接 ssh 能力的 sudo 用户,但仍然得到以下结果:
\n[ssh-login-user@ip-12-3-4-567 ~]$ systemctl --user daemon-reload\nFailed to get D-Bus connection: No such file or directory\n[ssh-login-user@ip-12-3-4-567 ~]$ echo $XDG_RUNTIME_DIR $UID\n/run/user/1001 1001\n[ssh-login-user@ip-12-3-4-567 ~]$ systemctl --user status\nFailed to …
Run Code Online (Sandbox Code Playgroud)