web-dev-qa-db-fra.com

Le montage NFS échoue au démarrage

J'ai plusieurs serveurs Ubuntu. Récemment, j'ai installé quelques serveurs 11.04 (et 1 bureau) et je viens de constater que lors du redémarrage, les montages nfs ne seront pas montés.

J'ai essayé de mettre à jour nfs-common vers la dernière version (je n'ai qu'une petite révision derrière) mais cela ne change que légèrement mes erreurs. Tous ces serveurs posant des problèmes sont des clones (vmWare) à partir d'un modèle de serveur que j'ai créé il y a un certain temps. J'ai ensuite essayé le même montage sur le bureau 11.04 mais j'avais les mêmes problèmes. Environ la moitié du temps, je pourrai appuyer sur la touche "S" pour sauter, mais l'autre moitié du temps, le serveur se fige (et je le restaure à partir d'un instantané récent). De plus, ce qui est étrange, c’est que si je am est capable d’entrer dans le système, je peux faire un "montage -a" parfaitement et il montera tout. Cela me fait penser que le problème est que nfs n'attend pas qu'un réseau soit présent pour essayer de monter. Une autre chose qui me fait penser que c’est que j’obtiens une erreur "incapable de résoudre l’hôte" (en points NFS), même si cet hôte se trouve dans/etc/hosts.

Voici mon /var/log/boot.log

fsck from util-linux-ng 2.17.2
fsck from util-linux-ng 2.17.2
/dev/sda1 was not cleanly unmounted, check forced.
/dev/mapper/php53x-root: clean, 75641/1032192 files, 492673/4126720 blocks (check in 5 mounts)
init: portmap-wait (statd) main process (373) killed by TERM signal
init: statd main process (402) terminated with status 1
init: statd main process ended, respawning
init: statd-mounting main process (355) killed by TERM signal
mount.nfs: Failed to resolve server NFSSERVER-priv: Name or service not known
init: statd-mounting main process (416) killed by TERM signal
mount.nfs: Failed to resolve server NFSSERVER-priv: Name or service not known
init: statd main process (435) terminated with status 1
init: statd main process ended, respawning
init: statd main process (459) terminated with status 1
init: statd main process ended, respawning
mountall: mount /var/www [410] terminated with status 32
mountall: mount /var/users [436] terminated with status 32
init: statd-mounting main process (448) killed by TERM signal
init: statd main process (468) terminated with status 1
init: statd main process ended, respawning
init: statd main process (498) terminated with status 1
init: statd main process ended, respawning
/dev/sda1: 226/124496 files (1.3% non-contiguous), 39133/248832 blocks
mountall: fsck /boot [268] terminated with status 1
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified
mountall: mount /var/users [583] terminated with status 32
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified
mountall: mount /var/www [575] terminated with status 32
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified
mountall: mount /var/www [638] terminated with status 32
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified
mountall: mount /var/users [645] terminated with status 32
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified
mountall: mount /var/www [724] terminated with status 32
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified
mountall: mount /var/users [729] terminated with status 32 Skipping /var/www at user request
 * Starting AppArmor profiles        [80G  [74G[ OK ]
 * Starting Name Service Cache Daemon nscd        [80G  [74G[ OK ]
FATAL: Module vmhgfs not found.
FATAL: Module vmsync not found.
FATAL: Module vmblock not found.
 * Loading open-vm-tools modules        [80G  [74G[ OK ]
 * Starting open-vm daemon vmtoolsd        [80G  [74G[ OK ]

Désolé pour le long post, je voulais juste transmettre autant d'informations que possible. Quelqu'un a-t-il des suggestions à ce sujet? J'ai été sur Google pendant toute la journée et j'ai essayé des choses avec _netdev et j'ai modifié la configuration de statd mais rien n'a fonctionné. J'ai 6 serveurs cela effectue. : \

/ etc/fstab: (lignes uniquement problématiques - leur suppression permettra au reste de nfs d'être montées)

NFSSERVER-priv:/vol/vol1_isp/eshowcase/sites      /var/www       nfs     ro,defaults        0       0
NFSSERVER-priv:/vol/vol1_isp/vusers      /var/users       nfs     defaults        0       0

/ etc/hosts (entrée pertinente):

10.1.1.43 NFSSERVER-priv
7
Scott Rowley

Voici ce que j'ai fait comme solution de contournement au cas où quelqu'un d'autre rencontrerait ce problème et chercherait la solution ici:

Créé un script (mountall.sh) dans /etc/init.d/:

#!/bin/bash

mount -r NFSSERVER-priv:/vol/vol1_isp/eshowcase/sites /var/www
mount    NFSSERVER-priv:/vol/vol1_isp/vusers          /var/users

Informez le système du nouveau script:

update-rc.d mountall.sh defaults

L'option "par défaut" met un lien pour démarrer mountall.sh aux niveaux d'exécution 2, 3, 4 et 5. (et met un lien pour arrêter mountall.sh en 0, 1 et 6).

Chmod le fichier pour être exécutable

chmod +x mountall.sh

Maintenant, lorsque vous initiez 6, vous devriez avoir vos points de montage. C'est aussi une bonne idée de faire un "commentaire" dans votre fstab pour que les gens sachent où tout est en train d'être monté, car ce sera le premier endroit où ils regarderont.

3
Scott Rowley

J'avais le même problème après la mise à niveau d'ubuntu 14.04 à 14.10. Voici ce qui a résolu le problème pour moi:

Éditez /etc/default/nfs-common et assurez-vous qu'il est écrit:

NEED_STATD=yes

Après le redémarrage, mes montages NFS ont fonctionné.

1
Christopher K.

Je ne sais pas si cela s’applique à vous, mais le problème j’avais était que le répertoire que j’essayais de monter n’était pas disponible au démarrage. J'ai plutôt essayé de monter sur /mnt et cela a fonctionné.

1
puk