Ubuntu - 混乱的分区表

Ubuntu - 混乱的分区表

我在 Xen 服务器上有一个 ubuntu 14.04 服务器虚拟机。我为其分配了 40Gb 磁盘空间,我的分区表如下所示

df -h
Filesystem                               Size  Used Avail Use% Mounted on
udev                                      16G  4.0K   16G   1% /dev
tmpfs                                    3.1G  712K  3.1G   1% /run
/dev/mapper/QAAutomationServer--vg-root  8.3G  7.1G  797M  91% /
none                                     4.0K     0  4.0K   0% /sys/fs/cgroup
none                                     5.0M     0  5.0M   0% /run/lock
none                                      16G     0   16G   0% /run/shm
none                                     100M     0  100M   0% /run/user
/dev/xvda1                               236M   68M  156M  31% /boot

如果仔细观察,就会发现我的根分区分配了大约 8gb,几乎已满。/run/shm 有 16gb,/dev 还有 16gb,几乎没有使用。

我尝试在 Google 上查找是否可以修复此问题,但我找到的每个解决方案都建议使用 live cd 启动并使用 gparted 来管理分区。但在 Xen 上的虚拟机上,我无法做到这一点。

有人能帮我解决这个问题吗?

谢谢,Kiran

编辑

输出sudo parted -l

Model: Linux device-mapper (linear) (dm)
Disk /dev/mapper/QAAutomationServer--vg-root: 9135MB
Sector size (logical/physical): 512B/512B
Partition Table: loop

Number  Start  End     Size    File system  Flags
 1      0.00B  9135MB  9135MB  ext4


Model: Linux device-mapper (linear) (dm)
Disk /dev/mapper/QAAutomationServer--vg-swap_1: 33.6GB
Sector size (logical/physical): 512B/512B
Partition Table: loop

Number  Start  End     Size    File system     Flags
 1      0.00B  33.6GB  33.6GB  linux-swap(v1)


Model: Xen Virtual Block Device (xvd)
Disk /dev/xvda: 42.9GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system  Flags
 1      1049kB  256MB   255MB   primary   ext2
 2      257MB   42.9GB  42.7GB  extended
 5      257MB   42.9GB  42.7GB  logical                lvm

編輯2

我对 lvm 进行了一些研究,了解到我可以使用lvextend和调整逻辑分区的大小lvreduce

这是输出lvdisplay

lvdisplay
  --- Logical volume ---
  LV Path                /dev/QAAutomationServer-vg/root
  LV Name                root
  VG Name                QAAutomationServer-vg
  LV UUID                ZRnyaa-fDlK-ulAH-2rcv-Haga-lxuU-TB0kqb
  LV Write Access        read/write
  LV Creation host, time QAAutomationServer, 2015-09-04 11:57:16 -0700
  LV Status              available
  # open                 1
  LV Size                8.51 GiB
  Current LE             2178
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

  --- Logical volume ---
  LV Path                /dev/QAAutomationServer-vg/swap_1
  LV Name                swap_1
  VG Name                QAAutomationServer-vg
  LV UUID                QTPf2n-y8CA-FZDL-3xLH-33BX-mZIv-Zx1Jyu
  LV Write Access        read/write
  LV Creation host, time QAAutomationServer, 2015-09-04 11:57:17 -0700
  LV Status              available
  # open                 0
  LV Size                31.25 GiB
  Current LE             8000
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

因此,我正在尝试lvreduce -L -5g /xyz交换分区,然后lvextend -L +5g /abc尝试根分区。

一旦完成,我将sudo resize2fs /def在根分区上执行

我不确定这是否能确保不丢失数据,但我现在可以看到根分区上有额外的空间。

df -h
Filesystem                               Size  Used Avail Use% Mounted on
udev                                      16G  4.0K   16G   1% /dev
tmpfs                                    3.1G  712K  3.1G   1% /run
/dev/mapper/QAAutomationServer--vg-root   14G  7.1G  5.6G  57% /
none                                     4.0K     0  4.0K   0% /sys/fs/cgroup
none                                     5.0M     0  5.0M   0% /run/lock
none                                      16G     0   16G   0% /run/shm
none                                     100M     0  100M   0% /run/user
/dev/xvda1                               236M   68M  156M  31% /boot

