假设我有一个文件,/etc/foo.conf
我想知道实际使用什么服务/etc/foo.conf
。或者,假设我有一个名为的服务foo.service
,并且我想知道该服务使用哪些配置文件。有没有办法从文件中确定哪些服务使用该文件,或者确定每个服务使用哪些配置文件?
我会假设fuser
或者lsof
会给我我想要的信息;/etc/rsyslog.conf
但是,即使 rsyslog 已启用并正在运行,运行 fusionr on也不会返回任何内容。
对于更具体的示例,这里的一些输出根本没有告诉我有关服务使用哪些配置文件的信息:
[user@host ~]# systemctl cat rsyslog
# /usr/lib/systemd/system/rsyslog.service
[Unit]
Description=System Logging Service
;Requires=syslog.socket
Wants=network.target network-online.target
After=network.target network-online.target
Documentation=man:rsyslogd(8)
Documentation=https://www.rsyslog.com/doc/
[Service]
Type=notify
EnvironmentFile=-/etc/sysconfig/rsyslog
ExecStart=/usr/sbin/rsyslogd -n $SYSLOGD_OPTIONS
UMask=0066
StandardOutput=null
Restart=on-failure
# Increase the default a bit in order to allow many simultaneous
# files to be monitored, we might need a lot of fds.
LimitNOFILE=16384
[Install]
WantedBy=multi-user.target
;Alias=syslog.service
[user@host ~]# cat /etc/sysconfig/rsyslog
# Options for rsyslogd
# Syslogd options are deprecated since rsyslog v3.
# If you want to use them, switch to compatibility mode 2 by "-c 2"
# See rsyslogd(8) for more details
SYSLOGD_OPTIONS=""