df
,du
,fdisk
,parted
等。
它告诉我有哪些已挂载和未挂载的磁盘,但我留下的未分配空间呢?
当然,我可以使用 Fedora 提供的“磁盘工具”应用程序查看它,但由于我喜欢使用终端,我想在其中查看。
请问有人可以帮我解决这个问题吗?df
,du
,fdisk
,parted
等。
它告诉我有哪些已挂载和未挂载的磁盘,但我留下的未分配空间呢?
当然,我可以使用 Fedora 提供的“磁盘工具”应用程序查看它,但由于我喜欢使用终端,我想在其中查看。
请问有人可以帮我解决这个问题吗?使用 GNU parted
和 print free
命令:
root@sandbox:~# parted
GNU Parted 2.3
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print free
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 64.4GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
32.3kB 1049kB 1016kB Free Space
1 1049kB 256MB 255MB primary ext2 boot
256MB 257MB 1048kB Free Space
2 257MB 64.4GB 64.2GB extended
5 257MB 64.4GB 64.2GB logical lvm
64.4GB 64.4GB 1049kB Free Space
print free
- Tisch查看以TB为单位的空闲空间:
# parted /dev/sda unit TB print free | grep 'Free Space' | tail -n1 | awk '{print $3}'
查看以GB为单位的空闲空间:
# parted /dev/sda unit GB print free | grep 'Free Space' | tail -n1 | awk '{print $3}'
查看以MB为单位的空闲空间:
# parted /dev/sda unit MB print free | grep 'Free Space' | tail -n1 | awk '{print $3}'
查看以字节为单位的空闲空间:
# parted /dev/sda unit B print free | grep 'Free Space' | tail -n1 | awk '{print $3}'
查看以百分比表示的空闲空间:
# parted /dev/sda unit '%' print free | grep 'Free Space' | tail -n1 | awk '{print $3}'
查看以扇区为单位的空闲空间:
# parted /dev/sda unit s print free | grep 'Free Space' | tail -n1 | awk '{print $3}'
请将/dev/sda
更改为您要查找信息的设备名称。 如果您将结果用于任何计算,请确保修剪尾随的字符。
parted
命令中添加 --machine
参数,您将获得以冒号分隔的输出,这比默认的人类可读输出更可靠易解析。 - joschparted /dev/sda print free unit TB
。 - jmk$ sudo sfdisk --list-free /dev/sdX
--quiet
选项。)--json
选项添加到 sfdisk
中,可以获得实际可读的机器输出。 - josch我也曾经遇到过Fedora 26和LVM分区的同样问题,看来我在安装过程中漏掉了某些检查。所以,我的15G根目录已经增加到了227G,就像我需要的那样。
我在这里发布了我遵循的步骤:
0) #df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 824K 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/mapper/fedora-root 15G 2.1G 13G 14% /
tmpfs 1.9G 0 1.9G 0% /tmp
/dev/md126p1 976M 119M 790M 14% /boot
tmpfs 388M 0 388M 0% /run/user/0
1) # vgs
VG #PV #LV #SN Attr VSize VFree
fedora 1 2 0 wz--n- 231.88g 212.96g
2) # vgdisplay
--- Volume group ---
VG Name fedora
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 231.88 GiB
PE Size 4.00 MiB
Total PE 59361
Alloc PE / Size 4844 / 18.92 GiB
Free PE / Size 54517 / 212.96 GiB
VG UUID 9htamV-DveQ-Jiht-Yfth-OZp7-XUDC-tWh5Lv
3) # lvextend -l +100%FREE /dev/mapper/fedora-root
Size of logical volume fedora/root changed from 15.00 GiB (3840 extents) to 227.96 GiB (58357 extents).
Logical volume fedora/root successfully resized.
4) #lvdisplay
5) #fd -h
6) # xfs_growfs /dev/mapper/fedora-root
meta-data=/dev/mapper/fedora-root isize=512 agcount=4, agsize=983040 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1 spinodes=0 rmapbt=0
= reflink=0
data = bsize=4096 blocks=3932160, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 3932160 to 59757568
7) #df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 828K 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/mapper/fedora-root 228G 2.3G 226G 2% /
tmpfs 1.9G 0 1.9G 0% /tmp
/dev/md126p1 976M 119M 790M 14% /boot
tmpfs 388M 0 388M 0% /run/user/0
最好的问候,
pvdisplay
列出物理卷,并查看每个物理卷关联的卷组。如果物理卷未与任何卷组相关联,则可以安全地重新分配或销毁。假设它与卷组相关联,下一步是使用 vgdisplay
显示您的那些卷组。除其他事项外,这将显示您是否有任何可用的“物理扩展”——可以分配给逻辑卷的存储块。您可以通过 vgs
以简洁的形式获得此信息:$ sudo vgs
VG #PV #LV #SN Attr VSize VFree
fedora 1 3 0 wz--n- 237.46g 0
...这里你可以看到我没有任何可用空间。如果有的话,最后一个数字就不会为零。
这很重要,因为这个空闲空间对于du
、df
等工具是不可见的,同时也会在使用fdisk
或其他分区工具时显示为已分配分区。
vgdisplay
对我来说确实是答案,因为大多数安装程序现在都提供了一个很好的选择,即使用加密的LVM来创建卷组和其中的逻辑卷。然后,在移动空间时,未分配的空间位于卷组而不是物理卷分区中。 - 13013SwagR这是一个老问题,但我也想发表我的答案。
既然我们在谈论免费可用空间,我们应该谈谈扇区,因为没有分区或大小调整。
对于我们人类来说,这并没有多少意义。要有可读的信息,我们必须将此数字转换为字节。
所以,我们已经分区的磁盘,并想知道我们可以使用多少空间。个人而言,我不喜欢parted
解决方案,因为我的大脑记忆已经被占满了命令。还有cfdisk
,它给你空闲空间。但我认为fdisk是最快速的解决方案:它是纯粹简单的,没有安装任何东西:执行fdisk / dev / sdx
,然后在交互式Shell中输入v。它将给你剩余的扇区数。
2004-54-0 [17:03:33][root@minimac:~]$> fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2).
..
Command (m for help): v
Remaining 1713 unallocated 512-byte sectors
echo $(((1713*512)/1024))k
,即将1713个扇区乘以512字节(除以1024转换为KB),得到856k..甚至不到900 KB.. 我需要另一个磁盘。df -H
。换句话说,它使用的是1000的倍数,而不是1024。注意:-h和-H之间有区别。# fdisk /dev/sda
查找硬盘中未分配的空间将显示总空间和总柱面值。df -H
中显示为1000的倍数,也可能在df -h
中以1024的倍数显示。请按照以下步骤操作:
找到设备类型,例如 /dev/sda、/dev/hda、/dev/vda 等。
查看 vi /etc/fstab 文件,找出已挂载的分区及其 UUID。
假设你的硬盘标记为 /dev/sda,并且你知道 df -hT 命令下有多少个 /dev/sda。
接下来需要找到剩余的 /dev/sda*。
执行 fdisk -l /dev/sda* 命令将列出所有的 /dev/sda*,例如 /dev/sda4 或 /dev/sda5。
然后找出已挂载的分区的 UUID,如果它们没有在 /etc/fstab 中列出,则可以格式化并挂载。
按照这个步骤操作即可。智者千虑,必有一失。
parted /dev/sda
print free
文件系统大小可能与分区大小不同。要进行修复,您需要执行以下操作:
df -h
查看分区名称,例如/dev/sda3
resize2fs /dev/sda3
open(2)
但已经unlink(2)
的文件仍然会占用磁盘空间。 - Basile Starynkevitch