ulimit のハードリミットとは?
ulimit のハードリミットとは、リソースのソフトリミットを引き上げられる最大値です。特権を持たないプロセスは自身のハードリミットを下げることはできますが、決して引き上げることはできないため、そのプロセスとその子プロセスの上限を定めます。ハードリミットを再び引き上げられるのは特権プロセスだけです。
なぜ重要か
CI の build がハードリミットの許す数を超えるファイルを開く必要がある場合、ソフトリミットを引き上げるだけでは足りず、特権でハードリミットを引き上げる必要があります。この違いを知っておくと、一部の上限引き上げに root が必要な理由が分かります。
関連ガイド
What Is a Ulimit Soft Limit?A ulimit soft limit is the currently enforced ceiling on a process resource, such as open files, that a proce…
What Is a File Descriptor Table?A file descriptor table is the per-process list that maps small integer descriptors to the open files, socket…
What Is a Nice Value?A nice value is a priority hint that biases how much CPU time the scheduler gives a process; a higher nicenes…