syncコマンドは、システム上でファイルの書き込みが終了しているが、ディスクに書き込まれていないデータを、ユーザが任意のタイミングでディスクに書き込むように命令することができます。
syncコマンドとは
ディスクへのデータの書き込みは、メモリ内に一定のデータ量またはメモリ内で一定時間の時間が立つことでディスクへのデータの書き込みが行われます。
この様子は以下のようなコマンドで確認を行うことができます。
コマンド
1 |
watch grep -e Dirty: -e Writeback: /proc/meminfo |
実行結果
1 2 |
Dirty: 0 kB Writeback: 0 kB |
Dirtyは、ディスクに書き込みを待つためのメモリのことです。
Writebackは、ディスクに書き込まれているメモリの合計量です。
syncコマンドは、Dirtyメモリで書き込みを待っているデータをすぐに書き出すように命令するコマンドになります。
syncコマンドの利用例
メモリにバッファ中のデータを書き込む
syncコマンドは、単純にそのまま利用することができ、メモリにバッファ中のデータを書き込むことができます。ddコマンド等を利用し、ddコマンドのフラグにsyncをつけ忘れた場合に利用してもいいかもしれません。
コマンド例
1 |
sync |
参考
外部リンクGnu Coreutils
外部リンクGnu Coreutils日本語版