zpools non si monta automaticamente dopo l'avvio


14

Esecuzione del server Ubuntu 13.10. ZFS installato e configurato da Ubuntu Ppa. Tutto sembra funzionare bene dopo un riavvio se eseguo manualmente un 'sudo zfs mount -a', ma leggendo le FAQ su zfsonlinux.org sembra che dovrei aspettarmi che si monti automaticamente. Non sono sicuro di dove cercare il debug. Non vedo errori in / var / log / syslog relativi a zfs o al montaggio.

$ sudo zfs get all zp
NAME  PROPERTY              VALUE                  SOURCE
zp    type                  filesystem             -
zp    creation              Sat Mar 16 17:14 2013  -
zp    used                  464G                   -
zp    available             449G                   -
zp    referenced            13.3M                  -
zp    compressratio         1.00x                  -
zp    mounted               no                     -
zp    quota                 none                   default
zp    reservation           none                   default
zp    recordsize            128K                   default
zp    mountpoint            /zp                    default
zp    sharenfs              off                    default
zp    checksum              on                     default
zp    compression           off                    default
zp    atime                 on                     default
zp    devices               on                     default
zp    exec                  on                     default
zp    setuid                on                     default
zp    readonly              off                    default
zp    zoned                 off                    default
zp    snapdir               hidden                 default
zp    aclinherit            restricted             default
zp    canmount              on                     default
zp    xattr                 on                     default
zp    copies                1                      default
zp    version               5                      -
zp    utf8only              off                    -
zp    normalization         none                   -
zp    casesensitivity       sensitive              -
zp    vscan                 off                    default
zp    nbmand                off                    default
zp    sharesmb              on                     local
zp    refquota              none                   default
zp    refreservation        none                   default
zp    primarycache          all                    default
zp    secondarycache        all                    default
zp    usedbysnapshots       25.3K                  -
zp    usedbydataset         13.3M                  -
zp    usedbychildren        464G                   -
zp    usedbyrefreservation  0                      -
zp    logbias               latency                default
zp    dedup                 off                    default
zp    mlslabel              none                   default
zp    sync                  standard               default
zp    refcompressratio      1.00x                  -
zp    written               13.3M                  -
zp    snapdev               hidden                 default

Risposte:


9

Devi modificare il file /etc/default/zfscon il tuo editor preferito, ad esempio: nano, vim o qualcos'altro, e cambiare le righe

ZFS_MOUNT='no'
ZFS_UNMOUNT='no'

per

ZFS_MOUNT='yes'
ZFS_UNMOUNT='yes'

L'altra opzione è installare mountall( apt-get install mountall) da ZFS Stable PPA, se ne occupa. La prima opzione è preferibile e più veloce.


2
mountall sembra essere il modo ufficialmente supportato per farlo in Ubuntu ora. Non ci sono opzioni ZFS_MOUNT nel file / default / zfs e aggiungerle non è stato sufficiente per montare il mio pool
Russell Fulton,

6

Per me su Ubuntu 14.04 LTS, ho dovuto impostare quanto segue

Per importare automaticamente gli zpools, cambia il valore da 1a 0:

File: /etc/init/zpool-import.conf

modprobe zfs zfs_autoimport_disable=0

Per montare automaticamente i supporti zfs, aggiungi la seguente riga:

File: /etc/rc.local

zfs mount -a

Riavviato e i montaggi ZFS di Zpool sono stati montati automaticamente.


1
Ho avuto lo stesso problema (importazione automatica non funzionante all'avvio) con una nuova installazione di Ubuntu 14.04 LTS e la tua soluzione l'ha risolto.
Masgo,

Buono a sapersi! :)
Nick Grealy,

1
/etc/init/zpool-import.conf non sembra esistere su Ubuntu 16.04, anche dopo il passaggio da systemd a upstart.
GDorn,


2

Ho avuto lo stesso problema su un'installazione pulita su 16.04 LTS.

Dopo un riavvio, non erano presenti pool ( zpool statusnon mostrava pool), ma zpool import <poolName>ripristinavo il mio pool.

Si è rivelato risolto dalle risposte ai pool ZFS non montati 16.04 . Riproduzione della risposta operativa qui:

sudo apt remove zfs.doc
sudo apt install zfsutils-linux

Questo


1

Ho scoperto che anche con mountallesso solo a volte non funziona bene. Ho letteralmente costruito due server identici, ho posizionato modelli HD identici in ognuno di essi e ho installato Ubuntu e ZFS PPA contemporaneamente dalle stesse fonti. Uno si montava automaticamente, l'altro no. Anche seguendo le istruzioni extra sulle FAQ sull'aggiunta di uno sleep nel mountall.conffile, ecc., Non verrà mai montato all'avvio. Ho finito per inserire un mountallcomando /etc/rc.local.


1

Usando Ubuntu 16.04 zfs, c'è qualcosa che ho scoperto che corregge il montaggio delle condivisioni zfs all'avvio senza creare rc.localo systemdscript e senza eseguire manualmente zfs set sharesmb=ondopo ogni avvio.

Per riassumere: zfs mount -ae zfs share -anon funziona, ma l'utilizzo zfs set sharesmb=onfunziona. Anche la corsa sudo /etc/init.d/zfs-share restartfunziona. Inoltre, il mountallprogramma in 16.04 non supporta zfs, per qualsiasi motivo.

Penso che il problema sia che quando si imposta sharesmb=on, crea un nome di condivisione basato su poolname / sharename in questo modo:poolname_sharename

Ma sembra che questo nome di condivisione possa essere troppo lungo. Ho letto che dovresti limitare i nomi di netbios a 14 caratteri o meno, e limitare anche il numero di caratteri nel campo Commenti.

Quindi, ho creato un nuovo filesystem con una lunghezza combinata inferiore a 14 caratteri, incluso il carattere di sottolineatura:

sudo zfs create -o casesensitivity=mixed -o nbmand=on pool/share

Quindi modifica /etc/default/zfse disabilita il montaggio / condivisione smb: (penso che uno sia per NFS, ma disabilito tutto)

ZFS_MOUNT='no'
ZFS_UNMOUNT='no'
ZFS_SHARE='no'
ZFS_UNSHARE='no'

Infine, abilita sharesmbil nuovo filesystem:

sudo zfs set sharesmb=on pool/share

Mi sono anche assicurato che il /ect/hostidfile esista. (google come crearne uno)

Ora quando riavvio, eseguo questo comando senza dover fare nient'altro e appare la mia condivisione:

smbclient -U guest -N -L localhost  (or use smbclient -L localhost)

Sharename       Type      Comment
---------       ----      -------
print$          Disk      Printer Drivers
IPC$            IPC       IPC Service (my server (Samba, Ubuntu))
pool_share      Disk      Comment: /pool/share

E sì, so che samba supporta nomi più lunghi di 14 caratteri, ma sembra rovinare il montaggio delle condivisioni zfs all'avvio.

Mi piacerebbe sapere se questo funziona per qualcun altro, o se è solo qualche stranezza sul mio sistema ...


0

04 Il mio zfs non stava montando Ho fatto un: sudo zfs import Ha elencato tutti i miei pool non montati ma mi ha anche dato la possibilità di montare per nome o numero zfs Ho fatto l'importazione con il suo numero sudo zfs import ####### ####### e ora si monta automaticamente dopo ogni riavvio

Sembra che quel numero sia l'UUID dell'array e che tutte le unità dell'array abbiano lo stesso numero

Spero possa aiutare

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.