根文件系统中没有更多空间,如何增加大小?

Dim*_*lov 25 linux fedora filesystems partitioning lvm

这是我的文件系统:

 $ df -h -x tmpfs -x devtmpfs
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/fedora-root  9.8G  7.6G  1.7G  83% /
/dev/mapper/fedora-home   50G   27G   21G  57% /home
/dev/sda9               1022M  8.4M 1014M   1% /boot/efi
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,根文件系统已满。

我已经尝试删除所有无用的东西,但仍然没有足够的空间。

我怎么能增加它?我的硬盘上还有 60 giga 剩余空间,有什么办法可以将我的根文件系统移动到那里吗?

mat*_*tdm 48

好消息!pvscan显示PV /dev/sda10 VG fedora lvm2 [141.56 GiB / 77.56 GiB free]- 所以你应该能够向你的任何文件系统添加多达 77.56GiB。我建议将它添加到较小的块中(如 10GiB),这样/home如果您决定以后需要在那里增长,您就有了一个储备。

这是一个相对经过良好测试且通常安全的操作,但所有根级卷和文件系统操作都有一些风险 - 首先确保您有一个正常运行的备份。然后....

您可以扩展您的root逻辑卷以使用可用空间lvextend,如下所示:

sudo lvextend --size +10G --resizefs /dev/fedora/root
Run Code Online (Sandbox Code Playgroud)

(或者-Land-r而不是--sizeand --resizefs,如果您更喜欢简短的选项。)

  • 虽然有备份总是一个好主意。我认为这是非常低的风险,因为没有移动现有数据并且文件系统(大概)是本机 linux,而不是逆向工程。 (5认同)

小智 10

LVM 更一般的答案:

首先 - 确保您有额外的未分区存储。然后:

  1. 使用fdisk创建新的分区(较安全扩大现有的一个)

  2. 使用pvcreate创建物理LVM卷:

    pvcreate /dev/sdxx
    
    Run Code Online (Sandbox Code Playgroud)
  3. 用于vgextend使用新物理卷扩展现有 LVM 组:

    vgextend groupname /dev/sdxx
    
    Run Code Online (Sandbox Code Playgroud)

    您可以获得组名 vgdisplay

  4. lvextend在 lvm 映射器上使用来扩展 lvm 卷:

    lvextend -l +100%FREE /dev/mapper/xxx
    
    Run Code Online (Sandbox Code Playgroud)
  5. 扩展文件系统:

    xfs_growfs /dev/mapper/xxx
    
    Run Code Online (Sandbox Code Playgroud)

    或者

    resize2fs /dev/mapper/xxx
    
    Run Code Online (Sandbox Code Playgroud)