Linux 更改分区

Linux 更改分区

我的 Linux 服务器遇到了一个“小”问题。


Distributor ID: Ubuntu
Description:    Ubuntu 14.04.1 LTS
Release:        14.04
Codename:       trusty

我使用了服务器托管商的默认配置。一开始,这个配置完全符合我们的需求。但现在我们遇到了一点小问题,我想我无法改变它。


/dev/sda3       109G   57G   47G  56% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
udev             16G  4.0K   16G   1% /dev
tmpfs           3.2G  816K  3.2G   1% /run
none            5.0M     0  5.0M   0% /run/lock
none             16G     0   16G   0% /run/shm
none            100M     0  100M   0% /run/user
/dev/sda1       969M   30M  873M   4% /boot
/dev/md0        917G   72M  871G   1% /data

编辑:'cat /proc/mdstat' 的输出


Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdc1[1] sdb1[0]
      976760640 blocks super 1.0 [2/2] [UU]
      bitmap: 0/8 pages [0KB], 65536KB chunk

unused devices: 

编辑:'sfdisk -l' 的输出


Disk /dev/sda: 15566 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start     End   #cyls    #blocks   Id  System
/dev/sda1          0+    127-    128-   1024000   83  Linux
/dev/sda2        127+   1123-    997-   8000512   82  Linux swap / Solaris
/dev/sda3       1123+  15565-  14443- 116007936   83  Linux
/dev/sda4          0       -       0          0    0  Empty

Disk /dev/sdb: 121601 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start     End   #cyls    #blocks   Id  System
/dev/sdb1          0+ 121601- 121602- 976760832   fd  Linux RAID autodetect
/dev/sdb2          0       -       0          0    0  Empty
/dev/sdb3          0       -       0          0    0  Empty
/dev/sdb4          0       -       0          0    0  Empty

Disk /dev/sdc: 121601 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start     End   #cyls    #blocks   Id  System
/dev/sdc1          0+ 121601- 121602- 976760832   fd  Linux RAID autodetect
/dev/sdc2          0       -       0          0    0  Empty
/dev/sdc3          0       -       0          0    0  Empty
/dev/sdc4          0       -       0          0    0  Empty

Disk /dev/md0: 244190160 cylinders, 2 heads, 4 sectors/track

sfdisk: ERROR: sector 0 does not have an MSDOS signature
 /dev/md0: unrecognised partition table type
No partitions found

如您所见,我们有一个/dev/md0917 GB 的分区。其中 99% 未使用。我想将大部分空间添加到/dev/sda3

有没有简单的方法可以做到这一点,或者这个空间是否丢失了?

谢谢

答案1

/dev/md0是一个软件 RAID 设备,可能会占用 SDA 磁盘驱动器上的部分物理空间,但很可能由两个或更多其他磁盘组成。(检查/proc/mdstat以确认布局)。这使得从那里可以轻松将空间添加到根文件系统变得不同。

可能就足够了:不需要扩展根文件系统,而是将数据从根文件系统移动到现在的/data文件系统,然后将该文件系统挂载到根文件系统中占用磁盘空间最大的目录中,即(如果大多数数据都在/home):

# Go to maintenance mode && then:
mv /home/*  /data/
umount /data
mount /dev/md0 /home

并进行/etc/fstab相应修改。

答案2

有关您的 raid 和分区的更多信息将有助于获得完整的答案,但如果 /dev/sda 上的分区是 md0 raid 的一部分,您可以执行以下操作:

  1. 备份完整系统。
  2. 将数据从 /data 移动到 sda3 上的临时文件夹。
  3. 卸载并销毁 md0 raid 及其分区。
  4. 根据您的分区布局,您现在可以增加 sda3 分区大小并扩大您的文件系统。
  5. 重新创建具有所需大小的 md0,挂载并将数据移回:)

如果您需要更多帮助,您应该提供“sfdisk -l”和“cat /proc/mdstat”的输出

答案3

如果您启用了 LVM,则可以扩展您的 LVM 卷。

步骤如下:

  1. 使用以下方式格式化/dev/md0为 LVM (8e) 分区类型的主分区fdisk
  2. 使用以下方法查找现有卷组的名称vgdisplay
  3. 使用以下命令将新分区添加到现有卷组vgextend <name of vg> /dev/md0
  4. 使用新可用空间扩展逻辑卷lvextend -L+917G /dev/sda3
  5. 使用以下方式扩展现有文件系统resize2fs /dev/sda3

来源:关联

相关内容