fdisk看有50G,df看只有16G?

in 元件分享 with 0 comment

去年看到有个土耳其的VPS,做活动4C8G,一年11美元,合起来一年不到一百块,果断入手,当玩具鸡玩。
虽然这台VPS网络一直非常差,还时不时就报警说内存超标,我根本没开什么应用,8G就超了,看来这个运营商的底层是有问题的,可能识别非常不准确。
不过更不准确的,是他的硬盘,我装的UBUNTU 22,结果怎么看到他们后台的硬盘才16G,刚安装好系统,硬盘就爆了?我头炸了。

到服务器一看,发现fdisk的时候,居然是50G,这,,,

df -h 只有16G

root@45:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           796M  1.3M  794M   1% /run
/dev/sda2        16G  7.3G  7.7G  49% /
tmpfs           3.9G   16K  3.9G   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           796M  4.0K  796M   1% /run/user/0

fdisk -l 有50G

root@45:~# fdisk -l
Disk /dev/loop0: 61.96 MiB, 64970752 bytes, 126896 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop1: 79.95 MiB, 83832832 bytes, 163736 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop3: 40.86 MiB, 42840064 bytes, 83672 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop4: 111.95 MiB, 117387264 bytes, 229272 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
Disk model: Virtual disk    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 42CD6F0A-A098-4F2B-B602-B2AED035CDA1
Device     Start       End   Sectors Size Type
/dev/sda1   2048      4095      2048   1M BIOS boot
/dev/sda2   4096 104857566 104853471  50G Linux filesystem

lsblk 也看到是50G

root@45:~# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0    7:0    0    62M  1 loop /snap/core20/1587
loop1    7:1    0  79.9M  1 loop /snap/lxd/22923
loop3    7:3    0  40.9M  1 loop /snap/snapd/20290
loop4    7:4    0 111.9M  1 loop /snap/lxd/24322
sda      8:0    0    50G  0 disk 
├─sda1   8:1    0     1M  0 part 
└─sda2   8:2    0    50G  0 part /
sr0     11:0    1  1024M  0 rom

这怎么办?

这个sda2,两边看到的不一样。

搜了一下,找到了一个简单的办法。
resize2fs /dev/sda2

root@45:~# resize2fs /dev/sda2
resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/sda2 is mounted on /; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 7
The filesystem on /dev/sda2 is now 13106683 (4k) blocks long.

再看df -h

Filesystem      Size  Used Avail Use% Mounted on
tmpfs           796M  1.3M  794M   1% /run
/dev/sda2        50G  7.3G   40G  16% /
tmpfs           3.9G   16K  3.9G   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           796M  4.0K  796M   1% /run/user/0

管理后台和宝塔,也都显示为了50G。

查了一下这个命令:

resize2fs命令是一个非常强大的工具,可以用来在线地对Linux文件系统进行改变。此命令可以处理 ext2, ext3, 和 ext4文件系统。它可以用来在文件系统已经挂载的情况下,在在线状态下对文件系统进行扩容或缩小。下面我们将从详细介绍此命令,以及如何使用它来改变文件系统的大小。

一、restore命令用于

restore命令用于将一个由dump命令产生的备份还原到一个新的文件系统中。这是非常有用的,因为如果您无意中删除了重要的文件,您可以使用这个命令来从备份中恢复这些文件。restore命令有很多选项可以使用,例如可以指定只还原某个目录下的文件。

$ restore -C -f /dev/st0 /home

二、reset命令

reset命令通常用于调试终端的操作。它将终端重置为默认的状态,这对于恢复意外改变终端配置的情况非常有用。使用reset命令时,您的终端将会闪烁一下,然后返回到初始界面。

$ reset
\end{verbatim}

三、reshape命令

reshape命令用于更改ext2、ext3、ext4文件系统中的块组大小。如果您的文件系统已经在使用,而你希望将块组大小更改为较小的值,这个命令可能会非常有用。在更改块组大小的过程中,您的文件系统将会被卸载。

$ umount /dev/sda1
$ resize2fs -M /dev/sda1
$ mke2fs -t ext4 -b 2048  /dev/sda1

四、restrict命令

restrict命令用于将文件系统的大小限制为块设备的大小。这可能会有助于解决文件系统大小与块设备大小不匹配的问题。它可以确保块设备没有空白区域,这可能会导致无法使用这些空白区域。下面是一个简单的命令示例,它将限制文件系统的大小等于块设备的大小。

$ resize2fs -s /dev/sda1

五、命令示例

下面是一个命令示例,展示如何使用resize2fs命令来扩展一个文件系统:

$ df -h /  Filesystem  Size  Used  Avail  Use%  Mounted on /dev/hda1 20G  8.0G  12G  40%  / $ resize2fs /dev/hda1 30G resize2fs 1.41.3  (12-Oct-2008)  Filesystem at /dev/hda1 is mounted on /; on-line resizing required Performing an on-line resize of /dev/hda1 to 31457280  (4k) blocks.  The filesystem on /dev/hda1 is now 31457280 blocks long. $ df -h /  Filesystem  Size  Used  Avail  Use%  Mounted on /dev/hda1 30G  8.0G  22G  27%  /

以上是对resize2fs命令的详细介绍,从如何使用restore命令来恢复文件、reset命令用于终端调试,reshape命令用于更改文件系统块组大小,restrict命令将文件系统大小限制为块设备大小,以及一个命令示例来扩大文件系统的大小。你是否在使用resize2fs命令时感到更加得心应手了呢?

Responses