~によると手動の場合、I dd
/ Oにファイルシステムキャッシュをバイパスさせることができる2つのオプションがあります。たとえば、これらのフラグを使用してファイルをコピーしたり、ブロックデバイスから生データをコピーしたりする場合、これら2つのフラグの違いは何ですか?direct
nocache
dd
AからBにファイルをコピーするために(実際の理由はなく、実験のみ)使用したいとしますdd
。
- ...読み取りキャッシュに入れずに入力ファイルからブロック全体を読み取り、次に...
- ...該当するデータを書き込みキャッシュに入れずにブロック全体を読み込み、すぐに宛先に書き込みます。
この例のシナリオでは、これらのフラグはどう違うのですか?dd
このタスクの正しい呼び出しは何ですか?
答え1
免責事項:確かに言うことはできませんが、これが最善の推測です。
キャッシュなし:
読むデバイスから直接整列されていない入力です。
直接入力/出力:
読むそしてオペレーティングシステムの内部バッファを使用せずにソートされたデータの書き込みまたはL*キャッシュ。
要約すると、OS/L* キャッシュを完全に回避するには、direct
I/O オプションを選択します。キャッシュの読み取りを避けたい場合は、nocache
それだけで十分です。