dnf-makecache.timer 配置每个小时执行,但trigger 显示n/a
时间: 2024-02-11 14:05:26 浏览: 152
createrepo本地软件源安装包 createrepo-0.9.9-28.el7.noarch.rpm
如果 `dnf-makecache.timer` 配置为每小时执行,但是 `systemctl list-timers` 命令显示 "n/a",说明定时器没有被正确配置或者已经被禁用。
您可以执行以下步骤来检查和修复该问题:
1. 检查定时器配置文件是否存在。`dnf-makecache.timer` 的配置文件通常位于 `/usr/lib/systemd/system/dnf-makecache.timer`。您可以使用以下命令来确认该文件是否存在:
```
ls -l /usr/lib/systemd/system/dnf-makecache.timer
```
如果该文件不存在,则需要重新安装 `dnf` 包或者手动创建该文件。
2. 检查定时器是否已启用。您可以使用以下命令来检查:
```
systemctl is-enabled dnf-makecache.timer
```
如果该命令返回 "disabled",则需要启用定时器:
```
systemctl enable dnf-makecache.timer
```
3. 检查定时器的触发时间是否正确。您可以使用以下命令来查看定时器的触发时间:
```
systemctl list-timers --all
```
如果定时器的 "Next" 列显示 "n/a",则说明定时器的触发时间没有被正确设置。您可以编辑 `/usr/lib/systemd/system/dnf-makecache.timer` 文件并修改 `OnCalendar` 选项来设置定时器的触发时间。例如,设置每小时触发一次的配置如下:
```
[Timer]
OnCalendar=hourly
```
完成修改后,需要重新加载 systemd 配置文件并重新启动定时器:
```
systemctl daemon-reload
systemctl restart dnf-makecache.timer
```
然后可以再次使用 `systemctl list-timers --all` 命令来确认定时器的触发时间是否被正确设置。
阅读全文