web-dev-qa-db-fra.com

Ubuntu 16.04 fstab échoue avec nobootwait

Je viens de nettoyer installer Ubuntu 16.04 (pour remplacer 14.04) dans l’intention de porter en bloc le fichier fstab de travail, afin de monter d’autres disques/partitions JFS. Mais il semble que je rencontre des problèmes avec nobootwait.

Par exemple, une entrée de fstab ayant fonctionné en 14.04 était:

UUID=<uuid>  /storage jfs defaults,nodiratime,noatime,nofail,nobootwait  0 2

Mais en 16.04, il ne montera ni le lecteur au démarrage ni la commande suivante:

Sudo mount /storage

Jfsutils est installé ET je peux monter la partition manuellement, c.-à-d.

Sudo mount -t jfs /dev/sdX /storage

J'ai trouvé ceci dans dmesg

[   6.720171] jfs: Unrecognized mount option "nobootwait" or missing value

Donc, en prenant cela comme indice, lorsque je supprime l’option nobootwait de fstab, la commande

Sudo mount /storage 

fonctionne bien. (Je ne sais pas au moment du démarrage car je suis actuellement en train de le faire sur ssh et je ne veux pas risquer que l'ordinateur ne démarre pas).

Évidemment, une solution consiste à supprimer l’option nobootwait. Mais je ne veux pas faire ça. Peut-être que nobootwait NE JAMAIS fonctionné (je n’ai jamais eu de panne du disque) en 14.04 et 14.04 a simplement ignoré l’erreur, mais je veux la fonctionnalité supposée de nobootwait.

Ubuntu 16.04 ou le noyau Linux ont-ils changé en ce qui concerne nobootwait?

15
codechimp

Cette option semble avoir été abandonnée. Ubuntu page de manuel pour fstab contient ce texte si vous sélectionnez 14.04 LTS en haut:

The  mountall(8)  program  that  mounts  filesystem  during  boot  also
 recognises additional options that the ordinary mount(8) tool does not.
These  are:  ``bootwait''  which  can  be applied to remote filesystems
mounted outside of /usr or /var, without which  mountall(8)  would  not
hold up the boot for these; ``nobootwait'' which can be applied to non-
remote filesystems to explicitly instruct mountall(8) not  to  hold  up
the boot for them; ``optional'' which causes the entry to be ignored if
the filesystem type is not known  at  boot  time;  and  ``showthrough''
which  permits  a mountpoint to be mounted before its parent mountpoint
(this latter should be used carefully, as it can cause boot hangs).

Ce paragraphe n'existe pas dans la version de la page que vous obtenez si vous sélectionnez 16.04 en haut.

12
Organic Marble

Si vous cherchez simplement à reproduire le comportement de nobootwait dans 16.04, il semble que l'option que vous recherchez est nofail. De http://manpages.ubuntu.com/manpages/zesty/man5/systemd.mount.5.html

   nofail
       With nofail, this mount will be only wanted, not required, by
       local-fs.target or remote-fs.target. This means that the boot will
       continue even if this mount point is not mounted successfully.
10
cheshirekow

On dirait qu'il y a 2 options pertinentes qui doivent être définies pour imiter le comportement de nobootwait, empruntées à page de manuel systemd mount :

   nofail
       With nofail, this mount will be only wanted, not required, by
       local-fs.target or remote-fs.target. This means that the boot will
       continue even if this mount point is not mounted successfully.
   x-systemd.device-timeout=
       Configure how long systemd should wait for a device to show up
       before giving up on an entry from /etc/fstab. Specify a time in
       seconds or explicitly append a unit such as "s", "min", "h", "ms".

donc, si vous définissez les options sur nofail,x-systemd.device-timeout=1, le système attend 1 seconde avant que le périphérique soit monté avant de poursuivre le démarrage.

9

Depuis Ubuntu 16.04, le système init par défaut est systemd, qui a remplacé mountall. http://manpages.ubuntu.com/manpages/zesty/man5/systemd.mount.5.html fournit de nouvelles options qui éliminent probablement le besoin de nobootwait.

0
Zigmund Ozea