回答:
私が書いたブロックを(旧姓lvmify)インプレースこの変換を行いいます。ファイルシステムを少し縮小し、ファイルシステムの先頭をパーティションの末尾に移動し、代わりにLVMスーパーブロック(適切なPV / LV / VGで事前構成済み)をコピーすることで機能します。
ライブでディスクを変換する方法についてはわかりませんが、データをコピーするにはrsyncの方がより安全で安全な方法になると思います。転送が停止した場合でも、データを再開してそのまま保持することができます。
誰かがローカルドライブにLVMとして外部ドライブを追加することで、同様のプロセスが完了することがわかりました。それほど多くの情報はありませんが、始めるには十分だと思います:
「だから今日、LVMのすごいものを発見しました。Debianをインストールして、「LVM-ディスク全体を使用」を選択しました。代わりに、このより高速なドライブ上のシステム。
LVMアプローチ:/ dev / sdcをボリュームグループに追加し、「pvmove / dev / sda」を実行します。これにより、すべてのデータがsdaから他のドライブに移動されます(sdcのみが利用可能)。再起動する必要も、アンマウントする必要もありません。これを書いている間、データは移動されています。
後で、「vgreduce megatron / dev / sda」を実行して、ボリュームグループから出来上がったドライブを削除します。データを移動しました。(megatronは、ボリュームグループとコンピューターの名前です)。これは多くの人にとっては古いニュースかもしれませんが、これは本当にクールだと思っただけです:)」
確かにこれはローカルで行われましたが、追加の研究により、おそらくこれを達成できると思います。
そのようなLVM変換を「オンザフライ」で実行する方法はありません。
LVMは実際にはファイルシステムの下に存在し、複数の物理デバイスに拡張したり、ストライプ化またはミラー化したりします。論理ボリュームを作成する最後のステップは、ファイルシステムをその上に置くことです。RHEL6の例を次に示します。
そのデバイスでデータをバックアップまたはアーカイブしてから、既存のファイルシステムを破棄し、論理ボリュームを作成して、ファイルシステムを一番上に再配置する必要があります。これがLinux OSのルートファイルシステムである場合は、再インストールを検討してください。速いかもしれません。
より高速なコピーのために、私は好きですが、私はdd
それを頻繁に使用しません。間違えるのdd
は危険です。試せることの1つはtar czv <source fs> | (cd <destination fs>; tar x)
、圧縮されたtarファイルをその場で転送することです。
幸運を!
tar cSf - | tar xvpf -
スパースファイルとアクセス許可を処理する必要があります。おそらく--selinux
(宛先ボリュームがその後ソースを置き換える場合)。
-p
ホストがユーザー名を共有しない限り、 / UID(マンページ-p
は、rootとして実行されたときのGNU tarのデフォルトであることを思い出させてくれます)、--selinux
さらに危険に満ちています- 正しい(最終)にマウントされた後、全体に対してrestorecon -Rv
(または-Rp
)を行う方が良いでしょう)場所。