Задача распространенная - разрешить всем пользователям писать в каталог, но запретить удалять чужое (удаляеть можешь только то что создал)
Использую stiky-бит на каталог. Проблема в том что если в уже этом каталоге создается другой каталог, то из него опять могут удалять все.
Пробую решить вопрос так - хочу по крону раз в минуту проверять не создавались ли новые каталоги и если да - то ставить на них stiky-бит.Пока дошел до того что вывожу список подкатологов в каталоге /data
ls -R /data | grep /data/ | cut -f1 -d':'
Как определить какой из них не имеет stiky-бита и поставить этот бит на него не представляю.
Подскажите, пож. Или может есть более красивое решение..
искать каталоги find -ом и ставить бит принудительно через -exec chmod xxxxxx.
а вообще в настройках самбы есть маски создания (create mask) или create mode
>искать каталоги find -ом и ставить бит принудительно через -exec chmod xxxxxx.
>
>а вообще в настройках самбы есть маски создания (create mask) или create
>modeМаски никак не катят. Если есть доступ к каталогу по записи - он есть и по удалению. А stiky-бит, вроде-как пишут, может поставить только root. Samba же не от рута работает.
Спасибо - попробую
$ ll -d temp
drwxr-xr-x 3 angra angra 4096 Янв 15 06:12 temp
$ chmod +t temp
$ ll -d temp
drwxr-xr-t 3 angra angra 4096 Янв 15 06:12 temp
Неужели так сложно было проверить? Теперь самостоятельно проверьте работу высшего октета в force масках в самбе.
Добавил строчку в crontab*/1 * * * * root find /MyDir/ -type d -Bmin -2 -exec chmod +t '{}' ';'
Посмотрим как в полевых испытаниях покажет себя.
>Добавил строчку в crontabправильнее использовать incron
>правильнее использовать incronСпасибо, гляну, никогда не пробовал. У меня правда FreeBSD, аналог называется вроде как kqueue. Знания лишними никогда не бывают