les zpools ne montent pas automatiquement après le démarrage

14

Exécution du serveur Ubuntu 13.10. Zfs installé et configuré à partir du ppa Ubuntu. Tout semble fonctionner correctement après un redémarrage si je fais un «montage sudo zfs -a», mais en lisant la FAQ sur zfsonlinux.org, il semble que je devrais m'attendre à ce qu'il se monte automatiquement. Je ne sais pas où chercher pour déboguer. Je ne vois aucune erreur dans / var / log / syslog liée à zfs ou au montage.

$ 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
user234729
la source

Réponses:

9

Vous devez éditer le fichier /etc/default/zfsavec votre éditeur préféré, par exemple: nano, vim ou autre chose, et changer les lignes

ZFS_MOUNT='no'
ZFS_UNMOUNT='no'

à

ZFS_MOUNT='yes'
ZFS_UNMOUNT='yes'

L'autre option est d'installer mountall( apt-get install mountall) à partir du ZFS Stable PPA, il s'en charge pour vous. La première option est préférable et plus rapide.

Bruno Pereira
la source
2
mountall semble être la façon officiellement prise en charge par Ubuntu maintenant. Il n'y a pas d'options ZFS_MOUNT dans le fichier / default / zfs et les ajouter n'était pas suffisant pour monter mon pool
Russell Fulton
6

Pour moi sur Ubuntu 14.04 LTS, je devais définir ce qui suit

Pour importer automatiquement les zpools, modifiez la valeur 1à 0:

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

modprobe zfs zfs_autoimport_disable=0

Pour monter automatiquement les supports zfs, ajoutez la ligne suivante:

Fichier: /etc/rc.local

zfs mount -a

Redémarré et les supports zpool ZFS ont été montés automatiquement.

Nick Grealy
la source
1
J'ai eu le même problème (l'importation automatique ne fonctionne pas au démarrage) avec une nouvelle installation d'Ubuntu 14.04 LTS et votre solution l'a résolu.
masgo
Bon à entendre! :)
Nick Grealy
1
/etc/init/zpool-import.conf ne semble pas exister sur Ubuntu 16.04, même après être revenu de systemd à upstart.
GDorn
@GDorn, avez-vous essayé cette solution? - askubuntu.com/questions/768179/zfs-pools-not-mounted-16-04
Nick Grealy
2

J'ai eu le même problème lors d'une nouvelle installation sur 16.04 LTS.

Après un redémarrage, aucun pool n'était présent ( zpool statusn'a montré aucun pool), mais un zpool import <poolName>restaurerait mon pool.

S'est avéré être fixé par les réponses aux pools ZFS non montés 16.04 . Reproduire la réponse de travail ici:

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

Cette

bavarder
la source
1

J'ai trouvé que même avec mountallça ne fonctionnait pas bien parfois. J'ai littéralement construit deux serveurs identiques, placé des modèles HD identiques dans chacun et installé Ubuntu et le ZFS PPA en même temps à partir des mêmes sources. L'un se montait automatiquement, l'autre pas. Même en suivant les instructions supplémentaires de la FAQ sur l'ajout d'une mise en veille dans le mountall.conffichier, etc., il ne se monterait jamais au démarrage. J'ai fini par mettre une mountallcommande /etc/rc.local.

Tony Maro
la source
1

En utilisant Ubuntu 16.04 zfs, il y a quelque chose que j'ai trouvé qui corrige le montage des partages zfs au démarrage sans créer rc.localni systemdscripts, et sans exécuter manuellement zfs set sharesmb=onaprès chaque démarrage.

Pour résumer: zfs mount -aet zfs share -ane fonctionne pas, mais l'utilisation zfs set sharesmb=onfonctionne. La course sudo /etc/init.d/zfs-share restartfonctionne aussi. De plus, le mountallprogramme de la version 16.04 ne prend pas en charge zfs, quelle qu'en soit la raison.

Je pense que le problème est que lorsque vous définissez sharesmb=on, cela crée un nom de partage basé sur poolname / sharename comme ceci:poolname_sharename

Mais il semble que ce nom de partage puisse être trop long. J'ai lu que vous devez limiter les noms de netbios à 14 caractères ou moins, et également limiter le nombre de caractères dans le champ Commentaires.

J'ai donc créé un nouveau système de fichiers avec une longueur combinée de moins de 14 caractères, y compris le trait de soulignement:

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

Ensuite, modifiez /etc/default/zfset désactivez le montage / partage smb: (je pense que l'un est pour NFS, mais je le désactive tout)

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

Enfin, activez sharesmble nouveau système de fichiers:

sudo zfs set sharesmb=on pool/share

J'ai également vérifié que le /ect/hostidfichier existe. (Google comment en créer un)

Maintenant, quand je redémarre, j'exécute cette commande sans avoir à faire autre chose, et ma part apparaît:

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

Et oui, je sais que samba prend en charge les noms de plus de 14 caractères, mais il semble gâcher le montage des partages zfs au démarrage.

J'aimerais savoir si cela fonctionne pour quelqu'un d'autre, ou si c'est juste une bizarrerie sur mon système ...

compdoc
la source
0

04 Mon zfs ne montait pas J'ai fait: sudo zfs import Il a répertorié tous mes pools non montés mais il m'a aussi donné une option pour monter par nom ou numéro zfs J'ai fait l'importation par son numéro sudo zfs import ######## ####### et maintenant il se monte automatiquement après chaque redémarrage

Il semble que ce nombre soit l'uuid de la matrice et tous les lecteurs de la matrice ont le même nombre

J'espère que cela pourra aider

André
la source