Bilmiyorum, bu sayıyı arttırmalı mıyım?
max_user_watches
Değerinize ulaşıp ulaşmadığınızı kontrol etmenin kolay yolu, kullanıcınızla birlikte inotifywatch
, paketten kullanmak inotify-tools
ve hala bir dosyadan bilgi toplayıp toplayamayacağınızı kontrol etmektir .
Örneğin inotifywatch -v /home/bruno/.profile
benim için döner:
Establishing watches...
Total of 1 watches.
Finished establishing watches, now collecting statistics.
Öyleyse inotify
, yeni bir saat yaratmada sorun yok, burada sorun yok.
Inotify saatler içindeki maksimum limitinize ulaştıysanız, şöyle bir şey döndürür:
Failed to watch /home/bruno/.profile; upper limit on inotify watches reached!
Böyle bir şey görürseniz o zaman sınıra ulaştınız ve izin verilen saat sınırını arttırmanız gerekecek.
Daha fazla RAM tüketiyor mu?
Evet öyle. Ancak bu eski makaleye göre, tükettiği miktar çalışan bir masaüstünün diğer yönleriyle karşılaştırıldığında asgari düzeydedir.
--HAFIZA KULLANIMI--
İnotify veri yapıları hafiftir:
inotify watch 40 bayt inotify cihaz 68 bayt inotify olay 272 bayt
Bir cihazın 8192 saati olduğunu varsayarsak, yapılar sadece 320 KB bellek tüketecekler. Bir seferde var olmasına izin verilen maksimum 8 cihaz sayısıyla bu sadece 2,5 MB
Her bir cihaz, bir seferde kuyruğa alınmış, olay başına 68KB olan 256 olay içerebilir. Ve tüm aygıtların açılması ve tam bir olay kuyruğunun olması durumunda sadece .5 MB
Bu nedenle, nadiren açık ve dolu olan her durumda yaklaşık 3 MB bellek kullanılır.
Her inotify saati, bir dizinin / dosyanın inode'unu bellekte işaretler, bir inode'un büyüklüğü her dosya sistemi için farklıdır, ancak bunun 512 bye olduğunu varsayar.
Bu nedenle, maksimum global saat sayısının etkin olduğunu varsayarsak, bu işlem inode önbelleğindeki 32 MB inode değerini azaltacaktır. Yine modern bir sistemde sorun değil.
Elbette, makale yazıldığı için çok fazla değişmediğini farz ediyorum ama rakamlara bakmak endişelenmeyeceğim ve limiti arttırmak RAM tüketimini artırmayacak.
İlgili yazılar inotify