[Sarlug] Задача с каталогами.
Evgeny Sinelnikov
sin на info.sgu.ru
Пт Авг 14 14:27:46 MSD 2009
14 августа 2009 г. 11:28 пользователь Sergey Mihailov (sergey.mihailov на gmail.com) написал:
> 14.08.09, Aleksei Sinitsyn<a.sinitsin на gmail.com> написал(а):
>> А обращения mc^W far оно тоже перехватит?
> Это ты про что ? Если про СЕЛинукс то его юзаем уже более 5 лет если что.
>
>> И интересно, как такого
>> рода задачи можно решать правильным путём. ACL?
> Все зависит от того что понимать под словом правильно и конкретной задачи.
> Тама вот ( в задании ) всплыла фраза по одновременый доступ ...
> Мне почему то это сразу представилось в виде сервака с самбой где это делается
> левой ногой ....
Описываю задачу подробно. Для особо одарённых... ;)
Если комп один, на нём лежит файло с музыкой и за компом работают, разные люди под разными пользователями... Например, я, мой брат, жена, дети... ТО это проблем выкатывается явно...
Что хочется?
Чтобы все получили возможность полного права на запись и чтения в любой файл и подкаталог общего каталога...
Я написал, как это делается с помощью группы...
1) Делаем общий каталог и устанавливаем ему группу, добавляем в неё пользователей
2) Задаём ему права 2775
Зачем?
Чтобы писать все могли и группы и sgid чтобы группа выставлялась у вновь созданных файлов и каталогов не пользовательская, а та, что для общего каталога установлена.
3) Начинаем работать под разными пользователями, получаем первый косяк со стандартным umask=0022
В чём косяк ?
Да в том, что я для каждого каталога, который вновь создаётся нужно руками право на запись для группы выставлять.
4) Каким-то волшебным образом (варианты есть разные, обычно в .bashrc прописывается), выставляю umask=0002, каждому пользователю.
5) Всё вроде работает. Но:
а) Если я скопирую файлы с CD или DVD, то, по умолчанию, атрибуты "только на чтение" останутся. И мне придётся их руками править.
б) Если я перемещу какой-либо каталог и другого каталога, созданного не в общем... Ну, например, скопировал музыку на рабочий стол, потом решил переместить... В этом случае sgid выставлен не будет и вся идилия с автоматическим выставлением группы с помощью sgid ломается...
6) Ну, ладно правим руками права доступа... И что? Это же может делать только владелец и рут... Ну, рута мы даём не всем... Получаем, если кто-то скопировал или переместил файлы, и права не установились нужные, то другой (у которого нет рута) это поправить не сможет... потому что права "на установку прав" в unix - нет.. В NTFS есть, кстати... Называется полное право.
Ну, я не говорю про права на удаление и другое... ACL, кстати, тут не помогут... они тоже rwx, только на дополнительный список пользователей и групп... И там тоже есть косяки....
Кроме того, что это сделать сложно и обычному пользователю не доступно... Это ещё и не работает как надо во всех случаях... Вот так... Задача вроде простая, а решить полностью, стандартными средствами нельзя.
PS: Самба здесь, даже на локальной машине - действительно выход... Но какой кривой? Ведь у самбы, есть как раз костыли, которые решают эту проблем форсом, виндовый такой хак, на виндовом таком протоколе с юникс расширениями... Кстати, с самбой, если внутри шары права разные выставлять, а не одни на всю шару, то есть если force user и force group отключить... Вышеописанная проблема с локальным общим каталогом повторяется один в один.
PPS: А знаете в чём большая проблема? Ни у кого это толком не работает, но находятся крикуны, которые говорят как всё круто! И всех создаётся впечатление, что всё и правда круто... А король-то - голый!
--
Sin (Sinelnikov Evgeny)
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : signature.asc
Тип : application/pgp-signature
Размер : 197 байтов
Описание: OpenPGP digital signature
Url : <http://lists.lug.ru/pipermail/sarlug/attachments/20090814/5b912f06/attachment.bin>
Подробная информация о списке рассылки Sarlug