14 августа 2009 г. 11:28 пользователь Sergey Mihailov (sergey.mihailov@gmail.com) написал: > 14.08.09, Aleksei Sinitsyn написал(а): >>  А обращения 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)