如何修復GitKraken Inotify Limit Error\idea erro - 升級Ubuntu / Linux inotify限制

GitKraken是一個很是優秀的Git客戶端。若是您是軟件開發人員,那麼您絕對應該試試GitKraken。今天我去了個人一個存儲庫作了一些提交,可是GitKraken告訴我它已經獲得了Inotify Limit Error,而且我須要增長這個限制。事實證實這個問題與GitKraken無關,也很容易修復。node

 

 

打開相關存儲庫後,GitKraken顯示了一條包含此消息的通知窗口:git

Inotify Limit Error對此存儲庫禁用文件監視。請增長inotify限制並從新打開此存儲庫。spa

之前GitKraken在打開相同的存儲庫時發出消息,它沒有找到「 Compatible Repository 」,它甚至拒絕打開存儲庫。事實是,存儲庫很好,我使用git作個人提交沒有問題。Inotify Limit可能會對GitKraken產生某種影響,致使GitKraken說它沒法找到兼容的存儲庫。我已經向GitKraken團隊發送了一個查詢,但沒有收到回覆。code

什麼是Inotify?

來自維基百科:blog

Inotify(inode notify)是一個Linux內核子系統,用於擴展文件系統以注意對文件系統的更改,並將這些更改報告給應用程序。索引

一個主要用途是在Beagle這樣的桌面搜索實用程序中,其功能容許從新編制已更改文件的索引,而無需每隔幾分鐘掃描文件系統進行更改,這將是很是低效的。內存

因爲GitKraken自動注意到工做區中文件的變化,顯然它必須在Linux上使用這個子系統。因爲我使用的是Deebin,這適用於我。開發

修改Inotify限制

輸入如下命令:it

$ cat /proc/sys/fs/inotify/max_user_watches
8192

這是您計算機的限制。class

每一個inotify手錶都會消耗適量的內存。在像這樣的64位計算機上,每一個消耗1 KB,所以8,192個手錶消耗大約8 MB的內存。在16GB的主內存計算機上,這是一個降低的桶。

暫時增長限制就是這麼簡單:

# echo 99999 > /proc/sys/fs/inotify/max_user_watches

以後你會獲得這個:

$ cat /proc/sys/fs/inotify/max_user_watches
99999

要進行永久性更改,請fs.inotify.max_user_watches=sysctl設置中進行設置。在某些系統(Debian / Ubuntu / etc)上,這些設置在/etc/sysctl.conf其餘一些系統中,而且在其餘系統中會有一個文件/etc/sysctl.d

編輯sysctl設置後,運行如下命令:

# sysctl -p
fs.inotify.max_user_watches = 99999

把它放在一行:

# echo fs.inotify.max_user_watches=99999 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

或者在某些其餘系統上:

# echo fs.inotify.max_user_watches=99999 | sudo tee /etc/sysctl.d/40-max-user-watches.conf && sudo sysctl --system
相關文章
相關標籤/搜索