ฉันไม่รู้ว่าควรเพิ่มจำนวนนี้หรือไม่
วิธีที่ง่ายในการตรวจสอบว่าmax_user_watches
มูลค่าของคุณคือการใช้inotifywatch
จากแพ็คเกจinotify-tools
และตรวจสอบว่าคุณยังสามารถรวบรวมข้อมูลจากไฟล์ได้หรือไม่
ตัวอย่างเช่นinotifywatch -v /home/bruno/.profile
สำหรับฉันส่งคืน:
Establishing watches...
Total of 1 watches.
Finished establishing watches, now collecting statistics.
ดังนั้นจึงinotify
ไม่มีปัญหาในการสร้างนาฬิกาใหม่ไม่มีปัญหาที่นี่
หากคุณมีการใช้งานนาฬิกาจนเกินขีด จำกัด สูงสุดแล้วระบบจะส่งคืนสิ่งที่ต้องการ
Failed to watch /home/bruno/.profile; upper limit on inotify watches reached!
หากคุณเห็นบางสิ่งเช่นนี้แสดงว่าคุณถึงขีด จำกัด แล้วและจะต้องเพิ่มจำนวนนาฬิกาที่อนุญาต
มันกินแรมมากกว่าหรือไม่
ใช่แล้ว. แต่ตามบทความเก่านี้ปริมาณการใช้น้อยที่สุดเมื่อเทียบกับด้านอื่น ๆ ของเดสก์ทอปที่ใช้งานอยู่
--การใช้ความจำ--
โครงสร้างข้อมูลที่ไม่มีการแบ่งส่วนมีน้ำหนักเบา:
inotify watch คือ 40 ไบต์อุปกรณ์ inotify คือ 68 ไบต์เหตุการณ์ inotify คือ 272 ไบต์
ดังนั้นถ้าอุปกรณ์มีนาฬิกา 8192 ตัวโครงสร้างจะใช้หน่วยความจำ 320KB เท่านั้น ด้วยจำนวนสูงสุด 8 อุปกรณ์ที่อนุญาตให้มีอยู่ในแต่ละครั้งจึงยังคงเป็นเพียง 2.5 MB
อุปกรณ์แต่ละเครื่องยังสามารถมีกิจกรรมเข้าคิวได้ 256 เหตุการณ์ในแต่ละครั้งซึ่งรวมถึง 68KB ต่ออุปกรณ์ และเพียง. 5 MB หากอุปกรณ์ทั้งหมดเปิดและมีคิวเหตุการณ์เต็ม
ดังนั้นหน่วยความจำประมาณ 3 MB จะถูกใช้ในกรณีที่หายากของทุกสิ่งที่เปิดและเต็ม
นาฬิกา inotify แต่ละตัวจะยึด inode ของไดเรคทอรี / ไฟล์ในหน่วยความจำขนาดของ inode นั้นแตกต่างกันไปตามระบบไฟล์ แต่สมมติว่ามันมีขนาด 512 ไบต์
ดังนั้นสมมติว่าจำนวนนาฬิกาทั่วโลกมีการใช้งานสูงสุดสิ่งนี้จะลดขนาด inodes ลง 32 MB ในแคชของ inode อีกครั้งไม่เป็นปัญหาในระบบที่ทันสมัย
ฉันแน่นอนว่าสิ่งต่าง ๆ ไม่เปลี่ยนแปลงมากนักเนื่องจากบทความเขียนขึ้น แต่การดูตัวเลขที่ฉันไม่ต้องกังวลและการเพิ่มขีด จำกัด จะไม่เพิ่มปริมาณการใช้ RAM มากขึ้น
โพสต์ที่เกี่ยวข้องเกี่ยวกับ inotify