pokazane na zamontowanej partycji NFS daje „Operacja niedozwolona”

31

Mam partycję zdalną, którą zainstalowałem lokalnie za pomocą NFS.

„mount” daje

192.168.3.1:/mnt/storage-pools/ on /pools type nfs (rw,addr=192.168.3.1)

Na serwerze mam w eksporcie:

/mnt/storage-pools   *(rw,insecure,sync,no_subtree_check)

Potem próbuję

 touch /pools/test1
 ls -lah
 -rw-r--r--  1 65534 65534    0 Dec 13 20:56 test1
 chown root.root test1
 chown: changing ownership of `test1': Operation not permitted

Czego mi brakuje ? Wyciągam włosy.

Dyskoteka
źródło
za każdym razem, gdy mam ten problem, w pliku eksportu jest miejsce między montażem serwera a (rw, ...
egorgry,

Odpowiedzi:

26

Domyślnie root_squashopcja eksportu jest włączona, dlatego NFS nie pozwala użytkownikowi root na wykonanie operacji jako root na serwerze, zamiast tego mapuje go na identyfikator użytkownika / grupy określony przez anonuidi anongidopcje (domyślnie = 65534). Można to skonfigurować /etc/exportsrazem z innymi opcjami eksportu.

Siergiej Własow
źródło
21

Przeczytaj sekcję exports(5)dotyczącą „zgniatania korzeni”:

Bardzo często nie jest pożądane, aby użytkownik root na komputerze klienckim był również traktowany jako użytkownik root podczas uzyskiwania dostępu do plików na serwerze NFS. W tym celu identyfikator użytkownika 0 jest zwykle mapowany na inny identyfikator: tak zwany anonimowy lub identyfikator użytkownika nikt. Ten tryb działania (zwany „zgniataniem korzeni”) jest domyślny i można go wyłączyć za pomocą no_root_squash.

Więc chcesz:

/mnt/storage-pools   *(rw,insecure,sync,no_subtree_check,no_root_squash)

(edytowana literówka)

Larsks
źródło