IEC アプリケーションはこれ以上ファイルハンドルを開くことができません。
重要
システム上のファイルハンドルの制限を変更する前に、Linux システム上のすべてのサービスへの影響を早急に検討する必要があります。代わりに、リークの原因を突き止めることをお勧めします。
トラブルシューティング
ライセンスステータスの喪失。WIBU ライセンスは一定期間が経過すると破棄されます
新しいファイルを開くことはできません。
Linux プロセスのデフォルトの動作では、オープンできるファイルハンドルの数が最大になります。プロセスがこの制限に達すると、それ以上新しいファイルを開くことができなくなります。
システムの制限値は、コンソールコマンドで確認できます。
ulimit -n
Linuxの各プロセスにはプロセスIDがあり、カーネルはファイル/フォルダシステム内の各プロセスに関する詳細情報を提供します。 procfs
。これにより、1 つのプロセスに同時に割り当てられるファイルハンドルの数を簡単に判断できます。
のプロセス ID を検索する CODESYS ランタイム環境。
標準の Linux ツールを使用して、のプロセス ID を検索できます。 CODESYS ランタイム環境:
htop
通常、プロセス ID は最初の列 (PID) に表示されます。top
通常は、プロセス ID を最初の列 (PID) に表示します。組み合わせることができます
ps
とgrep
クイック検索用のコマンド:ps aux | grep codesyscontrol
プロセスIDをメモしておき、プレースホルダー
<pid>
が使用されている以下のコマンドで使用する。ファイルハンドルを確認して監視してください。
次に、エントリを一覧表示します
procfs
ランタイムプロセスのファイルハンドルを表示します。sudo ls -la /proc/<pid>/fd/
例 4. これは次のようになりますファイルハンドルが「実際の」ファイルの場合は、パスが表示されます。他のファイルハンドルはソケットなどでもかまいません
このコマンドを連続して複数回実行すると、ファイルハンドルの数が増えているかどうか、およびどのファイルが開いているかを確認できます。
ザ・
watch
コマンドは 2 秒ごとに更新されるビューを作成します。watch sudo ls -la /proc/<pid>/fd/
これらのアクションは、開いているハンドルを監視し、どのファイルがファイルハンドルリークに関係している可能性があるかを調べるのに役立ちます。