Arch升级后hdparm路径改了

May 22, 2013

又被Arch坑一回,今天pacman -Syu升级之后,再开机没有走完直接进入X的流程。

journalctl发现一个systemd服务没有正常执行,这个服务是当年Archlinux大举迁移到systemd的时候,我自己写的rc.local替代品。在这个服务里我用hdparm调一下硬盘参数,建个/tmp/log目录。

[Unit]
Description=My rc.local replacement

[Service]
Type=oneshot
ExecStart=/sbin/hdparm -q -S 180 /dev/sda
ExecStart=/bin/mkdir /tmp/log -m 755
ExecStart=/bin/chown mga /tmp/log
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

升级前hdparm的路径是/sbin/hdparm,升级之后变成/usr/bin/hdparm,然后整个服务就挂了。我启动X的时候要用到/tmp/log,所以也失败了。

如果不是X没正常启动,如果不是经常没事看日志,这种错误可能就被无视了。另外systemd虽然复杂点,还是很好用的。