現在実行中のシステムを再起動後、状態にできるだけ近づけてリセットするには、Linux/Ubuntu サーバーでどのコマンドを実行する必要がありますか?(実際の再起動は必要ありません!)
私はここに次のものを含めるべきだと思います。
- IOディスクジョブの更新
- さまざまなキャッシュ(ディスク/RAM)を消去する
- を含むすべてのドライブをアンマウントして再インストールします
/
。これは可能ですか? init
? を除くすべてのプロセスを終了しますか?
重要な要約:BIOSシーケンスとGRUBを介して実際に再起動せずに再起動(システムメモリのリセットなど)する方法は?
私はUbuntu 18.04を使用していますsystemd
。
コンテキスト:CPU/GPU計算などに関連する複雑なスクリプトを数日間実行しています。
これまでデバッグできなかったエラーのため、途中で失敗することがあります。 RAMエラー、GPUエラー、過熱、その他のソフトウェア関連の問題が原因であるかどうかは不明です。問題は簡単に再現されません。
しかし、一つは確かです。
- 失敗したスクリプトを再起動すると、同じ問題が発生します。
- もし私が最初コンピュータを再起動してくださいその後、スクリプトを再起動すると正常に動作します(数時間または数日後に次のエラーが発生するまで)。
だから、現在実行中のシステムを再起動した後、状態にできるだけ近づけてリセットする方法を見つけたいのです(したがって、この質問です)。または、自動的に再起動することもできます(参照:エラーが発生した場合は、再起動後にスクリプトを再起動してください。)。
スクリプト
答え1
次のコマンドは、必要なコマンドに最も近いものです。
telinit 1
ただし、キャッシュディスクを更新するために使用する必要があります。sync
答え2
完全に不可能だと思います。
問題がGPUベースの場合は、グラフィックモジュールをアンロードして再ロードすることが役に立ちます。便利なコマンド:modprobe
rmmod
insmod
追加のオンボードグラフィックがある場合は、実行時に可能でなければなりません。
デバッグ:ハードウェア関連の問題の場合は、システムログファイルを確認してください。
/var/log/kern.log
/var/log/syslog
確認dmesg
コマンド
ハア