次のスクリプトがあります。
cat > /tmp/script.sh <<EndOfScript
#!/bin/sh
ulimit -n 8192
run_app
EndOfScript
ローカルでスムーズに実行され、常に問題ありません。しかし、ssh を介してリモートで実行しようとすると、次のようになります。
scp /tmp/script.sh user@host:/tmp/script.sh
ssh user@host "chmod 755 /tmp/script.sh; /tmp/script.sh"
エラーが発生しました:
ulimit: open files: cannot modify limit: Operation not permitted
次のコマンドも試しました。
ssh user@host "ulimit -n 8192"
同じエラー。
ssh リモート コマンドの実行により、nofile 制限に 1024 のハード リミットが適用されているようですが、このデフォルト値を変更する方法がわかりません。/etc/security/limits.conf を変更して sshd を再起動しようとしましたが、それでも同じエラーが発生します。