บน Linux รวมถึง CentOS คำสั่ง stat สามารถบอกรายละเอียดของไฟล์ที่เรากำลังสนใจได้ อาทิเช่น
- ขนาดไฟล์
- วันที่ เวลา สร้างไฟล์ เข้าถึงไฟล์ แก้ไขไฟล์
- UID (User ID ใครเป็นเจ้าของไฟล์นี้
- GUID (Group User ID กรุ๊ปไหนที่เป็นเจ้าของไฟล์นี้)
- ชนิดของไฟล์
ลองดูตัวอย่างการใช้คำสั่ง stat ดูครับ ผมจะเช็คว่ามีใครเข้ามาทำอะไรไฟล์ในโฟลเดอร์ /etc/asterisk หรือไม่ ผมก็ใช้คำสั่ง stat ตามด้วยชื่อโฟลเดอร์ /etc/asterisk แบบนี้ครับ
- โค้ด: เลือกทั้งหมด
stat /etc/asterisk
ซึ่งก็จะให้ผลลัพธ์ประมาณด้านล่างนี้
- โค้ด: เลือกทั้งหมด
File: /etc/asterisk
Size: 12288 Blocks: 24 IO Block: 4096 directory
Device: 803h/2051d Inode: 6818503 Links: 2
Access: (0775/drwxrwxr-x) Uid: ( 997/asterisk) Gid: ( 994/asterisk)
Access: 2019-05-19 09:25:28.649489321 +0700
Modify: 2019-05-18 15:56:47.926332422 +0700
Change: 2019-05-18 15:56:47.926332422 +0700
Birth: -
File: /etc/asterisk ดูทั้งโฟลเดอร์
Size: 12288 คือขนาดของทุกไฟล์ในโฟลเดอร์ /etc/asterisk รวมกัน ก็ประมาณ 1.2 M ครับ ค่านี้ดูจากคำสั่ง "du -h /etc/asterisk" ก็ได้
Blocks: 24
IO Block: 4096
directory เป็นไดเร็คตอรี่ (โฟลเดอร์)
Device: 803h/2051d
Inode: 6818502
Links: 2
Access: 2019-05-19 09:25:28.649489321 +0700
Modify: 2019-05-18 15:56:47.926332422 +0700
Change: 2019-05-18 15:56:47.926332422 +0700
Birth: -
ดู 3 บรรทัดนี้ครับ Access Modify และ Change ผมลองเปิดไฟล์ /etc/asterisk/asterisk.conf ขึ้นมา เปิดเฉยๆแล้วก็ปิดไฟล์ ไม่ได้แก้ไขข้อมูลอะไรเลย ตรวจสอบ stat ใหม่ ได้ผลเป็นแบบนี้
Access: 2019-05-19 09:25:28.649489321 +0700
Modify: 2019-05-19 09:45:35.005180563 +0700
Change: 2019-05-19 09:45:35.005180563 +0700
พบว่าค่า Modify และ Change เปลี่ยนไปครับ
ด้วยหลักการนี้ เราก็รู้แล้วว่าไฟล์ถูกเปิดครั้งล่าสุดตอนไหน ถ้าเราอยากให้มีการแจ้งเตือนแบบ realtime ก็เขียนสคริปต์ให้เช็ค stat ทุก 1 นาทีหรือเร็วกว่านี้ก็ได้ แล้วแจ้งทาง email sms line ... หรือช่องทางอื่น
ตัวอย่างข้างบนผมเช็คทั้งโฟลเดอร์ /etc/asterisk ถ้าเราจะเช็คไฟล์บางไฟล์ก็ให้ระบุชื่อไฟล์ได้เลยครับ ดังตัวอย่างนี้
[root@issabel ~]# stat /etc/asterisk/sip_additional.conf
File: /etc/asterisk/sip_additional.conf
Size: 418 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d Inode: 6818770 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 997/asterisk) Gid: ( 994/asterisk)
Access: 2019-05-19 09:25:28.654489299 +0700
Modify: 2019-05-19 09:25:28.631489398 +0700
Change: 2019-05-19 09:25:28.631489398 +0700
ลองประยุกต์ใช้งานดูครับ