Yanıtlar:
Biraz araştırma yaptıktan sonra çözüm bulundu. Aşağıdaki komutu çalıştırın.
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Arch Linux için bu satırı /etc/sysctl.d/99-sysctl.conf dosyasına ekleyin:
fs.inotify.max_user_watches=524288
fs.inotify.max_user_watches=524288için /etc/sysctl.d/99-sysctl.confve daha sonra yürütün sysctl --system. Bu aynı zamanda yeniden başlatmalarda da devam edecektir. Daha fazla bilgi için: wiki.archlinux.org/index.php/Sysctl
npm dedupebenim için temizledi. sorunu
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf "524288 = fs.inotify.max_user_watches" çizgi /etc/sysctl.conf dosyanın sonuna yazıyor sudo sysctl -p parametre olarak dosya /etc/sysctl.conf yüklenirken, çalışma zamanında çekirdek yeniden yapılandırır
Bir sudo something ...şeyi düzeltmek için koşmanız gerektiğinde, neler olduğunu düşünmek için duraklamalısınız. Burada kabul edilen cevap mükemmel bir şekilde geçerli olsa da, sorunu değil semptomu tedavi ediyor. Sorta sorunu çözmek için daha büyük heybe satın alma eşdeğeri: hata, midilli üzerine daha fazla çöp yükleyemezsiniz. Midilli çok fazla çöp içeriyor, midilli bitkinlikle bayılıyor.
Bir alternatif (belki de fazla çöpü midilliden çıkarmak ve çöp kutusuna yerleştirmekle karşılaştırılabilir) çalıştırmaktır:
npm dedupe
O zaman midilli mutlu ettiğin için kendini tebrik et.
sudove şimdi benim için çalışıyor.
fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -pkabul edilen cevapta olduğu gibi, ama bana öğretmek için +1npm dedupe
El bombasının cevabını denedikten sonra geçici bir düzeltme kullanabilirsiniz:
sudo bash -c 'echo 524288 > /proc/sys/fs/inotify/max_user_watches'
Bu, kds'nin cevabı ile aynı şeyi yapar , ancak değişikliklere devam etmeden. Bu hata, yalnızca sisteminizin bir süre çalışmadan sonra ortaya çıkarsa yararlıdır.
Kimin inotify örnekleri yaptığını bulmak için şu komutu ( kaynak ) deneyin :
for foo in /proc/*/fd/*; do readlink -f $foo; done | grep inotify | sort | uniq -c | sort -nr
Benimki şöyle görünüyordu:
25 /proc/2857/fd/anon_inode:inotify
9 /proc/2880/fd/anon_inode:inotify
4 /proc/1375/fd/anon_inode:inotify
3 /proc/1851/fd/anon_inode:inotify
2 /proc/2611/fd/anon_inode:inotify
2 /proc/2414/fd/anon_inode:inotify
1 /proc/2992/fd/anon_inode:inotify
Kullanarak ps -p 28572857 sürecini tanımlayabildim sublime_text. Sadece tüm yüce pencereleri kapattıktan sonra düğüm betiğimi çalıştırabildim.
İstemci bilgisayarım çöktükten sonra bu hatayla jest --watchkarşılaştım, sunucuda çalıştırdığım komut devam etti ve jest --watchtekrar çalıştırmayı denedim .
/etc/sysctl.confYukarıdaki cevaplarda açıklanan ek, bu soruna yardımcı oldu, ancak eski sürecimi ps aux | grep nodeve bulmak için de önemliydi kill.
Benim durumumda Linux makinemde çalışan vs-kodu ile ilgiliydi. Ben dosya izleyici bla bla hakkında ortaya çıkan bir uyarı görmezden geldi. Çözüm, linux için vs-kod belgeleri sayfasında https://code.visualstudio.com/docs/setup/linux#_visual-studio-code-is-unable-to-watch-for-file-changes-in- Bu geniş-çalışma alanı-hatasız enospc
Çözüm, kabul edilen cevaplarla hemen hemen aynıdır (aynı değilse), vs-code'daki sorunlara girdikten sonra buraya gelen herkes için daha fazla açıklamaya sahiptir.
Benim durumumda, Vim için agresif bir eklentiye sahip olduğumu buldum, sadece yeniden başlattım.
gruntancak altında inotify kullanan herhangi bir programa özgüdür . Unix.stackexchange.com/questions/13751/… adresinde iyi bir açıklama var .