3

My /etc/fstab intentionally has quite a few entries that point to (labelled) partitions and filesystems that may not be present at boot time (think: hotpluggable SATA backup disks).

These entries cause trouble during boot because I get trapped for 1min30sec (90sec) while some boot process waits for these disks or partitions to appear. The wait is accompanied by the well-known message "A start job is running for dev-disk-by" and a countup to 1m30sec.

Question: I would like to CHANGE the timeout value from 90sec to, say 10sec, so that boot and shutdown will go faster. How do I do that?

Status: I have looked high and low for the proper parameter to set. One thing I tried was to add some kernel parameter values to the appropriate grub.cfg line, as follows, but it had no effect.

udev.event-timeout=10 rd.udev.event-timeout=10 udev.exec-delay=10 rd.udev.exec-delay=10

This is on

Fedora release 23 (Twenty Three) Linux version 4.5.5-201.fc23.x86_64 (mockbuild@bkernel01.phx2.fedoraproject.org) (gcc version 5.3.1 20160406 (Red Hat 5.3.1-6) (GCC) ) #1 SMP Sat May 21 15:29:49 UTC 2016

2

Use the nofail fstab option for those disks.

Alternatively, you could specify the x-systemd.device-timeout=10s option, but what's the point? systemd already supports hotplugging without the need for timeouts, but it adds dependencies on all filesystems (except nofail ones) to avoid requiring all services to list very detailed deps.

See systemd.mount(5) for documentation of both options.

| improve this answer | |
  • 1
    My experience is that the fstab nofail option has no effect whatsoever. The "start job" still gets generated, and the timeout is in effect. I will try adding the x-systemd.device-timeout=10s in grub.cfg, I assume you mean this is a kernel parameter. Thanks! – reikred Jun 8 '16 at 6:50
  • 1
    I have now tested using x-systemd.device-timeout=10s, and it works. Note: It is an /etc/fstab option on a per-entry basis. It is not a kernel option. Thanks to grawity for providing the answer, I upvoted it but do not have enough reputation points yet to make it show. – reikred Jun 8 '16 at 8:04
  • That's odd – I've been successfully using nofail for quite a few nonexistent disks by now. – user1686 Jun 10 '16 at 4:34
  • nofail still generates the annoying start jobs for me too. I'm using systemd 231 on Arch. (Which is weird, because iirc grawity also uses Arch) – Austin Adams Aug 26 '16 at 12:49
2

The answer, provided by user grawity and paraphrased here, is:

For each entry in /etc/fstab, decide whether the disk device is one that is not always present at boot time, and add

x-systemd.device-timeout=10s

to the mount options for that entry.

Example: The below is an fstab entry for a cold spare backup drive, which should mount when plugged in, but time out quickly if not present at boot time.

LABEL=B.3TB./home /mnt/3000gb-disk2/home ext4 defaults,nofail,x-systemd.device-timeout=10s 1 0

Status: tested and is working. My boot time is now down to about 20sec, whereas it used to be about 100sec or more. The halt/reboot time is also correspondingly improved.

| improve this answer | |

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.