私の側からの迅速な更新。コンテキスト:今日、LVMの代わりに物理パーティション構成でインストールされた専用サーバーをオンラインにしました。3つのパーティションがありました。
/ boot(ext4)-512M /(ext4)-730Gスワップ-8G
コンソールにアクセスできないという性質上、最終的な目標は、既存のルートパーティションをLVMに変換することでした。
ext4が縮小可能ではないことを考えると、一時ルートとしてスワップパーティションを再利用するしか方法がありませんでした。また、LVMを使用して一時的なルートを設定し、プロセスが正しく機能することを確認することにしました。
最初にスワップが判明しました:
swapoff -a
次に、partedを介してパーティションのサイズを変更しました(最初は742から750に開始されていました)。
parted
resize 3 742 744
LVMのパーティションを作成しました:
mkpart primary ext2 744 750
set 4 lvm on
一時ルートのPV / VG / LV /ファイルシステムの作成:
pvcreate /dev/sda4
vgcreate VolGroup00 /dev/sda4
lvcreate -L 5.73G -n tmproot VolGroup00
mkfs.ext4 /dev/VolGroup00/tmproot
次のステップは、ルートを一時的な場所にコピーすることでした:
mount /dev/VolGroup00/tmproot /media
rsync -ravzxq / /media/
すべてが揃ったら、/ media / etc / fstabのルートファイルシステムのエントリも変更する必要がありました。
/dev/VolGroup00/tmproot / ext4 defaults 1 1
ほとんどそこにある、コンソールにアクセスできない最後の、そして最も望ましくない部分は/boot/grub/grub.confを変更することでした:
元のエントリ:
title CentOS (2.6.32-279.22.1.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-279.22.1.el6.x86_64 ro root=UUID=e769af21-d9e1-455f-a6a7-7a9c84d8cbea rd_NO_LUKS LANG=en_US.UTF-8 KEYBOARDTYPE=pc KEYTABLE=hu rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_NO_LVM rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-279.22.1.el6.x86_64.img
変更されたエントリ:
title CentOS (2.6.32-279.22.1.el6.x86_64) LVM
insmod lvm
kernel /vmlinuz-2.6.32-279.22.1.el6.x86_64 ro LANG=en_US.UTF-8 KEYBOARDTYPE=pc KEYTABLE=hu SYSFONT=latarcyrheb-sun16 crashkernel=auto dolvm root=/dev/mapper/VolGroup00-tmproot panic=10
#rd_NO_DM rd_NO_MD rd_NO_LUKS
initrd /initramfs-2.6.32-279.22.1.el6.x86_64.img
安全のために、カーネルのdolvmパラメータとともにinsmod lvmが追加され、ルートパスもroot = / dev / mapper / VolGroup00-tmprootに変更されました。現時点では/ dev / mapper /パスを使用することが重要です。安全なデポジットとして、panic = 10パラメータも追加しましたが、ヘッダーのデフォルトのブートエントリは変更しませんでした。代わりに、grubに新しい設定で1回だけ起動するように指示してみましたが、失敗した場合は元のエントリが機能しました。
grub
savedefault --default=1 --once
そして最後に:
reboot
最初は大丈夫だったので、元のルートパーティションの上に新しいボリュームグループを作成する手順全体を繰り返し、最後にLVMを使用して適切な場所にルートを取得しました。
お役に立てれば。