私のCentos6x64 VMには約500Gのxvdaディスクがあります。最初はxvda1に8Gが割り当てられ、/にマウントされます。 xvdaの残りの500Gディスク領域はまだ割り当てられていません。そのため、残りのディスク領域を使用可能にすることを決定し、fdisk、pvcreate、vgcreate、lvcreateを使用して論理ボリュームを持つxvda2パーティションを作成してフォーマットし、最後にfstabを更新して自動的にマウントしました。
そのフォルダ(マウントポイント)との関係は次のとおりです。
- /dev/centos/home ..../home [200G]
- /dev/centos/root ..../ [100G]
問題は次のとおりです。
- /homeが正しくマウントされているように見え、表示されたサイズです。
df -h
197Gです。 - ただし、ルートのインストールが正しくありません。結果から
df -h
下の寸法は/dev/xvda1
に含まれる/boot
7.8G そうです。しかし、サイズは/dev/mapper/centos-root
に含まれる/
エラーは7.8Gを表示します。約100Gを表示する必要があります。次のディスク容量と同じディスク容量が正しく表示されません。/dev/xvda1
。
質問:
- 参考のために、以下にいくつかの結果をまとめようとしました。この問題を解決するのに役立ちます。この問題を解決するにはどうすればよいですか?
- また、xvda1に割り当てられたディスク容量を8Gから200Gに増やしたい場合は、より簡単で直接的な方法はありますか? Google検索でこれを見つけました。郵便はがきこれは非常に目標に適合します。ただし、grub画面に停止して正常に再起動できません。この失敗の詳細に関する情報はあまりありません。フォーマットなどの追加のディスク容量を割り当てるためにfdiskを使用するとき、いくつかの前提条件を設定していませんか?
私はこれに精通していません。助けてください。
システム初期状態:
# fdisk -l
Disk /dev/xvda: 536.9 GB, 536870912000 bytes 255 heads, 63 sectors/track, 65270 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000611ee
Device Boot Start End Blocks Id System
/dev/xvda1 * 1 1045 8387584 83 Linux
Disk /dev/xvdb: 32.2 GB, 32204390400 bytes 255 heads, 63 sectors/track, 3915 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 500G 0 disk
└─xvda1 202:1 0 8G 0 part /
xvdb 202:16 0 30G 0 disk /mnt
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 7.8G 897M 6.5G 12% /
tmpfs 3.6G 0 3.6G 0% /dev/shm
/dev/xvdb 30G 173M 28G 1% /mnt
# cat /etc/fstab
UUID=2d0f2d55-672b-4c05-8eba-9421dd808ad7 / ext4 defaults 1 1
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/xvdb /mnt auto defaults,nofail,comment=cloudconfig 0 2
私が行ったステップ:
- fdisk /dev/xvda ...(n > p = 2 > t = 8e)
- 再起動
- pvccreate /dev/xvda2
- vgcreate centos /dev/xvda2
- lvcreate -n home -L 200G セントース
- lvcreate -n root -L 100G セントース
- lvcreate -n swap -L 4Gポイント
- mkfs.ext4 /dev/centos/root
- mkfs.ext4 /dev/centos/home
- mkswap /dev/centos/swap
- マウント /dev/xvda1 /boot
- …それが私がやりたかったが許されていないことでした。
- だからマウントポイント
/etc/fstab
を。しかし、それも動作しません。/dev/xvda1
/
/boot
- 以下の結果は
df -h
両方の正しいマウントポイントを示していますが、/dev/xvda1 i.e. /boot
表示されている/dev/mapper/centos-root i.e. /
ディスク容量/dev/mapper/centos-root = 7.8G
は正しくありません。私はそれを期待しています~100G
。- また、結果には空の
lsblk
マウントポイントが表示されますcentos-root (dm-1)
。の場合、centos-root
予想マウントポイント/
と/dev/xvda1
予想マウントポイントがあります/boot
。- マウント /dev/centos/root/
- マウント /dev/centos/home /home
- /etc/fstabに適切なエントリを作成します(
cat /etc/fstab
以下を参照)。- すぐに閉じます -r
- mkhomedir_helper セントース
- 再起動後、centosのホームディレクトリにアクセスできなくなり、「ホームディレクトリ/ home / centosのchdirを変更できませんでした:そのファイルまたはディレクトリがありません」というエラーが発生しました。この問題を解決するには、上記のコマンドを実行してユーザーcentosのホームディレクトリを再作成する必要がありました。
猫/etc/fstab
UUID=3a75c67b-5053-4863-963e-c6a572f13972 / ext4 defaults 1 1
UUID=2d0f2d55-672b-4c05-8eba-9421dd808ad7 /boot ext4 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/xvdb /mnt auto defaults,nofail,comment=cloudconfig 0 2
/dev/mapper/centos-home /home ext4 defaults 0 0
fdisk -l
Device Boot Start End Blocks Id System
/dev/xvda1 * 1 1045 8387584 83 Linux
/dev/xvda2 1045 65270 515892667 8e Linux LVM
df-h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 7.8G 898M 6.5G 12% /
tmpfs 3.6G 0 3.6G 0% /dev/shm
/dev/xvda1 7.8G 898M 6.5G 12% /boot
/dev/xvdb 30G 173M 28G 1% /mnt
/dev/mapper/centos-home 197G 60M 187G 1% /home
LSBLK
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 500G 0 disk
├─xvda1 202:1 0 8G 0 part /
└─xvda2 202:2 0 492G 0 part
├─centos-home (dm-0) 253:0 0 200G 0 lvm /home
├─centos-root (dm-1) 253:1 0 100G 0 lvm
└─centos-swap (dm-2) 253:2 0 4G 0 lvm
xvdb 202:16 0 30G 0 disk /mnt
黒子
/dev/xvda1: UUID="2d0f2d55-672b-4c05-8eba-9421dd808ad7" TYPE="ext4"
/dev/xvdb: UUID="3656cb72-7e94-4e63-81ea-66397ad45d13" SEC_TYPE="ext2" TYPE="ext3"
/dev/xvda2: UUID="ASXeKh-x8xL-nDVF-afzq-zU8a-sCbd-qGM6pS" TYPE="LVM2_member"
/dev/mapper/centos-home: UUID="4510891a-354d-4486-bd47-95d474f197bb" TYPE="ext4"
/dev/mapper/centos-root: UUID="3a75c67b-5053-4863-963e-c6a572f13972" TYPE="ext4"
/dev/mapper/centos-swap: UUID="5dff9552-3d36-4cfa-936c-28e02c1ae108" TYPE="swap"
LVディスプレイ
--- Logical volume ---
LV Path /dev/centos/home
LV Name home
VG Name centos
LV UUID lFWQxa-mqgc-Ur8t-npDc-O2NU-r6J4-UhC2j2
LV Write Access read/write
LV Creation host, time ip-xx-xx-xx-xx.ec2.internal, 2018-06-16 07:18:22 +0000
LV Status available
# open 1
LV Size 200.00 GiB
Current LE 51200
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Path /dev/centos/root
LV Name root
VG Name centos
LV UUID UQ6oAD-JyRa-cb8l-VmgW-aZh9-qbof-Z1Z9af
LV Write Access read/write
LV Creation host, time ip-xx-xx-xx-xx.ec2.internal, 2018-06-16 07:18:22 +0000
LV Status available
# open 0
LV Size 100.00 GiB
Current LE 25600
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
--- Logical volume ---
LV Path /dev/centos/swap
LV Name swap
VG Name centos
LV UUID QyY2z9-5EpX-D8dY-DORZ-9BbY-TqgA-07fc3X
LV Write Access read/write
LV Creation host, time ip-xx-xx-xx-xx.ec2.internal, 2018-06-16 07:18:24 +0000
LV Status available
# open 0
LV Size 4.00 GiB
Current LE 1024
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2
ベストアンサー1
マウントしたいファイルシステム/boot
()は実際にはあなたのものです。したがって、目的のマウントポイントにマウントしても、実際にマウントしたいのは内部ディレクトリであり、ファイルにディレクトリをマウントできないため、機能しません。システム。/dev/xvda1
/
/boot
/dev/xvda1
LVM論理ボリュームとファイルシステムを作成しましたが、/
ここ/home
にデータを入れませんでした。既存のファイルシステムを新しいブロックデバイスに移行しませんでした。
また、GRUBは新しいファイルシステムについて知らないため、/
ソースから起動しようとします/
。以下は、これらの論理ボリュームの使用方法の概要です。
警告する
この手順を実行する前にバックアップを作成してください。状況が深刻に間違っている可能性があり、唯一の良い「元に戻すボタン」はバックアップです。
安全対策
- シングルユーザーモードで再起動します。ライブファイルシステムを複製するので、できるだけ少ないジョブしか実行したくありません。
- 現在のディレクトリを
/
ホームディレクトリのディレクトリと同じ新しい場所にバインドマウントします。 - また、ホームディレクトリに新しい論理ボリュームをマウントします
/
。/home
/
既存のファイルをコピーして/home
新しい/
論理ボリュームとして除外するには、バインドマウントを使用します。バインドマウントをコピー元として使用することが重要です。なぜなら、すべてが他のマウントされたファイルシステムをコピーするのを防ぐからです/
。- 既存のボリュームを
/home
再バインドマウントを使用して新しい論理/home
ボリュームにコピーします。 - 再起動してGRUBメニューが表示されたら、適切なカーネルエントリを選択して「e」を押します。編集モードに入ります。変数
realroot
の値になるように変数を追加/編集します/dev/mapper/centos-root
。あなたのinitrdがLVMをサポートしているとします。次にEnterキーを押します。 - すべてが順調に進むと、システムはルート論理ボリュームから起動します。
安全でないステップ
これで、プロセスを元に戻すのが難しくなるいくつかのステップが始まります。状況はそうかもしれません本物問題が発生しました。ウォッカに従ってください(もちろん後者を記念して)、
- 古いものを
/
どこかにインストールしてください。 - 削除
/boot
/boot
古いボリュームのディレクトリを/
論理ボリュームの1つにコピーします。必要に応じてtmpfsにコピーすることもできます。これは、次の2つのステップの一時バックアップとしてのみ機能します。- 戻ることができないポイントに達する:
mkfs.ext4 /dev/xvda1
。オペレーティングシステムはもはやそのまま起動しません。 mount /dev/xvda1 /boot
/boot
手順3で作成したバックアップを入力します。- ファイルシステムのUUIDを再確認
/boot
し、/etc/fstab
必要に応じて更新してください。 - これでGRUB2を更新します。実行して
grub-mkconfig | less
正しいブロックデバイスを選択していることを確認してください。realroot
手動で追加したものと同じものを表示する必要があります。すべてが正常な場合は、実行してgrub-mkconfig -o /boot/grub/grub.cfg
新しいGRUB設定を作成します。 - 再起動。 2つのうちの1つが発生します。システムが正常に起動またはブートされません。とにかく、ここがウォッカが登場するところです。