
私は現在、CentOS 6.7(2.6)カーネルをベースにしたカスタムinitrdを開発中です。次のモジュールロードされました。
initrd は、古い RHEL システムからファイルをメモリにバックアップし、ディスクをアンマウントし、ディスクを消去し、最後にdd
ディスク上に事前構築された CentOS システムをバックアップするように設計されています。
CentOS システムは VMware 上に構築され、その後 vmdk がエクスポートされ、を使用して raw 形式に変換されましたqemu-img
。
テストの結果、プロセス全体が素晴らしく機能し、dd
完了するとシステムを再起動して正常に起動できるようになりました。
現在の問題は、dd
操作が完了すると、LVM ディスクをマウントしてファイルをコピーし直すことができないことです。
モジュール リストを見るとわかるように、LVM ドライバーが存在し、ロードされています。 を実行すると、ブート パーティション (非 LVM) およびLVM パーティションとしてfisk -l
表示されます。 実行中は が表示されますが、 と表示されます。sda1
sda2
pvscan -vvv
/dev/sda2
No label detected
答え1
ディスクを消去すると、実行中のカーネルは使用可能なパーティションを認識しなくなります。
実行中のカーネルに正しいパーティション情報を再ロードするには、partprobe
(パーティション ユーティリティに付属している)を実行します。parted
持っていない場合partprobe
(小さなディスクは必要ありませんか?)、次のようにparted
使用できます。hdparm -z /dev/yourdrive
@kodosさん