生の QEMU イメージのサイズを変更すると、fdisk は「ディスク同期」で中断されます。

生の QEMU イメージのサイズを変更すると、fdisk は「ディスク同期」で中断されます。

私は生のQEMUイメージのパーティションのサイズを変更するためにfdiskを使用しています。新しいパーティションテーブルに書き込むと、「ディスクの同期中」で停止します。

イメージファイルの編集にはrootが必要ないため、root以外のユーザーとしてfdiskを実行しています。

「ディスク同期」がこのように中断される原因は何ですか?

ベストアンサー1

「ディスク同期中」メッセージを印刷した後、fdiskはsync(2)システムコールを呼び出して、ファイルメタデータとデータに対するバッファリングされたすべての変更をデフォルトのファイルシステムに書き込むことができます。この作業にはしばらく時間がかかると予想されますが、永遠に中断してはいけません。その場合は、/proc/FDISK_PID/stackでカーネルのどの関数がハングしているかを確認できます。

問題は、イメージファイル(実際のデバイスではない)を処理するときにfdiskがsync()を呼び出す理由です。 IMHO、必要ありません。

おすすめ記事