密度在我的服务器上,其中一个磁盘显示了错误的空白空间:
/dev/sda2 450G 393G 34G 93% /
Cpanel 显示只有 34GB 可用空间,但实际可用空间远不止这些。几分钟前,我删除了超过 80GB 的日志文件。因此,我确信这完全是错误的。
fdisk -l /dev/sda2也显示出一些错误:
Disk /dev/sda2: 498.0 GB, 498098280960 bytes
255 heads, 63 sectors/track, 60557 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sda2 doesn't contain a valid partition table
我该怎么做才能在不格式化的情况下解决这个问题?
答案1
您说您删除了日志文件,但是您是否确保写入这些日志文件的程序没有继续写入它们?
可以将文件从其目录中删除,但只要有进程仍在写入该文件,该文件仍将存在。该进程稍后可以非常有效地将该文件链接到其他目录(或之前所在的目录)... 并且只需打开文件描述符即可完成此操作。
因此...使用“lsof”查找已删除的文件。重新启动正在写入日志文件的服务,您很可能会看到空间可用。
答案2
在你和之间df
,我相信df
。
文件系统/dev/sda2
可以存储450GB,目前划分如下:
- 已使用 393GB
- 34GB 可用
- 22.5GB 可用,但为 root 保留,因此不计入此
free
列
默认情况下,为 root 保留的空间为 5%(显然你的系统使用默认值,因为数字匹配),你可以使用以下命令更改它tune2fs
但除非你知道自己在做什么,否则我不建议这样做。
fdisk -l /dev/sda2
不包含分区表是意料之中的事情。毕竟,/dev/sda2
是一个分区。分区表位于磁盘上,/dev/sda
。
分区的大小/dev/sda2
为 498098280960 字节。文件系统的大小约为 450*1024*1024*1024 = 483183820800。文件系统数据结构几乎有 14GB(这比我预期的要多一点,我在这里的类似大小的文件系统上有 ~8GB,但也许你允许了很多 inode)。
因此,唯一可能存在问题的是您认为已删除的 80GB 日志。您确定它们都位于此文件系统上吗?其中一些日志可能还保留有硬链接吗?