答案1

您在注释顶部显示的不是您的分区表。它是您已安装系统的列表。/run/shm
和 /dev 不是“真实”文件系统。它们是位于计算机 RAM 中的虚拟文件系统。它们不使用任何磁盘空间。
真正有趣的是:

Model: Xen Virtual Block Device (xvd)
Disk /dev/xvda: 42.9GB
[...]
Number  Start   End     Size    Type      File system  Flags
 1      1049kB  256MB   255MB   primary   ext2
 2      257MB   42.9GB  42.7GB  extended
 5      257MB   42.9GB  42.7GB  logical                lvm

您的虚拟磁盘设备(大小约为 42GB)分为两个主分区:1:启动(挂载到 /boot)2:扩展在您的扩展分区中,您有一个用于 lvm 的分区。LVM 代表 Linux 卷管理器。它会创建一个虚拟块设备,您可以将其用作常规块设备,但可以“动态”扩展或收缩,并使用多个物理卷构建它,这在某些情况下非常方便。

在该虚拟设备上,您有两个虚拟分区:
首先:

/dev/mapper/QAAutomationServer--vg-root: 9135MB

它被挂载为你的根分区,其次:

/dev/mapper/QAAutomationServer--vg-swap_1: 33.6GB

这是你的交换。

正如您所看到的,交换占用了整个驱动器的 3/4 以上。

所以我的建议是:1. 关闭交换 2. 删除/缩小交换分区 3. 扩展根分区 4. 调整根文件系统大小(这可能可以在“实时”文件系统上完成)5. 使用剩余空间创建交换分区 6. 打开交换

在这里您将找到如何处理 LVM 卷:http://www.tecmint.com/extend-and-reduce-lvms-in-linux/

答案2

由于我使用进行了初始设置lvm,因此我能够使用 lvm 来调整逻辑卷的大小,然后调整根分区的大小。

https://wiki.ubuntu.com/Lvm

lvdisplay- 列出所有可用的 lvm 分区

lvreduce -L -5g /lvmpartition- 将选定的 lvmpartition 减少 5G

lvextend -L +5g /lvmpartition- 将选定的 lvmpartition 扩展 5G

由于我已分配大约 30G 给交换,因此我可以将其缩小到 10G,并使用由此产生的 20G 可用空间扩展 lvm-root 分区。

lvdisplay修改后的输出如下

  LV Path                /dev/QAAutomationServer-vg/root
  LV Name                root
  VG Name                QAAutomationServer-vg
  LV UUID                ZRnyaa-fDlK-ulAH-2rcv-Haga-lxuU-TB0kqb
  LV Write Access        read/write
  LV Creation host, time QAAutomationServer, 2015-09-04 11:57:16 -0700
  LV Status              available
  # open                 1
  LV Size                30.51 GiB
  Current LE             7810
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

  --- Logical volume ---
  LV Path                /dev/QAAutomationServer-vg/swap_1
  LV Name                swap_1
  VG Name                QAAutomationServer-vg
  LV UUID                QTPf2n-y8CA-FZDL-3xLH-33BX-mZIv-Zx1Jyu
  LV Write Access        read/write
  LV Creation host, time QAAutomationServer, 2015-09-04 11:57:17 -0700
  LV Status              available
  # open                 0
  LV Size                9.25 GiB
  Current LE             2368
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

现在我sudo resize2fs在根分区上做了以下输出df -h

df -h
Filesystem                               Size  Used Avail Use% Mounted on
udev                                      16G  4.0K   16G   1% /dev
tmpfs                                    3.1G  712K  3.1G   1% /run
/dev/mapper/QAAutomationServer--vg-root   30G  7.1G   22G  25% /
none                                     4.0K     0  4.0K   0% /sys/fs/cgroup
none                                     5.0M     0  5.0M   0% /run/lock
none                                      16G  4.0K   16G   1% /run/shm
none                                     100M     0  100M   0% /run/user
/dev/xvda1                               236M   68M  156M  31% /boot

这增加了我的根分区上的空间。希望这个答案能帮助遇到类似问题的人。

相关内容