Pyinotify - ตรวจสอบการเปลี่ยนแปลงระบบไฟล์แบบเรียลไทม์ใน Linux
Pyinotify เป็นโมดูล Python ที่เรียบง่ายแต่มีประโยชน์สำหรับการตรวจสอบการเปลี่ยนแปลงระบบไฟล์แบบเรียลไทม์ใน Linux
ในฐานะผู้ดูแลระบบ คุณสามารถใช้มันเพื่อตรวจสอบการเปลี่ยนแปลงที่เกิดขึ้นกับไดเร็กทอรีที่น่าสนใจ เช่น ไดเร็กทอรีเว็บหรือไดเร็กทอรีที่จัดเก็บข้อมูลแอปพลิเคชัน และอื่นๆ
การอ่านที่แนะนำ: fswatch – ตรวจสอบไฟล์และการเปลี่ยนแปลงไดเร็กทอรีหรือการแก้ไขใน Linux
ขึ้นอยู่กับ ไม่แจ้งเตือน (คุณลักษณะเคอร์เนล Linux ที่รวมอยู่ในเคอร์เนล 2.6.13) ซึ่งเป็นตัวแจ้งเตือนที่ขับเคลื่อนด้วยเหตุการณ์ การแจ้งเตือนจะถูกส่งออกจากพื้นที่เคอร์เนลไปยังพื้นที่ผู้ใช้ผ่านการเรียกของระบบสามครั้ง
วัตถุประสงค์ของ pyinotiy คือการผูกการเรียกของระบบทั้งสามรายการ และสนับสนุนการใช้งานที่นอกเหนือไปจากนั้น โดยให้วิธีการทั่วไปและเป็นนามธรรมในการจัดการกับฟังก์ชันการทำงานเหล่านั้น
ในบทความนี้ เราจะแสดงวิธีการติดตั้งและใช้ pyinotify ใน Linux เพื่อตรวจสอบการเปลี่ยนแปลงหรือแก้ไขระบบไฟล์แบบเรียลไทม์
การพึ่งพาอาศัยกัน
ในการใช้ pyinotify ระบบของคุณต้องทำงานอยู่:
- เคอร์เนล Linux 2.6.13 หรือสูงกว่า
- Python 2.4 หรือสูงกว่า
วิธีการติดตั้ง Pyonotify ใน Linux
เริ่มต้นด้วยการตรวจสอบเวอร์ชันของเคอร์เนลและ Python ที่ติดตั้งบนระบบของคุณดังนี้:
uname -r
python -V
เมื่อเป็นไปตามการขึ้นต่อกัน เราจะใช้ pip เพื่อติดตั้ง pynotify ในลีนุกซ์ส่วนใหญ่ Pip จะถูกติดตั้งไว้แล้ว หากคุณใช้ไบนารี่ Python 2 >=2.7.9 หรือ Python 3 >=3.4 ที่ดาวน์โหลด จาก python.org หรือติดตั้งดังนี้:
yum install python-pip [On CentOS based Distros]
apt-get install python-pip [On Debian based Distros]
dnf install python-pip [On Fedora 22+]
ตอนนี้ให้ติดตั้ง pyinotify ดังนี้:
pip install pyinotify
มันจะติดตั้งเวอร์ชันที่มีอยู่จากพื้นที่เก็บข้อมูลเริ่มต้น หากคุณต้องการมี pyinotify เวอร์ชันเสถียรล่าสุด ให้พิจารณาทำการโคลนพื้นที่เก็บข้อมูล git ดังที่แสดง
git clone https://github.com/seb-m/pyinotify.git
cd pyinotify/
ls
python setup.py install
วิธีใช้ pyinotify ใน Linux
ในตัวอย่างด้านล่าง ฉันกำลังติดตามการเปลี่ยนแปลงใดๆ ในไดเร็กทอรีโฮม (/home/tecmint) ของผู้ใช้ tecmint ในฐานะผู้ใช้รูท (เข้าสู่ระบบผ่าน ssh) ดังที่แสดงในภาพหน้าจอ:
python -m pyinotify -v /home/tecmint
ต่อไป เราจะคอยติดตามการเปลี่ยนแปลงใดๆ ในสารบบเว็บ (/var/www/html/linux-console.net):
python -m pyinotify -v /var/www/html/linux-console.net
หากต้องการออกจากโปรแกรม เพียงกด [Ctrl+C]
หมายเหตุ: เมื่อคุณเรียกใช้ pyinotify โดยไม่ระบุไดเร็กทอรีใด ๆ ที่จะตรวจสอบ ไดเร็กทอรี /tmp
จะได้รับการพิจารณาตามค่าเริ่มต้น .
ค้นหาเพิ่มเติมเกี่ยวกับ Pyinotify บน Github: https://github.com/seb-m/pyinotify
นั่นคือทั้งหมดที่สำหรับตอนนี้! ในบทความนี้ เราได้แสดงวิธีการติดตั้งและใช้ pyinotify ซึ่งเป็นโมดูล Python ที่มีประโยชน์สำหรับการตรวจสอบการเปลี่ยนแปลงระบบไฟล์ใน Linux
คุณเคยเจอโมดูล Python ที่คล้ายกันหรือเครื่องมือ/ยูทิลิตี้ Linux ที่เกี่ยวข้องบ้างไหม? แจ้งให้เราทราบในความคิดเห็น บางทีคุณอาจถามคำถามที่เกี่ยวข้องกับบทความนี้ได้เช่นกัน