DDclient 无法打开 ddclient 拥有的文件

DDclient 无法打开 ddclient 拥有的文件

我正在尝试设置 ddclient,但似乎存在权限问题。

heimchen@localhost ~> ls -l /etc/ddclient.conf
-rw-------. 1 ddclient ddclient 8110 Jan 21 23:04 /etc/ddclient.conf
heimchen@localhost ~> ddclient
WARNING:  file /etc/ddclient.conf: Cannot open file '/etc/ddclient.conf'. (Permission denied)
stat() on closed filehandle FD at /usr/sbin/ddclient line 1167.
Use of uninitialized value $mode in bitwise and (&) at /usr/sbin/ddclient line 1168.
readline() on closed filehandle FD at /usr/sbin/ddclient line 1180.
WARNING:  file /etc/ddclient.conf: Cannot open file '/etc/ddclient.conf'. (Permission denied)
stat() on closed filehandle FD at /usr/sbin/ddclient line 1167.
Use of uninitialized value $mode in bitwise and (&) at /usr/sbin/ddclient line 1168.
readline() on closed filehandle FD at /usr/sbin/ddclient line 1180.

为什么 ddclient 说它没有权限?

ddclient.conf 文件只有约 300 行

复制:

Fedora Server 37
sudo dnf update
sudo dnf install ddclient
ddclient
(configure /etc/ddclient.conf)
sudo systemctl enable ddclient.service
sudo systemctl start ddclient.service

答案1

该文件不属于程序“ddclient”,它归用户帐号名为“ddclient”。

只有以该用户身份运行的程序才被允许读取该文件 - 您的示例中并非如此;ddclient 程序在“heimchen”帐户下运行,该帐户无权访问该文件。这同样适用于nano /etc/ddclient.confcat /etc/ddclient.conf

将程序作为服务启动将自动在正确的用户帐户下运行,因为 .service 配置已User=ddclient在其中指定;但是,直接启动它时,始终在启动它的用户帐户下运行它。

sudo -u ddclient ddclient或比较sudo -u ddclient cat /etc/ddclient.conf切换到指定的用户账户。


基本文件权限旁边.表示可以应用来自 SELinux 的附加限制(安全标签),但这仅在基本权限允许访问时才相关(因为 SELinux 只能进一步限制访问,而不能放松检查)。

相关内容