我有一个Amazon Web Services EC2 Debian 8.0实例,其弹性块存储(EBS)卷为35GB。 fdisk正确显示大小但我的根分区仍然是7.8G,虽然我试图执行resize2fs。
root@ip-10-0-3-164:/home/admin# fdisk -l
Disk /dev/xvda: 35 GiB, 37580963840 bytes, 73400320 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
Disklabel type: dos
Disk identifier: 0x7d936f86
Device Boot Start End Sectors Size Id Type
/dev/xvda1 * 4096 16773119 16769024 8G 83 Linux
root@ip-10-0-3-164:/home/admin# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 7.8G 2.1G 5.3G 29% /
udev 10M 0 10M 0% /dev
tmpfs 200M 4.3M 196M 3% /run
tmpfs 500M 0 500M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 500M 0 500M 0% /sys/fs/cgroup
root@ip-10-0-3-164:/home/admin# resize2fs /dev/xvda1
resize2fs 1.42.12 (29-Aug-2014)
The filesystem is already 2096128 (4k) blocks long. Nothing to do!
root@ip-10-0-3-164:/home/admin# fdisk /dev/xvda
Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/xvda: 35 GiB, 37580963840 bytes, 73400320 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
Disklabel type: dos
Disk identifier: 0x7d936f86
Device Boot Start End Sectors Size Id Type
/dev/xvda1 * 4096 16773119 16769024 8G 83 Linux
Command (m for help): n
Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (2048-73400319, default 2048): 2048
Last sector, +sectors or +size{K,M,G,T,P} (2048-4095, default 4095):
Created a new partition 2 of type 'Linux' and of size 1 MiB.
Command (m for help): p
Disk /dev/xvda: 35 GiB, 37580963840 bytes, 73400320 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
Disklabel type: dos
Disk identifier: 0x7d936f86
Device Boot Start End Sectors Size Id Type
/dev/xvda1 * 4096 16773119 16769024 8G 83 Linux
/dev/xvda2 2048 4095 2048 1M 83 Linux
Partition table entries are not in disk order.
Command (m for help): t
Partition number (1,2, default 2): 2
Hex code (type L to list all codes): L
0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 27 Hidden NTFS Win 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 84 OS/2 hidden C: c6 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 85 Linux extended c7 Syrinx
5 Extended 41 PPC PReP Boot 86 NTFS volume set da Non-FS data
6 FAT16 42 SFS 87 NTFS volume set db CP/M / CTOS / .
7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux plaintext de Dell Utility
8 AIX 4e QNX4.x 2nd part 8e Linux LVM df BootIt
9 AIX bootable 4f QNX4.x 3rd part 93 Amoeba e1 DOS access
a OS/2 Boot Manag 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad hi eb BeOS fs
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD ee GPT
f W95 Ext'd (LBA) 54 OnTrackDM6 a6 OpenBSD ef EFI (FAT-12/16/
10 OPUS 55 EZ-Drive a7 NeXTSTEP f0 Linux/PA-RISC b
11 Hidden FAT12 56 Golden Bow a8 Darwin UFS f1 SpeedStor
12 Compaq diagnost 5c Priam Edisk a9 NetBSD f4 SpeedStor
14 Hidden FAT16 <3 61 SpeedStor ab Darwin boot f2 DOS secondary
16 Hidden FAT16 63 GNU HURD or Sys af HFS / HFS+ fb VMware VMFS
17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fc VMware VMKCORE
18 AST SmartSleep 65 Novell Netware b8 BSDI swap fd Linux raid auto
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid fe LANstep
1c Hidden W95 FAT3 75 PC/IX be Solaris boot ff BBT
1e Hidden W95 FAT1 80 Old Minix
Hex code (type L to list all codes): 82
Changed type of partition 'Linux' to 'Linux swap / Solaris'.
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy
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).
root@ip-10-0-3-164:/home/admin# fdisk /dev/xvda
Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/xvda: 35 GiB, 37580963840 bytes, 73400320 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
Disklabel type: dos
Disk identifier: 0x7d936f86
Device Boot Start End Sectors Size Id Type
/dev/xvda1 * 4096 16773119 16769024 8G 83 Linux
/dev/xvda2 2048 4095 2048 1M 82 Linux swap / Solaris
Partition table entries are not in disk order.
如您所见,resize2fs没有效果。我也无法创建一个空间大于1M的交换分区。
我的所有实例都会出现此问题。虽然它们都有30-35GB的EBS卷,但我无法调整它们的大小,它们仍然保持在8GB。 当我附加一个额外的卷除了根安装的卷之外,它工作正常。
你能帮助我吗?
答案 0 :(得分:1)
取消附加xvda的卷。将其附加到另一个实例,但不要将其安装在卷上。然后使用fdisk删除第一个分区,并使用所有可用空间重新添加它。设置可引导标志并确保文件系统类型仍为83.写入fdisk分区表并退出fdisk。 在新的第一个分区
上运行e2fsck和resize2fs从其他实例中取出磁盘并将其重新附加到原始实例。
当原始实例使用修改后的卷重新启动时,您应该看到35GB
这样做的原因是你无法修改正在运行的附加根磁盘的分区表
所有这些内容都在aws文档中详细介绍
答案 1 :(得分:1)
在Debian 8上使用resize2fs调整分区大小AWS EC2 + EBS上的Jessie无效。
我的解决方案是为此手动创建一个单独的卷。
我将在这里逐步添加手册如何做。
首先备份您的实例,创建Image AMI或Snapshot Volume。
创建图像。
或创建快照。
现在让我们创建一个Debian 8实例,只是为了重新分配你需要的音量。
完成创建实例的所有步骤,直到它开始。
使用ssh访问实例。
以root身份登录。
sudo -i
现在让我们设置source.list能够安装&#39; parted&#39;。
pico /etc/apt/sources.list
并使用。
更新文件##########################################################################
deb http://cloudfront.debian.net/debian jessie main contrib non-free
deb-src http://cloudfront.debian.net/debian jessie main contrib non-free
deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free
deb http://cloudfront.debian.net/debian jessie-updates main contrib non-free
deb-src http://cloudfront.debian.net/debian jessie-updates main contrib non-free
deb http://cloudfront.debian.net/debian jessie-backports main contrib non-free
deb-src http://cloudfront.debian.net/debian jessie-backports main contrib non-free
##########################################################################
运行apt-get。
apt-get clean && apt-get update && apt-get upgrade
现在让我们安装parted。
apt-get install parted
现在停止创建实例。
现在,让我们从您创建的快照备份中创建一个卷。
注意:在此处通知所需分区总数的大小。
在/ dev / sdf中添加卷
现在启动实例。
使用ssh访问实例。
以root身份登录。
sudo -i
检查分区
df -h
lsblk
你会看到这样的输出。
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 8G 0 disk
└─xvda1 202:1 0 8G 0 part /
xvdf 202:80 0 40G 0 disk
└─xvdf1 202:81 0 8G 0 part
带40G的xvdf和带8G的xvdf1。
现在让我们在volume / dev / xvdf上运行parted。
parted /dev/xvdf
在分手中。设置单位。
(parted) unit s
打印分区信息以查看。
(parted) print
你会看到这样的输出。
Model: Xen Virtual Block Device (xvd)
Disk /dev/xvdf: 83886080s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1s 16777215s 16777215s primary ext4 boot
删除分区。 (这不会删除数据,以后会检索数据。)
(parted) rm 1
现在我们将新分区从开始1s挂载到卷的100%结尾。
(parted) mkpart primary 1 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? : Ignore
打印分区信息以查看。
(parted) print
你会看到这样的输出。
Model: Xen Virtual Block Device (xvd)
Disk /dev/xvdf: 83886080s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1s 83886079s 83886079s primary lba
现在将分区设置为可启动。
(parted) set 1 boot on
并完成分手。
(parted) quit
忽略信息打印。
Information: You may need to update /etc/fstab.
检查分区
lsblk
你会看到这样的输出。
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 8G 0 disk
└─xvda1 202:1 0 8G 0 part /
xvdf 202:80 0 40G 0 disk
└─xvdf1 202:81 0 40G 0 part
现在看到xvdf和xvdf1的大小为40G。 \ O /
现在我们只需要制作e2fsck来检查和索引数据。
注意:e2fsck可能需要很长时间才能完成检查。你应该等待。
e2fsck -f /dev/xvdf1
你会看到这样的输出。
e2fsck 1.42.12 (29-Aug-2014)
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/xvdf1: 208603/524288 files (0.2% non-contiguous), 1918667/2097151 blocks
分区一切都好。
现在进行分区的快照备份,就像我们在开始教程中所做的那样。
创建创建快照的新卷,然后添加原始实例。
请记住先停止实例。
删除旧卷实例并添加新卷实例。
附加到(/ dev / ****)原文,我的情况是/ dev / sda。
启动实例并准备就绪!调整分区。 \ O /
答案 2 :(得分:1)
忘记其他答案。我花了3天时间找出根本原因和一个简单的解决方法:
https://serverfault.com/questions/748063/debian-8-ami-only-using-8gb-partition
答案 3 :(得分:0)
稍微复杂一些,假设您只有一些容易识别的“太大”目录树块(例如/opt
和/var/log
)将创建文件系统(s )在未分配的28GB上,使用rsync将工作文件复制到新文件系统,并擦除过时的文件(释放磁盘空间),将新文件系统安装到其位置(当然,通过编辑/etc/fstab
)。
如果对/var/log
执行此操作,则必须在迁移文件后立即重新启动,因为系统仍引用原始文件。当然,您可能希望在测试机上练习该过程。
如果亚马逊的根卷使用LVM,那将会简单得多。