Як змусити конкретні дозволи для нових файлів / папок на файловому сервері Linux?


14

У мене виникла проблема зі встановленням Ubuntu 9.10 (файловий сервер) та його дозволами на самбу. Вхід у систему та читання добре працює. Однак створення нових каталогів користувачами обмежує доступ для інших користувачів. Наприклад, якщо Боб (користувач Windows, який картає накопичувач) створює папку в каталозі, Джейн (користувач Mac, який просто монтує smb) може читати з неї, але не може писати в неї - і навпаки. Тоді я повинен зайти в каталог CHMOD 777, щоб усі були щасливі. Я спробував редагувати параметри "create / directory mask" та "force" у файлі smb.conf, але це, здається, не допомагає.

Я збираюся вдатися до CRONTABing рекурсивної рутини chmod, хоча я впевнений, що це не виправлення. Як змусити всіх нових елементів завжди бути 777? Хтось має пропозиції виправити цю ситуацію, що постійно виникає?

Найкраще


Групи користувачів та інші дозволені джерела, не chmod 777.
Warner

Відповіді:


13

Зазвичай я використовую нативну функціональність SAMBA для дозволів та управління групами на акціях. Наприклад..

force user=user1
force group=sharedgroup
create mask=775

Ви б вказали ці налаштування під загальним доступом. Обов'язково перезавантажте SAMBA після зміни конфігурації, що можна зробити за допомогою скрипта init.


1
Але в публікації сказано, що він це зробив, і це не спрацювало ....
Mistiry

2
Тоді він зробив це неправильно. Це працює.
Warner

Я не впевнений, що сталося. Я спробував це вручну та через Webmin безрезультатно. Можливо, мій вибір групи невірний? Я спробував використовувати «користувачів», а також різні групи, створені вручну, усі з яких були учасниками. Незалежно від того, що я роблю, користувачі не можуть маніпулювати тим, що вони не розміщували. Єдине "рішення" полягає в тому, щоб усі користувачі увійшли (або змонтували) як GUEST, що створює плутанину.
humble_coder

SAMBA використовує комбінацію дозволів і параметрів файлової системи в налаштуваннях. Якщо користувачам write listзаборонено писати в конфігурації спільного доступу чи іншим способом, це не працюватиме. Якщо користувач, яким працює SAMBA, не в змозі отримати доступ до каталогів, він не працюватиме. Користувачі повинні бути членами відповідної групи, довідники та файли повинні належати цій групі та встановити для групи біт для запису. Ви також можете перевірити журнали SAMBA.
Warner

2
Я довго шукав цього! Спасибі! :) Працює як очікувалося.
NagyI

2

Встановіть дозволи в каталозі 2777, як це:

chmod 2777 /shared/dir

Це призводить до того, що всі файли і папки в каталозі '/ shared / dir' успадковують дозволи верхнього каталогу, в цьому випадку 777.

Після цього зробіть це, щоб усі файли мали належні дозволи:

chmod -R 777 /shared/dir

Про єдину ситуацію, коли прийнятна для публічного дозволу, це с /tmp.
Уорнер

1
Так, напевно, краще використовувати 774 або навіть 770, залежно від ситуації. Але він запитав, як зробити їх усіма "777", тому я просто використав це на своєму прикладі.
Містірі

3
Так, але як я можу забезпечити, щоб усі майбутні файли, скопійовані в цей каталог через мережу, отримували однакові дозволи незалежно від їх початкових дозволів? У мене немає проблем, коли це робити вручну, я просто хочу, щоб це було автоматизовано.
humble_coder

2
Це не працює. Встановлений прапор для папок встановлює групу нових файлів і папок, не має дозволів, і запускаючи chmod весь час неприпустимо. Мені потрібно рішення, яке не пов'язане з samba, для Steam в Linux, щоб я міг поділитися бібліотекою між користувачами.
Сем Уоткінс

2

Я розумію, що це давнє питання, але нещодавно у мене виникло подібне питання, і ось, як я його вирішив:

[поділитися]
захисна маска = 0770
створити маску = 0770
режим створення сили = 0660
коментар = Поділитися Samba для ІТ
шлях = / рейд / частка
для перегляду = ТАК
гість ок = ні
написати список = root, @ "DOMAIN + it_nfs"
сила групи = DOMAIN + it_nfs

Це гарантує, що користувачі повинні знаходитись у групі безпеки "it_nfs" в AD, всі файли будуть записані з групою "it_nfs", а всі файли будуть записуватися щонайменше з 0660 і не більше 0770 perms. Примусовий ідентифікатор групи гарантує, що будь-хто в цій групі може читати / записувати файли у спільній доступності. В іншому випадку ви стикаєтесь із ситуаціями, коли файл, записаний як bob: bob, не може бути написаний charlie: charlie, хоча вони обидва знаходяться у "it_nfs".


0

З коментарів прийнятої відповіді це фактично не вирішило проблему ОП, а також інші відповіді, якщо в ОП трапилася така ж проблема, як і я:

Має частку в розділі NTFS / FAT.

Пам'ятайте це , коли підключити ваш настільний диск до NAS для спільного використання ваших сімейних альбомів: ФС монтувати Params для користувача, груп, створювати режими і т.д. перевизначення незалежно налаштований для Samba! ;)

(Наприклад, у моєму випадку, незалежно від smb.confусього створеного root, з 777- відповідно до fstab defaultsдля кріплення запобіжника NTFS ...)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.