2 votes

Forcer le démontage d'une partition partagée via NFS mais non utilisée

Je ne sais pas si c'est mieux pour superutilisateur de unix&linux des planches, faites-moi savoir.

Nous avons un serveur qui est l'un des principaux points clés d'une architecture assez vaste. Ce serveur possède un disque de sauvegarde qui n'était pas utilisé, bien qu'il hébergeait de très vieilles sauvegardes. J'ai donc décidé de le configurer et, alors qu'il s'agissait au départ d'une seule partition, j'ai utilisé les éléments suivants fdisk pour le repartitionner de la même manière que le disque primaire (les deux sont identiques).

Malheureusement, après le repartitionnement fdisk Je n'ai pas réussi à faire en sorte que le noyau voie la nouvelle table de partition, et je n'ai pas non plus pu partrobe , blockdev o sfdisk . Tous ont été confrontés au même problème : BLKRRPART: Device or resource busy mais ni l'un ni l'autre lsof noch fuser n'a rien montré en utilisant l'appareil. Ici, je dois mentionner que j'ai utilisé umount -l pour forcer le démontage avant d'utiliser fdisk (oui, maintenant cela semble stupide et j'aurais dû lire la doc plus attentivement).

Par la suite, j'ai compris que NFS partageait l'un des répertoires du disque, ce qui explique pourquoi il n'apparaissait pas dans le fichier lsof y fuser - Ne me demandez pas qui a eu l'idée stupide d'utiliser un répertoire d'un vieux disque de sauvegarde pour partager des fichiers de configuration de démarrage pour les clients NFS

Je ne peux pas redémarrer ce serveur, et je ne peux pas redémarrer NFS. J'ai lu que je pouvais utiliser nfs-kernel-server reload pour garder les transferts NFS pendant le rechargement /etc/exports (si j'ai bien compris), mais d'abord je ne suis pas sûr que ça va marcher et ensuite je n'ai vraiment pas envie d'essayer ça. Je veux vraiment éviter d'interférer avec les processus en cours.

Maintenant, si le répertoire apparaît effectivement dans la sortie de showmount -e (ce qui semble fondamentalement identique à /etc/exports ), il n'apparaît ni dans showmount -a ni dans showmount -d . Je suppose que cela signifie que le répertoire n'est pas utilisé, alors peut-être y a-t-il un moyen de forcer le démontage à partir de NFS ?

Des suggestions ?

1voto

user132955 Points 131

NFSv2 et NFSv3 sont des protocoles sans état. Cela signifie que, en particulier lorsque vous utilisez UDP, vous pouvez redémarrer le serveur sans aucun effet sur les clients connectés.

J'ai lu que je pouvais utiliser nfs-kernel-server reload pour conserver les transferts NFS. tout en rechargeant /etc/exports (si j'ai bien compris), mais premièrement mais d'abord, je ne suis pas sûr que cela fonctionnera et ensuite je ne veux vraiment pas essayer cela.

Si vous ne faites pas confiance à ce que vous lisez, il est difficile de donner des suggestions. Édition /etc/exports et en cours d'exécution nfs-kernel-server reload est bien sûr la bonne solution. En exécutant ceci, on exécute simplement exportfs -r qui est la manière correcte de mettre à jour les exportations d'un serveur en cours d'exécution sans le redémarrer.


En passant, vous avez dit :

Je dois mentionner que j'ai utilisé umount -l pour forcer le démontage avant d'utiliser fdisk

Pour clarifier, umount -l fait no forcer un démontage. Il est possible que votre système de fichiers soit toujours monté, ou qu'il l'ait été lorsque vous avez lancé fdisk.

0 votes

Ce n'est pas que je n'ai pas confiance en ce que je lis (bien que cela dépende bien sûr de l'endroit où je le lis). C'est plutôt que je veux être sûr de bien comprendre ce que je lis, surtout lorsqu'il s'agit de sujets aussi sensibles (et surtout lorsque le fait de ne pas suivre ce conseil m'a attiré des ennuis, comme vous l'avez vu dans le cas de umount -l - Cependant, il était censé n'être qu'un vieux disque de sauvegarde inutilisé, donc en principe, il aurait été sans danger de tout effacer ou de casser son système de fichiers).

0 votes

Je suis plutôt rassuré par votre réponse concernant NFS. C'est probablement la voie à suivre en effet.

0 votes

Mieux vaut tard que jamais : nfs-kernel-server n'existant pas dans le serveur (Scientific Linux 4.5 Beryllium), j'ai utilisé directement exportfs -r ce qui n'a pas semblé casser le système. Ensuite, j'ai pu démonter les partitions correctement et procéder à l'écriture de la table de partition - bien que showmount -e montre toujours l'ancienne disposition. Merci.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X