Install incron
Type the following command under RHEL / Fedora / CentOS Linux:$ sudo yum install incron
Type the following command under Debian / Ubuntu Linux:
$ sudo apt-get install incron
Configuration Files
- /etc/incron.conf - Main incron configuration file
- /etc/incron.d/ - This directory is examined by incrond for system table files. You should put all your config file here as per directory or domain names.
- /etc/incron.allow - This file contains users allowed to use incron.
- /etc/incron.deny - This file contains users denied to use incron.
- /var/spool/incron - This directory is examined by incrond for user table files which is set by users running the incrontab command.
incron Syntax
The syntax is as follows:Where,options /var/www/html IN_CREATE /root/scripts/backup.sh /sales IN_DELETE /root/scripts/sync.sh /var/named/chroot/var/master IN_CREATE,IN_ATTRIB,IN_MODIFY /sbin/rndc reload
- It is nothing but path which is an absolute filesystem path such as /home/data. Any changes made to this path will result into command or action. - IN_ACCESS - File was accessed (read)
- IN_ATTRIB - Metadata changed (permissions, timestamps, extended attributes, etc.)
- IN_CLOSE_WRITE - File opened for writing was closed
- IN_CLOSE_NOWRITE - File not opened for writing was closed
- IN_CREATE - File/directory created in watched directory
- IN_DELETE - File/directory deleted from watched directory
- IN_DELETE_SELF - Watched file/directory was itself deleted
- IN_MODIFY - File was modified
- IN_MOVE_SELF - Watched file/directory was itself moved
- IN_MOVED_FROM - File moved out of watched directory
- IN_MOVED_TO - File moved into watched directory
- IN_OPEN - File was opened
- The IN_ALL_EVENTS symbol is defined as a bit mask of all of the above events.
- Run command or scripts when mask matched on given directory. - options - It can be any one of the following with command (i.e. you can pass it as arg to your command):
- $$ - dollar sign
- $@ - watched filesystem path (see above)
- $# - event-related file name
- $% - event flags (textually)
- $& - event flags (numerically)
Turn Service On
Type the following command:# service incrond start
# chkconfig incrond on
Examples:
Type the following command to edit your incrontabincrontab -e
Run logger command when file created or deleted from /tmp directory:
/tmp IN_ALL_EVENTS logger "/tmp action for $# file"
Save and close the file. Now cd to /tmp and create a file:
$ cd /tmp
$ >foo
$ rm foo
No comments:
Post a Comment