Online video hd

Смотреть мама и сын видео

Официальный сайт radikalno 24/7/365

Смотреть видео бесплатно

Murz 17.06.2009 18:36

Есть вопрос!Настройка общей папки nfs с правами записи для всех

Имеется сеть из 8 компьютеров и 1 сервера (Debian). На каждом из компьютеров стоит Linux (Kubuntu 9.04) и прописаны какие-то пользователи, т.е. общей авторизации через сервак нет. Итого для юзера Murz на одном компе может быть uid 1002, на другом - 1007.



Требуется: подмонтировать всем 1 общую папку, чтобы каждый имел полные права на все файлы в ней, т.е. чтение и запись, т.е. один создал новый файл, сохранил, а другой - может поправить.



Всё это конешно может и проще решить через Samba, но это вроде как не unix-way, да и пишут что nfs более удобен и надёжен в данном случае.



Пока добился того, что папка видна всем с правами на чтение и запись, но владельцем файлов является "левый" юзер, а надо бы чтобы владельцем был именно тот, кто сейчас читает файл.



На сервере прописано в /etc/exports:

1
/var/storage/exchange 192.168.1.0/24(anonuid=65534,sync,anongid=65534,all_squash,rw)





На клиентах подключаю так в /etc/fstab:

1
srv:/var/storage/exchange      /mnt/exchange       nfs     user    0       0





Но в итоге на подключенной папке я вижу "левого" владельца, uid которого совпадает с uid юзера на текущем компе.

Т.е., например, на сервере у пользователя murz uid=1002.

На клиенте - uid=1002 - юзер vasya. А пытается записать в папку юзер petya с uid=1001. В итоге открываешь файл из папки, например OpenOffice-ом, он его читает а сохранить не может. Но зато можно сохранить в свою папку и потом ручками скопировать поверх старого.



Я вижу 2 пути выхода из данной проблемы:

1. Сделать чтобы все файлы всегда в этой папке создавались с правами записи для группы.

2. Заставить nfs-клиента подменять владельца файла на текущего владельца.



Но оба способа никак не заработают, т.к. не найду подходящих опций для nfs.



Поэтому прошу сообщество заспамить меня советами ;)


Тэги: mount nfs
+ 0 -
Похожие Поделиться

umka_ssw 17.06.2009 19:00 #
+ 0 -
Второе решение тянет на "заплаточное".
А первый путь как раз самый что ни на есть "unix-way". Нефиг на зверьё заморачиваться -- сразу пачками рулить надо.
Думаю, и этим оптимизация не закончится. Самому лень щас копать, но NFS должен что-то подобное уметь сам.
Murz 17.06.2009 19:25 #
+ 0 -
В первом варианте получится бардак из владельцев файлов, т.к. nfs работает с uid, а на сервере и на клиентах не совпадают эти uid у пользователей, т.е. создал файл Федя, а на серваке владельцем станет Вася. Так что тоже не особо незаплаточное решение.
Самое правильное из решений - сделать общую базу пользователей и аутентификацию через сервак, но проблема в том что у каждого компьютер свой и владельцы не захотят авторизовываться через сервак.
А вот где и как NFS может подменять или допроставлять права на файлы - я рылся долго, но ничего не нашёл.
xT 17.06.2009 19:21 #
+ 0 -
Где-то тут были темы про acl
Murz 17.06.2009 19:29 #
+ 0 -
Про acl тема была вот эта: http://welinux.ru/post/372/
Но в ней в итоге после всего сказанного остается та же проблема, цитирую:
Вроде все, за исключением одного НО. Права автоматически не назначаются на копируемые и перемещаемые файлы. Я так и не смог разобраться почему. Похоже что так просто задумано.

Так что если найдётся решение через ACL, то оно поможет обоим топикам ;)
Username 17.06.2009 19:25 #
+ -1 -
а нельзя сделать фиктивного сетевого юзера, права которого автоматом имеют все юзеры сети?
да, и самба - говно и не тру.
Murz 17.06.2009 19:35 #
+ 0 -
Ну фиксированный юзер уже впринципе есть на системах, например root или nobody, у всех систем (по крайней мере если дистриб из одной и той же ветки) uid этих пользователей должен совпадать.
Остается только как-то заставить систему чтобы активный пользователь мог читать, писать и создавать файлы с правами этого юзера. Не заставишь же всех сидеть под nobody ради общей шары :)
Username 17.06.2009 19:38 #
+ -1 -
nobody и рута как-то ну просто неправильно совсем было бы использовать
FalleN 17.06.2009 19:45 #
+ 0 -
Думаю, что 1й пункт и umask
cppmm 17.06.2009 20:59 #
+ 0 -
Строка из фалй аexports, приведённая Вами подменяет uid и gid только если удалённый пользователь - это root. Т.е. в данной конфигурации надо сдлеать так, чтобы в сеть все клиенты выходили от имени root'а(к примеру, поиграться на клиентских машинах с sudo). Но есть опция all_squash, которая должна подменять любые uid/gid на анонимный. Правда, это вариант я не проверял ни разу.
Ну а вообще, самый правильный способ - это, конечно централизованная аутентификация.
cppmm 17.06.2009 21:02 #
+ 0 -
Блин. Невнимательность меня погубит. :) У Вас и так стоит all_squash. Я почему-то решил, что root_squash. Но суть та же. anonuid/anongid подменяют только рутовский id, т.е. "0".

Смотреть онлайн бесплатно

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн