web-dev-qa-db-fra.com

Pourquoi un serveur NFS est-il monté en tant que RW renvoyant des erreurs de système de fichiers en lecture seule

Je travaille sur un serveur Ubuntu 64 bits. J'ai monté un nfs en tant que rw, mais chaque fois que j'essaie de modifier quoi que ce soit sur le point de montage en question, j'obtiens une erreur de système de fichiers en lecture seule

mon etc/fstab lit:

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    nodev,noexec,nosuid 0       0
/dev/mapper/product-root /               ext4    errors=remount-ro 0       1
UUID=1cae6948-ca9d-4f0b-aec6-9e7a60bbbad8 /boot           ext2    defaults        0       2
/dev/mapper/product-swap_1 none            swap    sw              0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto,exec,utf8 0       0
vnxnfs1.company.com:/NFS2         /mnt/nfs2                        nfs     defaults       0       0

mount renvoie:

/dev/mapper/product-root on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/Fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
/dev/sda1 on /boot type ext2 (rw)
rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw)
vnxnfs1.company.com:/NFS2 on /mnt/nfs2 type nfs (rw)

cat /proc/mounts Retour:

rootfs / rootfs rw 0 0
sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
udev /dev devtmpfs rw,relatime,size=16465812k,nr_inodes=4116453,mode=755 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
tmpfs /run tmpfs rw,nosuid,relatime,size=6590172k,mode=755 0 0
/dev/mapper/product-root / ext4 rw,relatime,errors=remount-ro,data=ordered 0 0
none /sys/fs/Fuse/connections fusectl rw,relatime 0 0
none /sys/kernel/debug debugfs rw,relatime 0 0
none /sys/kernel/security securityfs rw,relatime 0 0
none /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0
none /run/shm tmpfs rw,nosuid,nodev,relatime 0 0
/dev/sda1 /boot ext2 rw,relatime,errors=continue 0 0
rpc_pipefs /run/rpc_pipefs rpc_pipefs rw,relatime 0 0
vnxnfs1.company.com:/NFS2 /mnt/nfs2 nfs rw,relatime,vers=3,rsize=32768,wsize=32768,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=172.x.y.z,mountvers=3,mountport=1234,mountproto=udp,local_lock=none,addr=172.x.y.z 0 0

Les fichiers sur le mnt se lisent très bien, mais chaque fois que j'essaie de changer quoi que ce soit, j'obtiens une erreur:

touch: cannot touch `/mnt/nfs2/path/to/test_file.txt': Read-only file system

Je peux me connecter au nfs en question à partir d'autres serveurs et lire et écrire très bien. Le seul problème est sur ce serveur. J'ai essayé mount -o remount,rw vnxnfs1.company.com:/NFS2 /mnt/nfs2 comme le suggèrent les réponses aux questions connexes, mais en vain.

Désolé pour le vidage des données, j'ai juste essayé d'inclure tout ce qui pourrait donner des indices.

ÉDITER:

plus de détails

J'ai testé de l'utilisateur root sur la machine avec des problèmes, et écrit dans nfs des travaux à partir de root ainsi que user à partir d'autres (nfs-write-is-working) ) serveur.

du serveur de travail: ls -la /mnt/nfs2/

total 76
drwxrwxrwx 12 root root   1024 2013-04-18 10:14 .
drwxr-xr-x 24 root root   4096 2013-04-17 10:42 ..
drwxrwxr-x  2 user user   80 2013-04-18 10:14 archives
drwxrwxrwx  2 user user   1024 2012-08-15 10:13 assignee_dealiasing_temp_folder
drwxrwxr-x  9 user user   1024 2013-03-11 13:50 data_runs
drwxrwxrwx  2 user user   2048 2013-04-19 14:54 db_transfer_dumps
drwxrwxrwx  2 root daemon 1024 2013-08-22 01:00 .etc
drwxrwxrwx  2 root root   8192 2012-08-16 14:47 lost+found
drwxr-xr-x 13 user user   1024 2013-08-16 13:37 projects
drwxr-xr-x 35 user user   2048 2013-05-10 16:34 reports
drwxrwxrwx  6 root root   1024 2013-04-17 16:47 saved_logs

à partir de vnxnfs1 server_export server_2 -list

server_2 :
export "/NFS3" rw=172.16.0.0/24 root=172.16.0.0/24
export "/NFS2" rw=172.16.0.0/24:172.16.9.0/24 root=172.16.0.0/24:172.16.9.0/24
export "/NFS1" rw=172.16.0.0/24:172.16.9.0/24 root=172.16.0.0/24:172.16.9.0/24
export "/ISO" rw=172.16.9.16:172.16.9.18:172.16.9.20 root=172.16.9.16:172.16.9.18:172.16.9.20
export "/NFS0" rw=172.16.0.0/24 root=172.16.0.0/24
export "/" anon=0 access=128.221.252.100:128.221.253.100:128.221.252.101:128.221.253.101
19
stupac8908

L'erreur "Système de fichiers en lecture seule" indique que le système de fichiers est exporté en lecture seule. L'option de montage rw indique au client que "WRITE" est autorisé à être envoyé au serveur. Sur les systèmes Unix standard, vérifiez le fichier/etc/exports:

/NFS2 172.x.y.z(rw)

sur les appliances, consultez la documentation à exporter en lecture-écriture.

9
kofemann

L'exportation d'un dossier parent (ro) annulera une exportation enfant (rw).

Exemples d'export:

/NFS_ROOT *(ro)
/NFS_ROOT/SHARE1 *(rw)

SHARE1 sera en lecture seule car NFS_ROOT est en lecture seule. Vous avez des contraintes sur un répertoire racine exporté, ce qui peut être à l'origine du problème.

7
Brian Walton

Comme l'a dit Brian, une exportation parent peut remplacer une exportation enfant. Mais vous pouvez résoudre ce problème en ajoutant des priorités à vos exportations. Donc, en utilisant l'exemple de Brian, cela résoudrait le problème:

/NFS_ROOT *(ro,fsid=2)
/NFS_ROOT/SHARE1 *(rw,fsid=1)
6
Xmister

Si votre point de montage sur le client est /var/share, assurez-vous qu'il est créé avec des droits définis sur 777:

chmod 777 /var/share

Sinon, vous pourriez avoir d'étranges erreurs étranges où vous pouvez écrire uniquement avec root mais avoir RO avec tous les autres utilisateurs, les droits des fichiers montés comme --------- ou tout autre comportement étrange.

2
sjas