2014-07-08 10 views
5

Mam system NFS_Server - NFS_Client. Mój klient jest podłączony do NFS_Server katalogu. Chcę zmienić atrybut plików katalogu NFS_Server za pośrednictwem katalogu podłączonego NFS_Client przy użyciu Rozszerzone atrybuty pliku (xattr).Jak korzystać z rozszerzonych atrybutów plików w systemie plików NFS?

Kiedy próbowałem ustawić atrybut z po stronie klienta, daje następującą odpowiedź:

root @ ubuntu:/mnt/nfs/var/nfs # setfattr -n user.comment -v "some comment" test.txt setfattr: nfs.txt:Permission denied

Moje pytanie brzmi:

  • jest to możliwe użycie Rozszerzony Atrybuty plików za pośrednictwem NFS?

  • jeśli to możliwe, w jaki sposób mogę to zrobić?

UPDATE:

stronie serwera:

$ more /etc/exports file has:  
/var/nfs  192.168.56.123(rw,sync,no_subtree_check) 

boczne Klient:

$ [email protected]:/# mount -t nfs 
192.168.56.130:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,vers=4,addr=192.168.56.130,clientaddr=192.168.56.123) 

dziękuję ...

+0

Jeśli uruchomisz komendę setfattr jako właściciel pliku zamiast root, pojawi się komunikat o błędzie? –

+0

mój właściciel jest również rootem i daje ten sam komunikat o błędzie. spróbuj tego? czego chcę, jest możliwe lub? – Celik

+0

Czy możesz dołączyć opcje eksportu, których używasz na serwerze i opcje montowania, których używasz na kliencie i dystrybucji klienta i serwera? To nam bardzo pomoże. –

Odpowiedz

2

Rozszerzone atrybuty nie są obsługiwane przez nfs.There nie ma obsługi dla atrybutów użytkownika w module jądra nfs. Aby uzyskać więcej informacji, przeczytaj RFC dla nfsv4.

+0

Podczas gdy ten link może odpowiedzieć na pytanie, lepiej umieścić tutaj istotne części odpowiedzi i podać link do odniesienia. Odpowiedzi dotyczące linków mogą stać się nieprawidłowe, jeśli strona z linkami się zmieni. – AlvaroAV

+0

który link @AlvaroAV? Czy możesz to udostępnić? – Celik

1

Możesz użyć fuse_xattrs (warstwy systemu plików bezpieczników), aby emulować rozszerzone atrybuty (xattrs) na udziałach NFS. Zasadniczo musisz wykonać:

  1. zamontować udział NFS. np .: /mnt/shared_data
  2. zamontować warstwę bezpiecznik xattr: $ fuse_xattrs /mnt/shared_data /mnt/shared_data_with_xattrs

Teraz wszystkie pliki na /mnt/shared_data można uzyskać na /mnt/shared_data_with_xattrs z xattrs wsparcia. Rozszerzone atrybuty będą przechowywane w plikach bocznych. Rozszerzone atrybuty nie będą przechowywane w systemie plików serwera jako rozszerzone atrybuty, będą przechowywane w plikach bocznych.

Niestety, to tylko obejście.

disclaimer: Jestem autorem fuse_xattrs.

1

(Ten artykuł jest stary, ale natknąłem się na ten artykuł, gdy szukasz tej funkcjonalności, a nie reprezentuje aktualny stan.)

Jak wspominają inni, nie ma wsparcia dla rozszerzonych atrybutów w NFS.Istnieje jednak duże zainteresowanie nim, w zakresie, w jakim istnieje proposed standard (RFC 8276).

+1

Chociaż może to odpowiedzieć na pytanie, [byłoby lepiej] (http://meta.stackoverflow.com/q/8259), aby dołączyć istotne części odpowiedzi tutaj, i podać link do odniesienia. –

+0

Przykro mi, nie wiem czego szukasz @ TomAranda - Podaję link, zasadniczą częścią odpowiedzi jest brak wsparcia dla rozszerzonych atrybutów w NFS. Mam też nie tylko link - link jest opisywany jako proponowany standard (co oznacza, że ​​jest to proponowany standard dla obsługi rozszerzonych atrybutów). Opisałem nawet link z numerem RFC, na wypadek gdyby link zgniótł, co wydaje się w tym przypadku mało prawdopodobne. Czy możesz rozwinąć? – Drew

Powiązane problemy