1

After upgrading to 15.04 I tried different drivers for my wireless card, so I thought to refresh the udev rules and deleted the /etc/udev/rules.d/70-persistent-net.rules file, thinking it would be recreated at boot. It didn't and gave the following error

systemctl status udev-finish.service -l
● udev-finish.service - Copy rules generated while the root was ro
   Loaded: loaded (/lib/systemd/system/udev-finish.service; static; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sun 2015-04-26 22:11:29 CEST; 49s ago
  Process: 361 ExecStart=/lib/udev/udev-finish (code=exited, status=2)
 Main PID: 361 (code=exited, status=2)

Apr 26 22:11:29 MacBook systemd[1]: Starting Copy rules generated while the root was ro...
Apr 26 22:11:29 MacBook systemd[1]: udev-finish.service: main process exited, code=exited, status=2/INVALIDARGUMENT
Apr 26 22:11:29 MacBook systemd[1]: Failed to start Copy rules generated while the root was ro.
Apr 26 22:11:29 MacBook systemd[1]: Unit udev-finish.service entered failed state.
Apr 26 22:11:29 MacBook systemd[1]: udev-finish.service failed.
Apr 26 22:11:29 MacBook udev-finish[361]: /lib/udev/udev-finish: 6: /lib/udev/udev-finish: cannot create /etc/udev/rules.d/70-persistent-net.rules: Read-only file system

So how do I make the system writable again?

1

I changed the file /lib/systemd/system/udev-finish.service to include basic.target in its After-configuration, which seems to do the trick for me:

[Unit]
Description=Copy rules generated while the root was ro
DefaultDependencies=no
After=basic.target systemd-udevd.service systemd-udev-settle.service

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/lib/udev/udev-finish

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.