chown на смонтированном разделе NFS дает "Операция не разрешена"
У меня есть удаленный раздел, который я смонтировал локально, используя NFS.
"гора" дает
192.168.3.1:/mnt/storage-pools/ on /pools type nfs (rw,addr=192.168.3.1)
На сервере у меня в экспорте:
/mnt/storage-pools *(rw,insecure,sync,no_subtree_check)
Тогда я пытаюсь
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
Что мне не хватает? Pulling my hairs out.
2 ответа
По умолчанию root_squash
опция экспорта включена, поэтому NFS не позволяет пользователю root от клиента выполнять операции от имени пользователя root на сервере, вместо этого сопоставляя его с идентификатором пользователя / группы, заданным параметром anonuid
а также anongid
параметры (по умолчанию =65534). Это настраивается в /etc/exports
вместе с другими вариантами экспорта.
Прочитайте раздел exports(5)
по поводу "корня сквоша":
Очень часто нежелательно, чтобы пользователь root на клиентском компьютере также рассматривался как root при доступе к файлам на сервере NFS. Для этого uid 0 обычно отображается на другой идентификатор: так называемый анонимный или ник. Этот режим работы (называемый "корневая сквош") является режимом по умолчанию и может быть отключен с помощью no_root_squash.
Итак, вы хотите:
/mnt/storage-pools *(rw,insecure,sync,no_subtree_check,no_root_squash)
(отредактированная опечатка)