如何从安装的驱动器获得可用空间Redhat 7

在我们的虚拟机基础架构中,我们将集群主机转到SAN。

我想知道的是在我们的Redhat服务器中删除文件时剩下多less“空白”。 在我们的Windows服务器上,我们使用sdelete,并清除这个问题,但是,我很难find一个解决scheme。

我将“空白”定义为行业? 遗留下来的是,SSD驱动器必须首先将其清零,然后才能写入。

有一点我要指出的是,当谈到Linux我知道足够危险,但不是一个超级用户。

查看驱动器和分区:

[root@rhserver1-DATA10 /]# fdisk -l Disk /dev/sda: 53.7 GB, 53687091200 bytes, 104857600 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 label type: dos Disk identifier: 0x0005d52e Device Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 104857599 51915776 8e Linux LVM Disk /dev/sdb: 53.7 GB, 53687091200 bytes, 104857600 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/mapper/rhel_rhserver1--data10-root: 51.0 GB, 50964987904 bytes, 99540992 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/mapper/rhel_rhserver1--data10-swap: 2147 MB, 2147483648 bytes, 4194304 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 

现在看看磁盘使用情况:

 [root@rhserver1-DATA10 /]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/rhel_rhserver1--data10-root 48G 6.1G 42G 13% / devtmpfs 906M 0 906M 0% /dev tmpfs 921M 340K 920M 1% /dev/shm tmpfs 921M 90M 831M 10% /run tmpfs 921M 0 921M 0% /sys/fs/cgroup /dev/sdb 50G 3.5G 44G 8% /ACMS01Backup /dev/sda1 497M 210M 288M 43% /boot tmpfs 185M 20K 185M 1% /run/user/1000 tmpfs 185M 0 185M 0% /run/user/1002 

经过几个小时的search,我发现这个,我想这是告诉我有多less“空白”可用于清理。

 [root@rhserver1-DATA10 /]# parted /dev/sda unit MB print free | grep 'Free Space' | tail -n1 | awk '{print $3}' 1.02MB [root@rhserver1-DATA10 /]# parted /dev/sda unit '%' print free | grep 'Free Space' | tail -n1 | awk '{print $3}' 0.00% 

我认为一个497M分区的合理输出。

所以现在我只想在我的挂载驱动器上做同样的事情(我认为它挂载了。)

  parted /dev/mapper/rhel_rhserver1--data10-root unit MB print free | grep 'Free Space' | tail -n1 | awk '{print $3}' parted /dev/mapper/rhel_rhserver1--data10-root unit '%' print free | grep 'Free Space' | tail -n1 | awk '{print $3}' 

没有给我什么

我的/ etc / fstab /:

 [root@rhserver1-DATA10 /]# cat /etc/fstab /dev/mapper/rhel_rhserver1--data10-root / xfs defaults 0 0 UUID=2f97a17c-a6d5-4904-ad5c-7c16b4510201 /boot xfs defaults 0 0 /dev/mapper/rhel_rhserver1--data10-swap swap swap defaults 0 0 /dev/disk/by-uuid/be4c45cf-5d72-4b97-b647-2e585947041f /ACMS01Backup auto nosuid,nodev,nofail,x-gvfs-show 0 0 

所以我的问题是我在正确的道路上?

我解释了我在找什么?

有没有一个术语“空白”,可以帮助我的谷歌search?

我发现我可以在根上运行“fstrim -v /”,但我真的很想知道有多less空间。

另外我想弄清楚的是,这些论文是生产系统是fstrim I / O密集型,应该在非高峰时段运行?

任何数据丢失运行“fstrim -v /”的机会?

能够在/分区上运行fstrim将是最好的解决scheme,然而,他们configurationESXi的方式是不可能的。

您需要能够在VM和存储设备上启用丢弃。

尝试使用xfs文件系统减小分区或逻辑卷的大小是不可能的,这是Fedora已知的一个错误。 如果您对此function感兴趣,请联系红帽支持部门并参考红帽bugzilla 1062667,并提供您需要XFS缩小/缩小的用例。

作为在某些环境中可能的解决方法,精简configuration的LVM卷可以被视为XFS文件系统下的附加层。

如果虚拟机需要密集configuration的VMDK,这意味着当您试图修剪(技术上说,SCSI UNMAP)卷时,没有什么可以回收的。

如果后端存储正在运行自动精简configuration,则还需要使用延迟归零VMDK文件,以减less存储空间,并使后端能够caching/重复删除热数据。

两种可能的select:

  1. 当存储由SAN上的远程服务器提供时,如果存储设备是精简configuration的,则只能丢弃块。

    1. 将所有VM的VMotion移动到不同的数据存储区,并使用内置的VMWare工具
    2. 使用SSH连接到ESXi主机
    3. 导航到虚拟机文件夹
    4. 使用duvalidation磁盘使用情况
    5. 运行vmkfstools -K [磁盘]
    6. 使用duvalidation磁盘使用情况
  2. dd if = / dev / zero of = BIGFILE bs = 1024000 rm -f BIGFILE

从我可以告诉这个做与sdelete相同的事情,但它可以导致磁盘I / O的尖峰以及需要一段时间运行。

有事要过夜

任何一个选项都不是最好的,但重新格式化每个虚拟机,以获得ext3或ext4听起来不可行。

你可以做的是为所有的linux虚拟机设置一个关联规则,并使用上面的选项1。

我在几周前试图做同样的事情,我不知道该怎么做。 我同意Redhat支持门户上的官方声明。

目前无法使用xfs文件系统来减小分区或逻辑卷的大小。 如果您对此function感兴趣,请联系红帽支持部门并参考红帽bugzilla 1062667,并提供您需要XFS缩小/缩小的用例。 作为某些环境中可能的解决方法,精简configuration的LVM卷可被视为XFS文件系统下的附加层。

祝你好运!!