ファイル記述子を作成して、出力をリダイレクトできることを知っています。例えば exec 3<> /tmp/foo # open fd 3. echo a >&3 # write to it exec 3>&- # close fd 3. ただし、ファイル記述子がなくても同じことができます。 FILE=/tmp/foo echo a > "$FILE" 追加のファイル記述子を使用する必要がある場合の良い例を探しています。
私はインストールしようとし389-dsています、そしてそれは私にこの警告を与えます: WARNING: There are only 1024 file descriptors (hard limit) available, which limit the number of simultaneous connections. ファイル記述子については理解していますが、ソフト制限とハード制限についてはわかりません。 走るcat /proc/sys/fs/file-maxと戻ってき590432ます。これは、最大590432個のファイルを開くことができることを意味します(つまり、最大590432個のファイル記述子があります)。 しかし、実行するとulimit、異なる結果が得られます。 $ ulimit unlimited $ ulimit -Hn # Hard limit 4096 $ ulimit -Sn # Soft limit 1024 しかし、ハード/ソフト制限ulimitは/proc/sys/fs/file-max何ですか?また、保存された数とどのように関係していますか?