解析systemd别名(服务名)
Resolve systemd alias (service name)
Systemd 支持别名。例如"httpd.service"
ls -l /etc/systemd/system/httpd.service
/etc/systemd/system/httpd.service -> /usr/lib/systemd/system/apache2.service
此文件的内容:
[Unit]
Description=The Apache Webserver
...
[Install]
WantedBy=multi-user.target
Alias=httpd.service apache.service
我想在脚本中解析别名。
示例:
如果输入是"httpd.service",那么输出应该是"apache2.service"
我可以为这个脚本使用 shell 或 python。
如何以 systemd 方式执行此操作?
读取符号链接可能有效,但我想有更正式的方法来解析别名。
您应该要求别名服务Id
属性
> systemctl show -p Id --value httpd.service
apache2.service
您还可以查询 Names
属性
> systemctl show -p Names --value httpd.service
httpd.service apache2.service
Systemd 支持别名。例如"httpd.service"
ls -l /etc/systemd/system/httpd.service
/etc/systemd/system/httpd.service -> /usr/lib/systemd/system/apache2.service
此文件的内容:
[Unit]
Description=The Apache Webserver
...
[Install]
WantedBy=multi-user.target
Alias=httpd.service apache.service
我想在脚本中解析别名。
示例:
如果输入是"httpd.service",那么输出应该是"apache2.service"
我可以为这个脚本使用 shell 或 python。
如何以 systemd 方式执行此操作?
读取符号链接可能有效,但我想有更正式的方法来解析别名。
您应该要求别名服务Id
属性
> systemctl show -p Id --value httpd.service
apache2.service
您还可以查询 Names
属性
> systemctl show -p Names --value httpd.service
httpd.service apache2.service