ubuntu 16.04 fstab fallisce con nobootwait


16

Ho appena pulito Ubuntu 16.04 (per sostituire 14.04) con l'intenzione di eseguire il porting di massa del file fstab funzionante, al fine di montare altri dischi / partizioni JFS. Ma mi sembra di avere problemi nobootwait.

Ad esempio, una voce fstab che ha funzionato nel 14.04 era:

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

Ma nel 16.04, non monterà l'unità al momento dell'avvio né verrà montata con il comando seguente:

sudo mount /storage

Ho jfsutils installato, E sono in grado di montare manualmente la partizione, cioè

sudo mount -t jfs /dev/sdX /storage

Ho trovato questo in dmesg

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

Quindi, prendendo questo come suggerimento, quando rimuovo l' nobootwaitopzione da fstab, il comando

sudo mount /storage 

funziona bene. (Non so al momento dell'avvio in quanto lo sto facendo attualmente su SSH e non voglio rischiare di non avviare il computer).

Ovviamente, una soluzione è eliminare l' nobootwaitopzione. Ma non voglio farlo. Forse nobootwait non ha MAI funzionato (non ho mai avuto un errore di avvio del disco) in 14.04 e 14.04 ha semplicemente ignorato l'errore, ma voglio la supposta funzionalità di nobootwait.

C'è stato un cambiamento in Ubuntu 16.04 o nel kernel Linux riguardo nobootwait?


Questo è successo anche a me quando ho aggiornato una macchina a 16.04. Sulla base della mia esperienza è nobootwaitstata abbandonata come opzione, ma non ho trovato questo documentato da nessuna parte. L'ho sostituito con nofail.
Marmo organico

@Organic Marble Sono contento di non essere completamente mentale. Grazie. Vorrei comunque ottenere la nobootwaitfunzionalità.
codechimp

Risposte:


12

Questa opzione sembra essere stata abbandonata. La manpage di Ubuntu per fstabcontiene questo testo se si seleziona 14.04 LTS in alto:

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).

Questo paragrafo non esiste nella versione della pagina che si ottiene se si seleziona 16.04 in alto.


8
Qualcuno ha una valida alternativa a questo? Sai, oltre al modo hackish di aggiungere noautoalle opzioni di mount e quindi chiamare mount -ada rc.localo da un cron job con il @rebootflag?
John Blackberry,

10

Se stai solo cercando come replicare il nobootwaitcomportamento in 16.04 sembra che l'opzione che stai cercando sia nofail. Da 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.

6
C'è una differenza fondamentale tra questi due: nofailsi aspetta 1,5 minuti prima di rinunciare, nobootwaitnon ha aspettato a tutti.
Rustyx,

10

Sembra che ci siano 2 opzioni rilevanti che devono essere impostate per imitare il comportamento nobootwait, prese dalla manpage di 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".

pertanto, impostando le opzioni su nofail,x-systemd.device-timeout=1, il sistema dovrebbe attendere 1 secondo per il montaggio del dispositivo prima di continuare l'avvio.


0

A partire da Ubuntu 16.04, il sistema init predefinito è systemd che ha sostituito mountall. http://manpages.ubuntu.com/manpages/zesty/man5/systemd.mount.5.html offre nuove opzioni che probabilmente eliminano la necessità di nobootwait.


3
I collegamenti possono morire, per favore copi qui le informazioni pertinenti?
Dr_Bunsen,

@Dr_Bunsen Il collegamento è una manpage online per comodità, è inoltre possibile eseguire man systemd.mountper visualizzare lo stesso file localmente.
Skylar Ittner,

7
Pubblicare le informazioni pertinenti è la solita cosa da fare.
Dr_Bunsen,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.