Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2009-09-16

inotify-tools

Есть такая полезняшка, inotify-tools. Набор утилит позволяющих отслеживать операции с файловой системой. Например, люди приспосабливают полезняшку эту для перебивания атрибутов файлов в расшаренном каталоге:

Меня давно интересовала тема общего каталога для нескольких пользователей.
Кажется я таки нашёл пресловутый Грааль. :)

Итак, для начала установим пакет inotify-tools, а затем будем использовать inotifywait следующим образом:

inotifywait -mr --format '%w%f' \
-e close_write -e moved_to -e create \
/home/share | while read file; \
do sudo /usr/local/bin/script $file; \
done

Итак, /home/share это общий каталог, при попадании в который, любой файл или каталог должен обрести следующий параметры: принадлежать nobody:users (у меня так, хотя выбор пользователя и группы - дело индивидуальное), /usr/local/bin/script - скрипт, обрабатывающий целевой файл (каталог), следующего содержания:

#!/bin/bash
chown nobody.users "$1"
if [ -d "$1" ]; then
chmod 770 "$1"
elif [ -f "$1" ]; then
chmod 660 "$1"
fi

strannick.blogspot.com/2009/08/obshiy-catalog-dlya-neskolkikh

Там еще комментарии любопытные. Про ACL.


Сцылки дня:

Комментариев нет:

Отправить комментарий

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Manager (15) web-browser (15) Никонов (15) Klaipeda (14) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) serialization (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)