一周前我更新了我妻子的电脑,几天后发现它crond
没有运行。运行crond -d
并没有多大用处,所以我运行了 strace crond -d`。出现此错误:
openat(AT_FDCWD, "/dev/null", O_RDWR) = 0
dup2(0, 0) = 0
dup2(0, 1) = 1
brk(NULL) = 0x1dab000
brk(0x1dcc000) = 0x1dcc000
getpid() = 1405
mkdir("/run/cron/cron.I23Z7s", 0700) = -1 ENOENT (No such file or directory)
dup(2) = 3
fcntl(3, F_GETFL) = 0x2 (flags O_RDWR)
fstat(3, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
write(3, "mkdtemp: No such file or directo"..., 35mkdtemp: No such file or directory
顺便说一句,操作系统是 Slackware64-current。
额外信息:
我刚刚检测到我可以rc.crond
手动启动(以 root 身份),但是在重新启动时它没有启动......并且它工作正常,执行所有 cron 任务。
在
##slackware
IRC 频道上讨论了这个问题是如何发生的之后,我注意到/etc/rc.d/rc.M
我电脑中的文件和其中一位参与者的文件有所不同。旧版本
Slackware
似乎crond
直接管理启动,而新版本通过调用rc.crond start
.rc.crond
做一些额外的工作。通常这应该是自动更新的,但由于某种原因,它不是(rc.M.new
没有替换原始文件)。