Права доступа к файлам клиента CentOS 5.4 NFS v4 отличаются от исходных файлов и содержимого общего ресурса NFS
Имея странную проблему с общими ресурсами NFS и правами доступа к файлам на 1 из 2 клиентов NFS, у web1 есть проблемы с правами доступа к файлам, но с web2 все в порядке. web1 и web2 - это веб-серверы с балансировкой нагрузки.
Итак, вопросы:
- Как мне обеспечить, чтобы содержимое общего ресурса NFS сохраняло те же разрешения для пользователя / группы, что и исходные файлы на сервере web1, как они делают на сервере web2?
- как отменить то, что я сделал на web1, я попытался размонтировать команду и сказал, что команда не найдена?
Информация:
Я использую 3 выделенных сервера настройки. Все 3 сервера CentOS 5.4 64bit основаны.
Серверы работают следующим образом:
- web1 - клиент NFS с проблемами с правами доступа к файлам
- web2 - права доступа к файлу клиента nfs в порядке
- db1 - общий ресурс nfs в / nfsroot
Клиент web2 nfs был настроен моим веб-хостом, а web1 - мной.
Я выполнил следующие команды на web1, и он работал с обновлением общего ресурса db1 nfsroot в / nfsroot / site_css с последними файлами на web1, но права доступа к файлам не сохраняются, даже если я использую команду tar с -p для сохранения прав доступа к файлу?
cd /home/username/public_html/forums/script/
tar -zcp site_css/ > site_css.tar.gz
mount -t nfs4 nfsshareipaddress:/site_css /home/username/public_html/forums/scripts/site_css/ -o rw,soft
cd /home/username/public_html/forums/script/
tar -zxf site_css.tar.gz
Но проверка прав доступа к файлу web1 больше не является именем пользователя / группой, но никем не принадлежит? но права доступа к файлу web2 верны? Это проблема только для web1, пока web2 правильный? Похоже, числовые идентификаторы не совпадают? Не уверены, как это исправить?
web1 с неверным пользователем / группой никто
ls -alh /home/username/public_html/forums/scripts/site_css
total 48K
drwxrwxrwx 2 nobody nobody 4.0K Feb 22 02:37 ./
drwxr-xr-x 3 username username 4.0K Feb 22 02:43 ../
-rw-r--r-- 1 nobody nobody 1 Nov 30 2006 index.html
-rw-r--r-- 1 nobody nobody 5.8K Feb 22 02:37 style-057c3df0-00011.css
-rw-r--r-- 1 nobody nobody 5.8K Feb 22 02:37 style-95001864-00002.css
-rw-r--r-- 1 nobody nobody 5.8K Feb 18 05:37 style-b1879ba7-00002.css
-rw-r--r-- 1 nobody nobody 5.8K Feb 18 05:37 style-cc2f96c9-00011.css
web1 числовые идентификаторы
ls -n /home/username/public_html/forums/scripts/site_css
total 48
drwxrwxrwx 2 99 99 4096 Feb 22 02:37 ./
drwxr-xr-x 3 503 500 4096 Feb 22 02:43 ../
-rw-r--r-- 1 99 99 1 Nov 30 2006 index.html
-rw-r--r-- 1 99 99 5876 Feb 22 02:37 style-057c3df0-00011.css
-rw-r--r-- 1 99 99 5877 Feb 22 02:37 style-95001864-00002.css
-rw-r--r-- 1 99 99 5877 Feb 18 05:37 style-b1879ba7-00002.css
-rw-r--r-- 1 99 99 5876 Feb 18 05:37 style-cc2f96c9-00011.css
web2 правильное имя пользователя / групповые разрешения
ls -alh /home/username/public_html/forums/scripts/site_css
total 48K
drwxrwxrwx 2 root root 4.0K Feb 22 02:37 ./
drwxr-xr-x 3 username username 4.0K Dec 2 14:51 ../
-rw-r--r-- 1 username username 1 Nov 30 2006 index.html
-rw-r--r-- 1 username username 5.8K Feb 22 02:37 style-057c3df0-00011.css
-rw-r--r-- 1 username username 5.8K Feb 22 02:37 style-95001864-00002.css
-rw-r--r-- 1 username username 5.8K Feb 18 05:37 style-b1879ba7-00002.css
-rw-r--r-- 1 username username 5.8K Feb 18 05:37 style-cc2f96c9-00011.css
web2 числовые идентификаторы
ls -n /home/username/public_html/forums/scripts/site_css
total 48
drwxrwxrwx 2 503 500 4096 Feb 22 02:37 ./
drwxr-xr-x 3 503 500 4096 Dec 2 14:51 ../
-rw-r--r-- 1 503 500 1 Nov 30 2006 index.html
-rw-r--r-- 1 503 500 5876 Feb 22 02:37 style-057c3df0-00011.css
-rw-r--r-- 1 503 500 5877 Feb 22 02:37 style-95001864-00002.css
-rw-r--r-- 1 503 500 5877 Feb 18 05:37 style-b1879ba7-00002.css
-rw-r--r-- 1 503 500 5876 Feb 18 05:37 style-cc2f96c9-00011.css
Я проверил db1 / nfsroot / site_css и владелец пользователя / группы был неправильным для новых файлов с датой feb22, принадлежащих пользователю root, а не имени пользователя?
на db1 изначально неверный корень назначил пользователя / группу для новых датированных файлов feb22
ls -alh /nfsroot/site_css
total 44K
drwxrwxrwx 2 root root 4.0K Feb 22 02:37 .
drwxr-xr-x 17 root root 4.0K Feb 17 12:06 ..
-rw-r--r-- 1 root root 1 Nov 30 2006 index.html
-rw-r--r-- 1 root root 5.8K Feb 22 02:37 style-057c3df0-00011.css
-rw-r--r-- 1 root root 5.8K Feb 22 02:37 style-95001864-00002.css
-rw------- 1 username nfs 5.8K Feb 18 05:37 style-b1879ba7-00002.css
-rw------- 1 username nfs 5.8K Feb 18 05:37 style-cc2f96c9-00011.css
Затем я chmod их всех на db1 и chown, чтобы установить право владения на db1, так это выглядит ниже
на db1 однажды исправил более новые датированные файлы feb22
ls -alh /nfsroot/site_css
total 44K
drwxrwxrwx 2 root root 4.0K Feb 22 02:37 .
drwxr-xr-x 17 root root 4.0K Feb 17 12:06 ..
-rw-r--r-- 1 username username 1 Nov 30 2006 index.html
-rw-r--r-- 1 username username 5.8K Feb 22 02:37 style-057c3df0-00011.css
-rw-r--r-- 1 username username 5.8K Feb 22 02:37 style-95001864-00002.css
-rw-r--r-- 1 username username 5.8K Feb 18 05:37 style-b1879ba7-00002.css
-rw-r--r-- 1 username username 5.8K Feb 18 05:37 style-cc2f96c9-00011.css
но все же web1 показывает никем не принадлежащий? пока web2 показывает правильные разрешения?
web1 по- прежнему с неправильным пользователем / группой, никто не соответствует тем, на что установлены web2 и db1?
ls -alh /home/username/public_html/forums/scripts/site_css
total 48K
drwxrwxrwx 2 nobody nobody 4.0K Feb 22 02:37 ./
drwxr-xr-x 3 username username 4.0K Feb 22 02:43 ../
-rw-r--r-- 1 nobody nobody 1 Nov 30 2006 index.html
-rw-r--r-- 1 nobody nobody 5.8K Feb 22 02:37 style-057c3df0-00011.css
-rw-r--r-- 1 nobody nobody 5.8K Feb 22 02:37 style-95001864-00002.css
-rw-r--r-- 1 nobody nobody 5.8K Feb 18 05:37 style-b1879ba7-00002.css
-rw-r--r-- 1 nobody nobody 5.8K Feb 18 05:37 style-cc2f96c9-00011.css
Просто так запутанно, поэтому любая помощь очень, очень ценится!
Спасибо
1 ответ
Это сбивает с толку пытаться понять, в чем ваша проблема, вы не даете понять, проверяете ли вы файл на web1 на web1, или db1 на web1, или что-то еще. Пожалуйста, дайте хорошее описание того, что вы на самом деле видите, не путая проблему с копированием и chmoding. Что-то простое, например, я создаю файл на db1, с разрешениями x:y и на web1. Я вижу разрешения a:b, а на web2 я вижу разрешения c:d.
Во-первых, при использовании NFS любой файл, которым владеет root, обычно является общим, так что он никем не принадлежит. Это означает, что если у вас есть root на клиентском компьютере, у вас фактически нет root на сервере. Я думаю, это объясняет кое-что из того, что вы видите.
Во-вторых, если вы работаете с NFS, очень важно, чтобы отображения userid->username были одинаковыми на всех серверах. Файловые системы Unix хранят только числовые идентификаторы для идентификатора пользователя и идентификатора группы, которые затем сопоставляются с именами пользователей такими программами, как ls. Вы уверены, что они все синхронизированы? Возможно, у вас несоответствие.
Наконец, tar p - это опция для распаковки, а не создания tars. Он игнорируется при создании таров, и даже когда он используется, он не собирается устанавливать право собственности на то, чем они были изначально. -p в основном означает, игнорировать Umask. Tar будет создавать файлы, принадлежащие только вам, если вы не root.