500GB EBSボリュームを作成したEC2インスタンスがあります。残念ながら、EC2インスタンスは8 GBしか利用できないことを示しています。
ドライブは1つしかありません。
[root@ip-10-244-134-250 ~]# ls -la /dev/x*
brw-rw---- 1 root disk 202, 1 Aug 7 08:54 /dev/xvda1
しかし、そのドライブはわずか8GBです
[root@ip-10-244-134-250 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 8.0G 1.3G 6.7G 16% /
tmpfs 3.7G 0 3.7G 0% /dev/shm
しかし、fdiskと/ proc/partitionsはどちらも正しいサイズを示しています
[root@ip-10-244-134-250 ~]# fdisk -l
Disk /dev/xvda1: 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: 0x00000000
Disk /dev/xvda1 doesn't contain a valid partition table
[root@ip-10-244-134-250 ~]# cat /proc/partitions
major minor #blocks name
202 1 524288000 xvda1
どんな助けでも大いに感謝されます、ありがとう。
ルートファイルシステムがext3またはext4の場合は、次のコマンドを実行します。
Sudo resize2fs /dev/xvda1
ルートファイルシステムがxfs(一般的ではない)の場合は、次のコマンドを実行します。
Sudo xfs_growfs /
Rootとしてログインしている場合は、「Sudo」を省略できます。
これらのコマンドは、システムの実行中にファイルシステムがマウントされているときに実行する必要があります。
EBSボリュームがパーティションテーブルを含まないことは標準です。 EBSボリュームは通常、パーティションなしで全体がファイルシステムとしてフォーマットされます。
ここでの答えは、EBSボリュームサイズを変更するユーザーのために特別にサイズを変更する前に、いくつかの手順が欠けているようです。スナップショットを使用してEBSを作成した場合、または特定のAMIを使用している場合は、ディスク(xvda)を拡張し、パーティション(xvda1)を拡張してから、ファイルシステム(/)を拡張する必要があります。
これを正しく読んでいる場合、ディスクは次のようになります。
/dev/xvda
|__/dev/xvda1__|______________ Free space______________|
次のようにする必要があります。
/dev/xvda
|______________________/dev/xvda1______________________|
その後、resize2fs
を実行するとxvda1
内の新しいスペースに成長します。fdisk
を使用すると、ブロックを削除して再度作成し、パーティションを起動可能にすることでブロックサイズを増やすことができます。必要なのは再起動だけです。ほとんどの場合、同じ開始シリンダーを使用してもデータには影響しませんが、パーティションの再作成に誤りがあると、すべてのデータが失われるか、サーバーが再起動しないことに注意してください。新しく作成したインスタンスの最初のステップとしてこれを行うことをお勧めします。それ以外の場合は、EC2 EBSストレージなどのスナップショットを取得します。
以下のブロックで<<#>>を使用してステップにマークを付けたので、これらはコマンドの一部ではありません。 root権限が必要なので、rootでない場合は「Sudo sh」を実行してください。
<<1>> Look at the filesystem, it is 6G
<<2>> Look at the disk and the partition, the disk is 21.5 GB but the partition is 6 GB (6291456 blocks)
<<3>> Start fdisk for that disk (xvda, so not the partition xvda1)
<<4>> Switch to sector display.
<<5>> Print the partition(s), and remember the start sector (2048 in the example).
<<6>> Delete the partition.
<<7>> Create a new partition.
<<8>> Make it primary.
<<9>> First partition.
<<10>> Enter the old start sector, do NOT make any typo here!!! (2048 in the example)
<<11>> Hit enter to accept the default (this is the remainder of the disk)
<<12>> Print the changes and make sure the start sector is ok, if not restart at <<6>>
<<13>> Make the partition bootable. do NOT forget this!!!
<<14>> Enter your partition number (1 in the example)
<<15>> Write the partition info back, this will end the fdisk session.
<<16>> Reboot the server, and wait for it to come up (this may take longer than usual).
<<17>> Verify the filesystem size.
<<18>> If the filesystem is not around 20Gb as expected, you can use this command.
# df -h <<1>>
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 6.0G 2.0G 3.7G 35% /
tmpfs 15G 0 15G 0% /dev/shm
# fdisk -l <<2>>
Disk /dev/xvda: 21.5 GB, 21474836480 bytes
97 heads, 17 sectors/track, 25435 cylinders
Units = cylinders of 1649 * 512 = 844288 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0003b587
Device Boot Start End Blocks Id System
/dev/xvda1 * 2 7632 6291456 83 Linux
# fdisk /dev/xvda <<3>>
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): u <<4>>
Changing display/entry units to sectors
Command (m for help): p <<5>>
Disk /dev/xvda: 21.5 GB, 21474836480 bytes
97 heads, 17 sectors/track, 25435 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0003b587
Device Boot Start End Blocks Id System
/dev/xvda1 * 2048 12584959 6291456 83 Linux
Command (m for help): d <<6>>
Selected partition 1
Command (m for help): n <<7>>
Command action
e extended
p primary partition (1-4)
p <<8>>
Partition number (1-4): 1 <<9>>
First sector (17-41943039, default 17): 2048 <<10>>
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): <<11>>
Using default value 41943039
Command (m for help): p <<12>>
Disk /dev/xvda: 21.5 GB, 21474836480 bytes
97 heads, 17 sectors/track, 25435 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0003b587
Device Boot Start End Blocks Id System
/dev/xvda1 2048 41943039 20970496 83 Linux
Command (m for help): a <<13>>
Partition number (1-4): 1 <<14>>
Command (m for help): w <<15>>
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: ...
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
# reboot <<16>>
<wait>
# df -h <<17>>
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 2.0G 17G 11% /
tmpfs 15G 0 15G 0% /dev/shm
# resize2fs /dev/xvda1 <<18>>
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/xvda1 is mounted on /; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 2
Performing an on-line resize of /dev/xvda1 to 5242624 (4k) blocks.
The filesystem on /dev/xvda1 is now 5242624 blocks long.
root@vs120 [~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 7.8G 11G 42% /
tmpfs 498M 0 498M 0% /dev/shm
/usr/tmpDSK 399M 11M 368M 3% /tmp
root@vs120 [~]#
EBSボリュームのファイルシステムのサイズを変更します。 ext3
(通常はデフォルト)を実行している場合は、e2resize /dev/xvda1
を実行できます。
カスタムUbuntu AMIから作成されたインスタンスで@Neoからの回答を試しました。説明は非常に役に立ちましたが、ユニットをブロックとして保持し、手順4をスキップする必要がありました。その後、完全に機能しました。
また、要点は、ステップ#5で、ステップ#10で使用する開始ブロック/シリンダーをコピーする必要があるということです。
@Neoの答えは、パーティション化された仮想ディスクデバイスがあるかどうかです。この問題に苦しんでいるかどうかは、次で確認できます。lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 30G 0 disk └─xvda1 202:1 0 5G 0 part /
xvdaとxvda1はサイズが大きく異なります。あなたは2fsをリサイズすることができ、それは何の違いもありません、私の場合、xvda1は5Gであり、それはファイルシステムが使用するすべてです。
ありがとう、@ Neo