Linux初心者が扱おうとしていること/proc/sys/fs/file-max
sudo sh -c 300000 > file-max
返品bash: file-max: Permission denied
。これを行うには本当にroot権限が必要ですか?私が使用しているユーザーアカウントがsudoユーザーグループに追加されました。
主に他のフォルダを修正しようとしたときに、この質問のバリエーションを見ました。上記のコマンドは問題を軽減するための提案ですが、/proc
ディレクトリは異なりますか?
注:最新のKali Linuxバージョンを使用してください。
答え1
あなたが提案した順序は意味がありません。スーパーユーザーシェルはコマンドを実行し、出力を非スーパーユーザーシェルの現在の作業ディレクトリにあるファイルにリダイレクトしようとsudo sh -c 300000 > file-max
します。300000
file-max
次の操作を実行できます。
sudo sh -c 'echo 300000 > /proc/fs/file-max'
言い換えれば、自分で書くこと/proc
は、これらのプロパティを変更するかなり奇妙な方法です。この変更を実装するより「尊敬される」方法は次のとおりです。
sudo sysctl -w fs.file-max=300000
答え2
sudo
以前にリダイレクトが行われたため、sudo
リダイレクト権限を増やすことはできません。これを行うには、root権限を持つシェルが必要です。
sudo bash -c 'echo 300000 >/proc/sys/fs/file-max'
答え3
問題は、/proc/file-max
rootではなくユーザーで上書きされることです。
する:
echo 300000 | sudo tee /proc/sys/fs/file-max
または:
sudo sysctl -w fs.file-max=300000
変更を適用するにはネットワークを再起動する必要があります。ネットワークを手動で再起動するコマンドは次のとおりです。
sudo service networking restart
また、サーバーを再起動しても持続するようにfs.file-max=300000
設定を追加する必要があります。/etc/sysctl.conf
echo "fs.file-max=300000" | sudo tee -a /etc/sysctl.conf