• inotify---监控文件服务


    简介

    异步的文件系统事件监控机制,利用事件驱动机制,而无须通过诸如cron等的轮询机制来获取事件,
    

    linux内核从2.6.13起支持 inotify,通过inotify可以监控文件系统中添加、删除,修改、移动等各种事件
    inotify是内核级的功能,用于监控文件的变化

    支持的内核参数(生产中可调整这些值)

    [root@jasmine ~]#ls -l /proc/sys/fs/inotify/
    

    total 0
    -rw-r--r-- 1 root root 0 Dec 29 12:53 max_queued_events
    -rw-r--r-- 1 root root 0 Dec 29 12:53 max_user_instances
    -rw-r--r-- 1 root root 0 Dec 29 12:53 max_user_watches

    inotify的主要工具

    inotifywait(主要使用),监控文件的属性和其他操作
    inotifywatch
    

    inotifywait的选项

    -m, --monitor 始终保持事件监听
    -d, --daemon 以守护进程方式执行,和-m相似,配合-o使用
    -r, --recursive 递归监控目录数据信息变化
    -q, --quiet 输出少量事件信息
    --exclude 指定排除文件或目录,使用扩展的正则表达式匹配的模式实现
    --excludei 和exclude相似,不区分大小写
    -o, --outfile 打印事件到文件中,相当于标准正确输出,注意:使用绝对路径
    -s, --syslogOutput 发送错误到syslog相当于标准错误输出
    --timefmt 指定时间输出格式
    --format 指定的输出格式;即实际监控输出内容
    -e 指定监听指定的事件,如果省略,表示所有事件都进行监听

        inotifywait -e 选项指定的事件类型(添加多项用逗号隔开)
            create 文件或目录创建
            delete 文件或目录被删除
            modify 文件或目录内容被写入
            attrib 文件或目录属性改变
            close_write 文件或目录关闭,在写入模式打开之后关闭的
            close_nowrite 文件或目录关闭,在只读模式打开之后关闭的
            close 文件或目录关闭,不管读或是写模式
            open 文件或目录被打开
            moved_to 文件或目录被移动到监控的目录中
            moved_from 文件或目录从监控的目录中被移动
            move 文件或目录不管移动到或是移出监控目录都触发事件
            access 文件或目录内容被读取
  • 相关阅读:
    SQLite Select语句的意外发现
    和一个经理人谈话的经典语句
    [转]如何动态增长一个数组的大小
    [转]Spring AOP中文教程
    为Wildfish框架增加方法调用日志[Aspectsharp]
    第四周学习心得
    《大道至简:软件工程实践者的思想》观后感
    第三周学习心得
    暑假第一周Java学习心得
    第二周学习心得
  • 原文地址:https://www.cnblogs.com/luck-pig/p/12115387.html
Copyright © 2020-2023  润新知