我面临以下问题:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 28G 26G 240M 100% /
因此,为了扩展此磁盘,我执行以下操作:
$ sudo parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: ATA QEMU HARDDISK (scsi)
Disk /dev/sda: 50.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 30.1GB 30.1GB primary ext4 boot
2 30.1GB 40.0GB 9934MB extended
5 30.1GB 34.4GB 4293MB logical linux-swap(v1)
(parted) resizepart
Partition number? 1
Warning: Partition /dev/sda1 is being used. Are you sure you want to continue?
Yes/No? Yes
End? [30.1GB]? 40GB
Error: Can't have overlapping partitions.
我很惊讶地发现 2 号和 5 号,而且 2 号似乎达到了 40GB,而 5 号从同一点开始但只达到了 34.4GB。
肯定有人在我之前尝试过这个,但也失败了。
同样奇怪:/dev/sda2存在,但未显示在输出中df -h
。
我不知道该怎么做。我需要以某种方式合并 sda1 和 sda2 吗?我该怎么做?交换分区怎么办?我需要将其更改为从 sda2 末尾开始吗?我该怎么做?
任何帮助都将不胜感激。我只想让这个系统变得简单有序,易于管理。
答案1
/dev/sda2
是一个延长分区。这意味着它是一个大分区,其中可以放置多个“逻辑”分区 - 在这种情况下,/dev/sda2
是一个扩展分区,它在第一个分区之后填充磁盘的其余部分/dev/sda1
,并且在/dev/sda2
交换分区中以 的形式存在/dev/sda5
。
要扩展您的,/dev/sda1
您需要先执行以下操作:
- 禁用交换分区。
sudo swapoff /dev/sda5
- 使用
gparted
,收缩,/dev/sda2
使其包含仅有的/dev/sda5
且无可用空间。 - 使用
gparted
,将/dev/sda2
和/dev/sda5
一起移动到磁盘末尾。 /dev/sda1
在完成前面的任务后调整(扩大)您的规模。- 重新启用您的交换分区。
sudo swapon /dev/sda5
或者,你可以执行以下操作,这将更符合现代 Ubuntu 的做法(即使用交换文件而不是交换分区):
禁用交换分区。
sudo swapoff /dev/sda5
删除分区 5 和分区 2 通过
parted
扩大您
/dev/sda1
和它的文件系统。在单个分区内,使用交换文件而不是交换分区。
sudo fallocate -l 4GiB /swapfile sudo mkswap /swapfile sudo swapon /swapfile
创建交换文件后,将其添加到
/etc/fstab
行末尾,以便在启动时自动启用交换文件:/swapfile swap swap sw 0 0
答案2
您可以使用这两个命令
sudo growpart /dev/sda
sudo resize2fs /dev/sda