Каталог находится в файловой системе, смонтированной по NFS. Вероятно, сервер NFS экспортировал его с параметром root_squash
(по умолчанию в большинстве систем), что означает, что для доступа к этой файловой системе пользователь root
сопоставлен с пользователем nobody
пользователь, и поэтому на него распространяются разрешения для «других» для каталога.
Возможные действия:
Не использовать root
для доступа к этому каталогу. Например, если вы пишете сценарий для сканирования домашних каталогов пользователей, sudo
от root к каждому пользователю по очереди для проверки их домашнего каталога:
для пользователя в `getent passwd | grep ': / home' | cut -d: -f1`
do
sudo -u "$ user" \
"$ process_directory" "` getent passwd $ user | cut -d: -f6` "
готово
(я разделил строку sudo
, чтобы отделить параметры от команды)
никто
пользователь (например, chmod go + rx
). Это может быть для вас приемлемым или неприемлемым; вы, вероятно, захотите убедиться, что конфиденциальные файлы, такие как ~ / .ssh /
и каталоги кеша, не доступны для чтения всем. Измените экспорт на сервере, чтобы удалить параметр root_squash
. В Debian это означает редактирование / etc / exports
для добавления no_root_squash
в список параметров:
srv / nfs4 / homes gss / krb5i (rw, sync, no_subtree_check, no_root_squash )
Это позволит root
получить доступ ко всем файлам в этой файловой системе независимо от разрешений, как если бы файловая система была локальной.