Сисадмин-любитель (ulrith) wrote,
Сисадмин-любитель
ulrith

nfs umask

Как и обещал, рассказываю про тернистый путь создания разделяемой сетевой папки по протоколу NFS, которым я успешно пришёл к счастливому финалу.

Необходимость организации такого общего ресурса следовала вот из каких соображений:
1) когда почти все рабочие места работают под Linux, организовывать общий ресурс на базе Windows-протоколов (SMB или Samba) не только глупо, но и безрассудно, если учесть тот факт, что всё это хозяйство подключено к дикому интернету, из которого на общие Samba-папки туд же лезут злые (и добрые) вирусы и хакиры;
2) примерно одновременно с появлением языка C и Unix на свет появилась и Network File System (NFS), а значит ничего более естественного для указанных целей просто не найти.

Ставить Open Solaris на Sunчег я, признаюсь, заленилсо (уж больно перректально он ставиццо на SPARC-ах). Но вот Solaris 10 я переустановил, выбрав файловой системой тот самый хвалёный ZFS, а затем запустил на нём NFS-сервер и создал разделяемую папку, которая прекрасно монтируеццо на клиентах строчкой в файле /etc/fstab.

Вроде бы всё, но нет, оказалось что пользоваццо такой системой неудобно. Основная проблема - это то, что создаваемые пользователями в общей папке файлы получаются с правами 755, т.е. коллегам они доступны только в режиме чтения! Дурдом, да? Оказалось что считаю так не я один. А даже наоборот - весь мир об этом стонет уже давно. И, как ни странно, решения на уровне настройки nfs-сервера, похоже, до сих пор не существует. Хотелось бы услышать мнение продвинутого unix-гуру, почему...

Почему именно 755? Потому что так гласит параметр umask, который глобально задаёт умолчальные права создаваемых файлов по всей системе. Задать другие умолчальные права для отдельного каталога нельзя! Эта особенность тоже вызывает вопросы... В общем, пришлось мне менять umask на всех системах так, чтобы новые файлы создавались с правами 770/660, т.е. по умолчанию открывали полный доступ не только своему создателю, но и всем членам группы.

Группу тоже пришлось создавать на всех компьютерах - да ещё и следить, чтобы её числовые идентификаторы на разных машинах совпадали (а не только название). Вообще-то последняя проблема исчезает при использовании авторизации по сети (NIS), но её настраивать я тоже заленилсо - не тот масштаб пока, оставим на будущее.

Другая проблема возникала, если пользовательский компьютер загружалсо раньше файлового сервера - в этом случае статическое монтирование в файле /etc/fstab не срабатывало и нужно было перезагружаццо опять. Эта препона была преодолена устанофкой сервиса autofs, который автоматически монтирует общую папку при обращении к ней.

По результатам первого месяца эксплуатации, NFS-сервер на Sun Ultra 10 под Solaris 10 работает как часы-болид Формулы 1.

Спасибо за внимание.
Tags: unixway
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 5 comments