CentOS 5の仮想マシンを使用していて、ディスクサイズにさらに20GBを追加しました。使用可能なスペースを初期化して拡張するにはどうすればよいですか?
GPartedもロードしてみましたが、ドライブがロックされています。ロックを解除するにはどうすればよいですか?
ファイルシステムはLVM上にあり、GPartedはそれをサポートしていないため、GPartedを使用することはできません。
まず、VMのバックアップを取ります。次に、コマンドラインから「root」として以下を実行します。
すでに再起動しているようですが、念のため、カーネルがより大きなディスクを認識していることを確認してください
echo 1 > /sys/class/scsi_disk/0:0:0:0/device/rescan
Fdiskで2番目のパーティションのサイズを変更します
fdisk /dev/sda
p # print current
d # delete
- 2
n # create
- p # primary partition
2 # partition number
- default first/last cylinders
t # change partition id
- 2
- 8e (hex code)
p # print the current again to verify it's expanded
w # write changes
仮想マシンを再起動します
shutdown -r now
バックアップが完了したら、LVM物理ボリュームのサイズを変更します
pvresize /dev/sda2
ここで、LVM論理ボリュームのサイズを変更します(注:スクリーンショットに基づいて論理ボリューム名を解読できないため、LogVol00
と想定しています。lvdisplay
。)
lvresize -l +100%FREE /dev/VolGroup00/LogVol00
最後に、ファイルシステムのサイズを変更しましょう
resize2fs -p /dev/VolGroup00/LogVol00
ファイルシステムが大きいことを確認します
df -h
できた
以下の手順では、Centos 6 EXT4 VPSを実行するVMWare EXSi 5.5でパーティションを12Gから26GBに拡張しました。
1)デバイス名(デフォルトでは/ dev/sda)を特定し、次のコマンドを実行して新しいサイズを確認します。
# fdisk -l
2)/ dev/sdaデバイスのパーティションのリストを取得します。
# ls -al /dev/sda*
brw-rw---- 1 root disk 8, 0 Dec 29 15:32 /dev/sda
brw-rw---- 1 root disk 8, 1 Dec 29 15:32 /dev/sda1
brw-rw---- 1 root disk 8, 2 Dec 29 15:32 /dev/sda2
3)新しいプライマリパーティションを作成する
# fdisk /dev/sda
Then type:
n (enter) [create new partition]
p (enter) [primary partition]
3 (enter) [next available number from listed /dev/sda partitions in 2)
(enter) [start cylinder]
(enter to use all available physical space) or specify size in +cylinders, +size{K,M,G}
t (enter) [change partition type]
3 (enter) [selecting /dev/sda3 partition]
8e (enter) [this sets partition type to Linux LVM or type L then enter to see list of types]
w (enter)
The partition table has been altered!
4)Centos 6.Xを再起動し、root権限で再度ログインします。
# reboot
5)新しいパーティションの準備ができていることを確認し、「8e」と入力します。
# fdisk -l
Device Boot Start End Blocks Id System
/dev/sda1 * 1 64 512000 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 64 2089 16264192 8e Linux LVM
/dev/sda3 2089 3916 14678054 8e Linux LVM
6)物理ボリュームを作成します。
# pvcreate /dev/sda3
Physical volume "/dev/sda3" successfully created
7)ボリュームグループ名を確認します。
# vgdisplay
--- Volume group ---
VG Name vg_app1
...
8)物理ボリュームを拡張します。
# vgextend vg_app1 /dev/sda3
Volume group "vg_app1" successfully extended
9)既存のボリュームグループを新しい物理ボリュームに拡張します(+ 100%FREEは希望のサイズに変更できます)。ルートパーティションを拡張しているため、vg_app1ボリュームグループのlv_rootを指しています。
# lvextend -l +100%FREE /dev/vg_app1/lv_root
Size of logical volume vg_app1/lv_root changed from 11.63 GiB (2978 extents) to 25.63 GiB (6561 extents).
Logical volume lv_root successfully resized
10)論理ルートボリュームのサイズを変更します。
# resize2fs /dev/vg_app1/lv_root
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/vg_app1/lv_root is mounted on /; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 2
Performing an on-line resize of /dev/vg_app1/lv_root to 6718464 (4k) blocks.
The filesystem on /dev/vg_app1/lv_root is now 6718464 blocks long.
注:Red Hat仮想マシンの場合は、resize2fsではなくext2onlineを使用してください。
11)利用可能なスペースを確認します。
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_app1-lv_root
26G 10G 14G 42% /
tmpfs 9.8G 0 9.8G 0% /dev/shm
/dev/sda1 477M 88M 364M 20% /boot
簡単です。ルートとしてVMに移動します。「fdisk -l」と入力します-すでに新しいディスクサイズが表示されている場合-良いです。
そうでない場合-partprobe
を試してください-それでも新しいディスクサイズが表示されない場合は、再起動してください。
今fdisk /dev/sda
partprobe
pvresize /dev/sda2
これで、VG VolGroup00のスペースが20 GB増えました。それで好きなことをしてください。物理システムの場合と同じように(LVのサイズを変更してから、FSなど)のサイズを変更します)。
Gparted live CD ISO をダウンロードします。次に、ISOをCentOSに接続し、ライブCDから起動します(仮想マシンの設定に移動し、「CD/DVD」を選択して、右側のパネルから「ISOを使用」を選択します)。次に、サイズを変更するパーティションを選択します。パーティションメニュー(上部のメニューバー)をクリックし、[サイズ変更]をクリックします。次に、「編集」メニューから「すべての操作を適用」を選択します。
別のアプローチは、パーティションの代わりにディスク全体にまたがるLVMを作成することです。
この場合、次の方法を使用してディスクをホットアドできます。
blockscan --rereadpt /dev/<PV disk
pvresize /dev/<PV disk>
# The associated VG is now resized
lvresize /dev/mapper/<LV> -r -l +100%FREE
lvresize
に-r
スイッチを追加することで、手順5と6を1つにすることができます。これにより、必要なパラメータでlvresize
が自動的にresize2fs
を実行します。
lvresize -r -l +100%FREE /dev/VolGroup00/LogVol00
時にはあなたがする必要があります
echo "- - -" > /sys/class/scsi_Host/host<n>/scan
新しいディスクを作成するか、既存のディスクを拡張するかによって、必要な再スキャンのタイプが異なります。
ここでは、データを失うことなくディスクを5GBから7GBに拡張するサンプルパーティションを作成しています。空き容量に応じて変更できます。
ディスクを増やす前に、Linux VMから次の詳細を取得しました。
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 6.8G 2.1G 4.5G 32% /
/dev/sda1 99M 12M 83M 13% /boot
none 252M 0 252M 0% /dev/shm
/dev/sdb1 5.0G 39M 4.7G 1% /mnt/test
# fdisk -s /dev/sdb
Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 652 5237158+ 83 Linux
VMシャットダウンしてください。
次に、VMwareの既存の仮想ディスク(/dev/sdb
)をコマンドプロンプトから増やします。注:このタスクは、VMの電源がオフの場合にのみ実行してください。
仮想ディスクの場所に移動します。
# vmware-vdiskmanager -x 7Gb RedHatEnterprise_Linux_4-0.vmdk
これで、仮想ディスクが7Gbに拡張されます
次に、VMの電源をオンにする必要があります。 rootユーザーとしてPuTTYまたはコンソールを使用してVMにログインします。
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 6.8G 2.1G 4.5G 32% /
/dev/sda1 99M 12M 83M 13% /boot
none 252M 0 252M 0% /dev/shm
/dev/sdb1 5.0G 39M 4.7G 1% /mnt/test
それでも古いサイズが表示されます。増やす予定のパーティションをアンマウントします。
# umount /dev/sdb1
ディスクでファイルシステムの修復を実行する
# fsck -n /dev/sdb1
さて、ext2ファイルシステムにするためにディスクからジャーナルを削除することが大問題でした。
# tune2fs -O ^has_journal /dev/sdb1
/dev/sdb
のパーティション分割を開始して、増加したスペースを/dev/sdb1
に割り当てます。注:パニックに陥らないでください。ここでデータが失われることはありません。
既存の/dev/sdb1
を削除して、利用可能な空き容量とともに再作成しています。
# fdisk /dev/sdb
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition’s system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): p
Disk /dev/sdb: 7516 MB, 7516192768 bytes
255 heads, 63 sectors/track, 913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 652 5237158+ 83 Linux
Command (m for help): d
Selected partition 1
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-913, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-913, default 913):
Using default value 913
Command (m for help): p
Disk /dev/sdb: 7516 MB, 7516192768 bytes
255 heads, 63 sectors/track, 913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 913 7333641 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
Linuxマシンを再起動して、パーティションを有効にします(partprobe
も使用できます。マシンを再起動することを強くお勧めします)。
# shutdown now -r
拡張ファイルシステムをもう一度確認します。この手順をスキップすると、resize2fs
コマンドで実行することをお勧めします。
# e2fsck -f /dev/sdb1
e2fsck 1.35 (28-Feb-2004)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sdb1: 13/655360 files (7.7% non-contiguous), 22121/1309289 blocks
次に、ファイルシステムのサイズを変更します。
# resize2fs /dev/sdb1
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/sdb1 to 1833410 (4k) blocks.
The filesystem on /dev/sdb1 is now 1833410 blocks long.
次に、ファイルシステムを確認します。
# fsck -n /dev/sdb1
fsck 1.35 (28-Feb-2004)
e2fsck 1.35 (28-Feb-2004)
/dev/sdb1: clean, 13/917504 files, 30538/1833410 blocks
次に、ext3形式でパーティションを再作成します。
# tune2fs -j /dev/sdb1
tune2fs 1.35 (28-Feb-2004)
Creating journal inode: done
This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
Linuxマシンを1回再起動して、ext3ファイルシステムを効果的に使用します。
# shutdown -r now
もう一度、root権限を使用してLinuxボックスにログインします。これで、パーティションが7 GBに増加したことがわかります。
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 6.8G 2.1G 4.5G 32% /
/dev/sda1 99M 12M 83M 13% /boot
none 252M 0 252M 0% /dev/shm
/dev/sdb1 6.9G 39M 6.7G 1% /mnt/test
私はVMwareでこれをCentOS 6.4で実行しました。回答番号1は正しいですが、発見した1つのステップがありません。
Gpartedでは、鉱山にも鍵のアイコンがありました。
ロックアイコンのあるパーティションがある行で、右クリックして[非アクティブ化]を選択します。ロックが解除されます。
次に、右クリックしてパーティションサイズを変更できます。
次に、変更を適用します。
次に、右クリックして「アクティブ化」を選択します。
VMWare上のCentOS 6.6の場合、30 GBから40 GBに増やすために次のことを行いました(LVMを使用せず、通常のネイティブLinuxパーティション(Id 83)のみであることに注意してください)。
注:データが失われた場合に備えて、まずVM=のバックアップを作成してください。すべてがうまくいけば、データを失うべきではありません。
このページと http://positon.org/resize-an-ext3-ext4-partition の回答の組み合わせから見つかった情報