2012-02-01 81 views
7

什麼是/限制是指什麼?ulimit的含義硬(-H)和軟(-S)

核心文件大小的差異,例如:
ulimit -Sc 1024ulimit -Hc 1024

我通常把我的腳本運行ulimit -c unlimited二進制之前。
但是,我想限制文件大小以避免磁盤已滿。
然後我想知道的最佳方式:

ulimit -Sc 1024 # Soft 
ulimit -Hc 1024 # Hard 
ulimit -c 1024 # Both 

另請教:怎麼樣的價值?
ulimit -c 1024或​​還是別的?

回答

5

硬限制通常旨在由系統管理員設置爲他們在少數用戶使用時可以使用的最大值。

軟限制通常由系統管理員設置爲他們想要大多數時間使用的值大家都在使用。 (考慮soft_limit * number_of_users ==幾乎所有的可用資源,留下足夠的空間用於root清理任何需要完成的工作,以及那些知道如何擺脫硬限制的用戶來推動邊界的工作。將會提供非常接近軟限制的硬限制。)

如果這是您第一次照顧,我只需設置軟限制。這使您有機會在同一會話中完全提出或刪除它們,而無需您終止該終端及其所有子項。

我相信核心大小的限制是以字節爲單位的,所以102410240對於除了silliest programs以外的所有其他人來說太小了。對於絕大多數程序來說,我會從$((100 * 1024 * 1024))開始,但如果我知道該程序非常龐大(Firefox),我仍然會選擇更大的程序。

+1

我認爲這也是一個很好的問題,但我必須等待幾個小時才能獲得新的一票 - 你每天只能得到40票。抱歉。 – sarnold 2012-02-01 10:45:24