昨天,我在一台旧笔记本电脑上安装了 ubuntu 服务器,用作 Jellyfin 和其他应用程序的家庭服务器。一切都很顺利,直到我运行“df -h”命令来检查磁盘上的可用空间,它显示 / 上总共只有 98G。
homeserver@homeserver:~$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 380M 1.7M 379M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 98G 19G 75G 20% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/sda2 2.0G 131M 1.7G 8% /boot
/dev/sda1 1.1G 6.1M 1.1G 1% /boot/efi
tmpfs 380M 4.0K 380M 1% /run/user/1000
该笔记本电脑大约有半兆字节的硬盘。 lsblk 输出:
homeserver@homeserver:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 55.7M 1 loop /snap/core18/2785
loop1 7:1 0 268.5M 1 loop /snap/nextcloud/35878
loop2 7:2 0 49.8M 1 loop /snap/snapd/18357
loop3 7:3 0 63.3M 1 loop /snap/core20/1822
loop4 7:4 0 111.9M 1 loop /snap/lxd/24322
loop5 7:5 0 53.3M 1 loop /snap/snapd/19457
loop6 7:6 0 63.4M 1 loop /snap/core20/1974
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 1G 0 part /boot/efi
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 462.7G 0 part
└─new_name-ubuntu--lv 253:0 0 100G 0 lvm /media/drive
/
sr0 11:0 1 1024M 0 rom
我尝试使用以下方式挂载:sudo mount /dev/sda3 /media/drive
,但是显示此错误:
mount: /media/drive: unknown filesystem type 'LVM2_member'.
我尝试按照指南进行操作,这就是为什么它现在被称为 new_name-ubuntu--lv,并且它显示 /media/drive,但我无法正确地做到这一点。
有什么方法可以扩展这 100G 以占用所有可用空间吗?
为了以防万一,这是uname -a
输出:
Linux homeserver 5.15.0-76-generic #83-Ubuntu SMP Thu Jun 15 19:16:32 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
答案1
您需要了解分区和逻辑卷之间的区别。
您正在尝试挂载 /dev/sda3 分区,但是已经有 LVM 对其进行管理(显示为类型lvm
)。
这部分
└─new_name-ubuntu--lv 253:0 0 100G 0 lvm /media/drive
/
显示您已将逻辑卷安装到/media/drive
和/
同时安装为 。这可能是一个故障。
管理 LVM 时有 3 个命令很有用
pvdisplay
- 显示物理体积vgdisplay
- 显示卷组lvdisplay
- 显示逻辑卷
就您而言,您的物理卷是new_name-ubuntu--lv...
。逻辑卷/dev/mapper/ubuntu--vg-ubuntu--lv...
。
无论如何,要扩展 LVM,你需要执行以下操作
a) 找出你使用的文件系统lsblk --fs
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
nvme0n1
├─nvme0n1p1 vfat FAT32 9DE1-20E0 505.1M 1% /boot/efi
├─nvme0n1p2 ext2 1.0 dfxxxx33f-dcde-4884-a09a-68ad7ff0029b 230.6M 46% /boot
└─nvme0n1p3 crypto_LUKS 2 db0sxsxe8-a3fb-4570-bea1-3f1fb93407e4
└─nvme0n1p3_crypt LVM2_member LVM2 001 izpVno-gxxl-7ur7-O60V-I5a7-5hdt-INEmmE
├─magnetron--vg-root ext4 1.0 c49xxx2d-4219-4d38-afca-5a517b121b25 83G 30% /
├─magnetron--vg-swap swap 1 46fxxxxc-2a5c-437e-8df4-3ab122beb148 [SWAP]
└─magnetron--vg-home ext4 1.0 67xxxxba-ee76-4583-ad24-95517e015788 383.5G 69% /home
如您所见,我的root
和都有 ext4 home
。我不知道您拥有哪种类型的文件系统,我以 ext4 为例。
b) 检查卷组的可用空间。您可以使用快捷方式vgs
这应该向你展示如下内容:
VG #PV #LV #SN Attr VSize VFree
magnetron-vg 1 3 0 wz--n- <1.82t 257.02g
如你所见,我有 257.02G 的可用空间。
c)使用以下命令检查逻辑卷的大小lvs
:
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home magnetron-vg -wi-ao---- <1.44t
root magnetron-vg -wi-ao---- <127.94g
swap magnetron-vg -wi-ao---- 6.00g
现在我知道还剩下多少可用空间以及逻辑卷的当前大小。
d) 要扩展它,您需要扩展逻辑卷。对于我的家,它将是(运行时您会在 LV 路径中找到它lvdisplay
)。要占用所有可用空间,您需要运行:
lvextend -l +100%FREE /dev/magnetron-vg/home
e) 然后你需要扩展你的文件系统。我的情况是 ext4。
警告: 确保您的内核和文件系统在挂载时支持在线调整大小 - tune2fs -l /dev/magnetron-vg/home| grep resize_inode
(如果您得到输出,则表示您的文件系统支持在线调整大小)
要调整 ext4 的大小:
resize2fs /dev/magnetron-vg/home
检查一切是否顺利:
e2fsck /dev/magnetron-vg/home
笔记:您可以像 一样在一个命令中执行 lvm 扩展和 ext4 调整大小lvresize --resizefs --size +100%FREE /dev/magnetron-vg/home
,但我不喜欢这样。我喜欢尽可能简单的步骤。如果出现任何问题,您就会确切知道哪里出了问题。