新添加的信息

新添加的信息

看起来 du 在计算磁盘使用情况时对 #open 文件打了折扣,当我看到 df 显示 100% 使用率,而 du 说只有 40% 正在使用时,这让我很震惊。

当我查看这个时,我意识到有一些打开的文件被占用空间的活动进程使用

sudo /usr/sbin/lsof | grep services

输出:

java 3772根44r REG 9,5 76608 11649161 /services/apache-tomcat-6.0.20/lib/jsp-api.jar
java 3772根74r REG 9,5 724225 16829492 /services/apache-tomcat-6.0.20/webapps/myapp/WEB-INF/lib/mysql-connector-java-5.1.10-bin.jar
smbd 3794 根内存 REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 3794根2w REG 9,5 1096 12320780 /services/samba/logs/smbd.log

此命令显示的打开文件总数(显示的输出中的第 7 列)几乎 > 分配的 200GB 空间总量的 60%。

令我惊讶的是,我只能依靠 40% 的分区来进行实际存储。真的吗!这是正常的吗?

我使用这个分区来托管 mysql 数据库、tomcat 服务器、samba、svn 等。

我在这里有什么选择?如果这是正常的期望,我该如何调整才能将所有 200GB 用于我的数据而不打开文件!

新添加的信息

du根据您的一些建议,这里是、df和的输出lsof。我想要解决的问题是没有太多打开的文件,这些文件通常占用超过 50% 的分配磁盘空间。

  1. 我的/services分区最初分配了184GB空间(如命令所示df
  2. 但我的du命令显示仅占用 67GB (649GB-582GB)(不包括 /services/BackupDir 这是外部驱动器)
  3. 而我的lsof显示有 205GB 打开文件(第 7 列的总计),这是荒谬的,因为 205GB + 67GB > 184GB!
#df 显示 /dev/sde 上的硬盘驱动器和外部驱动器
>df-h
已使用的文件系统大小 可用 使用% 安装于
/dev/md0 43G 21G 21G 50% /
/dev/md1 145M 37M 101M 27% /boot
tmpfs 1.9G 0 1.9G 0% /dev/shm
/dev/md3 230G 168G 63G 73% /sharefolder1
/dev/md4 230G 51G 179G 23% /sharefolder2
/dev/md5 184G 183G 1.4G 100% /服务
/dev/md6 138G 33G 106G 24% /home
/dev/md7 94G 3.5G 90G 4% /用户
/dev/md8 230G 196G 23G 90% /sharefolder3
/dev/md9 230G 102G 116G 47% /sharefolder4
/dev/md10 459G 367G 69G 85% /sharefolder5
/dev/sde1 459G 141G 318G 31% /services/BackupDir/ext1
/dev/sde2 230G 85G 145G 37% /services/BackupDir/ext2
/dev/sde3 230G 102G 128G 45% /services/BackupDir/ext3
/dev/sde5 230G 47G 183G 21% /services/BackupDir/ext4
/dev/sde6 230G 172G 58G 75% /services/BackupDir/ext5
/dev/sde7 230G 38G 192G 17% /services/BackupDir/ext6
/dev/sde8 230G 188M 230G 1% /services/BackupDir/ext7

#du 仅显示硬盘上的 /services 分区,子文件夹 BackupDir 是已安装的外部硬盘驱动器
>sudo du --max-深度 = 1 -h /服务
1.2G /服务/svn
331M /服务/httpd
582G /服务/备份目录
16K /服务/丢失+找到
600M /服务/netbeans-6.8
55G /服务/apache-tomcat-6.0.20
9.3G /服务/apache-tomcat-5.5.25
365M /服务/mysql
3.7M /服务/桑巴
649G/服务

/services 上的 #lsof 命令
> sudo /usr/sbin/lsof | sudo /usr/sbin/lsof | grep 服务
mysqld 3632 mysql cwd DIR 9,5 4096 15220739 /services/mysql/lib
mysqld 3632 mysql 1u REG 9,5 51725 15220742 /services/mysql/log/mysqld.log
mysqld 3632 mysql 2u REG 9,5 51725 15220742 /services/mysql/log/mysqld.log
mysqld 3632 mysql 3uW REG 9,5 161480704 15220797 /services/mysql/lib/ibdata1
mysqld 3632 mysql 8uW REG 9,5 5242880 15220798 /services/mysql/lib/ib_logfile0
mysqld 3632 mysql 9uW REG 9,5 5242880 15220799 /services/mysql/lib/ib_logfile1
mysqld 3632 mysql 13u REG 9,5 1024 15220750 /services/mysql/lib/mysql/host.MYI
mysqld 3632 mysql 14u REG 9,5 0 15220751 /services/mysql/lib/mysql/host.MYD
mysqld 3632 mysql 15u REG 9,5 2048 15220753 /services/mysql/lib/mysql/user.MYI
mysqld 3632 mysql 16u REG 9,5 2032 15220754 /services/mysql/lib/mysql/user.MYD
mysqld 3632 mysql 17u REG 9,5 4096 15220747 /services/mysql/lib/mysql/db.MYI
mysqld 3632 mysql 18u REG 9,5 17520 15220748 /services/mysql/lib/mysql/db.MYD
mysqld 3632 mysql 19u REG 9,5 5120 15220759 /services/mysql/lib/mysql/tables_priv.MYI
mysqld 3632 mysql 20u REG 9,5 3404 15220760 /services/mysql/lib/mysql/tables_priv.MYD
mysqld 3632 mysql 21u REG 9,5 1024 15220762 /services/mysql/lib/mysql/columns_priv.MYI
mysqld 3632 mysql 22u REG 9,5 0 15220763 /services/mysql/lib/mysql/columns_priv.MYD
mysqld 3632 mysql 23u REG 9,5 1024 15220795 /services/mysql/lib/mysql/procs_priv.MYI
mysqld 3632 mysql 24u REG 9,5 0 15220796 /services/mysql/lib/mysql/procs_priv.MYD
mysqld 3632 mysql 26u REG 9,5 3072 15220792 /services/mysql/lib/mysql/proc.MYI
mysqld 3632 mysql 27u REG 9,5 1852 15220793 /services/mysql/lib/mysql/proc.MYD
smbd 3752 根内存 REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 3752根2w REG 9,5 1096 12320780 /services/samba/logs/smbd.log
smbd 3752根7u REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 3752根24w REG 9,5 1096 12320780 /services/samba/logs/smbd.log
nmbd 3755 根 2w REG 9,5 2028 12320784 /services/samba/logs/nmbd.log
nmbd 3755 根 3w REG 9,5 2028 12320784 /services/samba/logs/nmbd.log
java 3772根内存REG 9,5 17508 11649135 /services/apache-tomcat-6.0.20/bin/bootstrap.jar
java 3772根内存REG 9,5 9341 11649138 /services/apache-tomcat-6.0.20/bin/commons-daemon.jar
java 3772根内存REG 9,5 19399 11649146 /services/apache-tomcat-6.0.20/bin/tomcat-juli.jar
java 3772根内存REG 9,5 795412 11649645 /services/apache-tomcat-6.0.20/lib/poi-scratchpad-3.5-FINAL-20090928.jar
java 3772根内存REG 9,5 383040 11649637 /services/apache-tomcat-6.0.20/lib/commons-io-1.3.2-javadoc.jar
java 3772根内存REG 9,5 1516415 11649642 /services/apache-tomcat-6.0.20/lib/poi-3.5-FINAL-20090928.jar
java 3772根内存REG 9,5 1395266 11649159 /services/apache-tomcat-6.0.20/lib/jasper-jdt.jar
java 3772根内存REG 9,5 103201 11649158 /services/apache-tomcat-6.0.20/lib/jasper-el.jar
java 3772根内存REG 9,5 123820 11649154 /services/apache-tomcat-6.0.20/lib/catalina-ha.jar
java 3772根内存REG 9,5 88209 11649162 /services/apache-tomcat-6.0.20/lib/servlet-api.jar
java 3772根内存REG 9,5 724225 11650061 /services/apache-tomcat-6.0.20/lib/mysql-connector-java-5.1.10-bin.jar
java 3772根内存REG 9,5 1146570 11649156 /services/apache-tomcat-6.0.20/lib/catalina.jar
java 3772根内存REG 9,5 163177 11649641 /services/apache-tomcat-6.0.20/lib/commons-io-1.4-sources.jar
java 3772根内存REG 9,5 109043 11649639 /services/apache-tomcat-6.0.20/lib/commons-io-1.4.jar
java 3772根内存REG 9,5 197445 11649164 /services/apache-tomcat-6.0.20/lib/tomcat-dbcp.jar
java 3772根内存REG 9,5 69040 11649643 /services/apache-tomcat-6.0.20/lib/poi-contrib-3.5-FINAL-20090928.jar
java 3772根内存REG 9,5 27814 11649157 /services/apache-tomcat-6.0.20/lib/el-api.jar
java 3772根内存REG 9,5 391250 11649644 /services/apache-tomcat-6.0.20/lib/poi-ooxml-3.5-FINAL-20090928.jar
java 3772根内存REG 9,5 230149 11649155 /services/apache-tomcat-6.0.20/lib/catalina-tribes.jar
java 3772根内存REG 9,5 275779 11649634 /services/apache-tomcat-6.0.20/lib/commons-fileupload-1.2.1-javadoc.jar
java 3772根内存REG 9,5 513722 11649160 /services/apache-tomcat-6.0.20/lib/jasper.jar
java 3772根内存REG 9,5 87776 11649636 /services/apache-tomcat-6.0.20/lib/commons-io-1.3.2.jar
java 3772根内存REG 9,5 135544 11649638 /services/apache-tomcat-6.0.20/lib/commons-io-1.3.2-sources.jar
java 3772根内存REG 9,5 66144 11649165 /services/apache-tomcat-6.0.20/lib/tomcat-i18n-es.jar
java 3772根内存REG 9,5 499643 11649640 /services/apache-tomcat-6.0.20/lib/commons-io-1.4-javadoc.jar
java 3772根内存REG 9,5 49147 11649153 /services/apache-tomcat-6.0.20/lib/catalina-ant.jar
java 3772根内存REG 9,5 43742 11649166 /services/apache-tomcat-6.0.20/lib/tomcat-i18n-fr.jar
java 3772根内存REG 9,5 57779 11649632 /services/apache-tomcat-6.0.20/lib/commons-fileupload-1.2.1.jar
java 3772根内存REG 9,5 10807 11649152 /services/apache-tomcat-6.0.20/lib/annotations-api.jar
java 3772根内存REG 9,5 750470 11649163 /services/apache-tomcat-6.0.20/lib/tomcat-coyote.jar
java 3772根内存REG 9,5 73721 11649635 /services/apache-tomcat-6.0.20/lib/commons-fileupload-1.2.1-sources.jar
java 3772根内存REG 9,5 49021 11649167 /services/apache-tomcat-6.0.20/lib/tomcat-i18n-ja.jar
java 3772根内存REG 9,5 76608 11649161 /services/apache-tomcat-6.0.20/lib/jsp-api.jar
java 3772根内存REG 9,5 724225 16829492 /services/apache-tomcat-6.0.20/webapps/myapp/WEB-INF/lib/mysql-connector-java-5.1.10-bin.jar
java 3772根1w REG 9,5 79186 9404433 /services/apache-tomcat-6.0.20/logs/catalina.out
java 3772根2w REG 9,5 79186 9404433 /services/apache-tomcat-6.0.20/logs/catalina.out
java 3772根5r REG 9,5 17508 11649135 /services/apache-tomcat-6.0.20/bin/bootstrap.jar
java 3772根9r REG 9,5 9341 11649138 /services/apache-tomcat-6.0.20/bin/commons-daemon.jar
java 3772根10r REG 9,5 19399 11649146 /services/apache-tomcat-6.0.20/bin/tomcat-juli.jar
java 3772根11w REG 9,5 32125 9404434 /services/apache-tomcat-6.0.20/logs/catalina.2013-09-18.log
java 3772根12w REG 9,5 24718 9404435 /services/apache-tomcat-6.0.20/logs/localhost.2013-09-18.log
java 3772根13w REG 9,5 5336 9404436 /services/apache-tomcat-6.0.20/logs/manager.2013-09-18.log
java 3772根14w REG 9,5 0 9404437 /services/apache-tomcat-6.0.20/logs/host-manager.2013-09-18.log
java 3772根15r REG 9,5 795412 11649645 /services/apache-tomcat-6.0.20/lib/poi-scratchpad-3.5-FINAL-20090928.jar
java 3772根16r REG 9,5 383040 11649637 /services/apache-tomcat-6.0.20/lib/commons-io-1.3.2-javadoc.jar
java 3772根17r REG 9,5 1516415 11649642 /services/apache-tomcat-6.0.20/lib/poi-3.5-FINAL-20090928.jar
java 3772根18r REG 9,5 1395266 11649159 /services/apache-tomcat-6.0.20/lib/jasper-jdt.jar
java 3772根19r REG 9,5 103201 11649158 /services/apache-tomcat-6.0.20/lib/jasper-el.jar
java 3772根20r REG 9,5 123820 11649154 /services/apache-tomcat-6.0.20/lib/catalina-ha.jar
java 3772根21r REG 9,5 88209 11649162 /services/apache-tomcat-6.0.20/lib/servlet-api.jar
java 3772根22r REG 9,5 724225 11650061 /services/apache-tomcat-6.0.20/lib/mysql-connector-java-5.1.10-bin.jar
java 3772根23r REG 9,5 1146570 11649156 /services/apache-tomcat-6.0.20/lib/catalina.jar
java 3772根24r REG 9,5 163177 11649641 /services/apache-tomcat-6.0.20/lib/commons-io-1.4-sources.jar
java 3772根25r REG 9,5 109043 11649639 /services/apache-tomcat-6.0.20/lib/commons-io-1.4.jar
java 3772根26r REG 9,5 197445 11649164 /services/apache-tomcat-6.0.20/lib/tomcat-dbcp.jar
java 3772根27r REG 9,5 69040 11649643 /services/apache-tomcat-6.0.20/lib/poi-contrib-3.5-FINAL-20090928.jar
java 3772根28r REG 9,5 27814 11649157 /services/apache-tomcat-6.0.20/lib/el-api.jar
java 3772根29r REG 9,5 391250 11649644 /services/apache-tomcat-6.0.20/lib/poi-ooxml-3.5-FINAL-20090928.jar
java 3772根30r REG 9,5 230149 11649155 /services/apache-tomcat-6.0.20/lib/catalina-tribes.jar
java 3772根31r REG 9,5 275779 11649634 /services/apache-tomcat-6.0.20/lib/commons-fileupload-1.2.1-javadoc.jar
java 3772根32r REG 9,5 513722 11649160 /services/apache-tomcat-6.0.20/lib/jasper.jar
java 3772根33r REG 9,5 87776 11649636 /services/apache-tomcat-6.0.20/lib/commons-io-1.3.2.jar
java 3772根34r REG 9,5 135544 11649638 /services/apache-tomcat-6.0.20/lib/commons-io-1.3.2-sources.jar
java 3772根35r REG 9,5 66144 11649165 /services/apache-tomcat-6.0.20/lib/tomcat-i18n-es.jar
java 3772根36r REG 9,5 499643 11649640 /services/apache-tomcat-6.0.20/lib/commons-io-1.4-javadoc.jar
java 3772根37r REG 9,5 49147 11649153 /services/apache-tomcat-6.0.20/lib/catalina-ant.jar
java 3772根38r REG 9,5 43742 11649166 /services/apache-tomcat-6.0.20/lib/tomcat-i18n-fr.jar
java 3772根39r REG 9,5 57779 11649632 /services/apache-tomcat-6.0.20/lib/commons-fileupload-1.2.1.jar
java 3772根40r REG 9,5 10807 11649152 /services/apache-tomcat-6.0.20/lib/annotations-api.jar
java 3772根41r REG 9,5 750470 11649163 /services/apache-tomcat-6.0.20/lib/tomcat-coyote.jar
java 3772根42r REG 9,5 73721 11649635 /services/apache-tomcat-6.0.20/lib/commons-fileupload-1.2.1-sources.jar
java 3772根43r REG 9,5 49021 11649167 /services/apache-tomcat-6.0.20/lib/tomcat-i18n-ja.jar
java 3772根44r REG 9,5 76608 11649161 /services/apache-tomcat-6.0.20/lib/jsp-api.jar
java 3772根74r REG 9,5 724225 16829492 /services/apache-tomcat-6.0.20/webapps/myapp/WEB-INF/lib/mysql-connector-java-5.1.10-bin.jar
smbd 3794 根内存 REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 3794根2w REG 9,5 1096 12320780 /services/samba/logs/smbd.log
smbd 3794根5w REG 9,5 1096 12320780 /services/samba/logs/smbd.log
smbd 3794根7u REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
bash 10449 user1 cwd DIR 9,5 4096 14516225 /services/BackupDir
smbd 10647 根内存 REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 10647 root 2w REG 9,5 50351 12320785 /services/samba/logs/sridevi-pc.log
smbd 10647 root 7u REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 10647 root 27w REG 9,5 50351 12320785 /services/samba/logs/sridevi-pc.log
rsync 11030 user1 3r REG 9,10 21418176 23955858 /internalfile500GB/BackupDir/fileserver_services_bkup/internalfile-root-bkup/服务/服务/BackupDir/internalfile_repository_bkup/cng_repository/Deepak/DissertationDefense/Dissertation/Expression/Express离子编码器/屏幕捕获输出/ScreenCapture_7- 25-2011 4.55.33 PM.xesc
smbd 11267 根内存 REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 11267 root 2w REG 9,5 6298 12321110 /services/samba/logs/drwindows8.log
smbd 11267根7u REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 11267 root 28w REG 9,5 6298 12321110 /services/samba/logs/drwindows8.log
smbd 11334 根内存 REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 11334 root 2w REG 9,5 5918 12321012 /services/samba/logs/nmo-dataprocess.log
smbd 11334 root 7u REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 11334 root 32w REG 9,5 5918 12321012 /services/samba/logs/nmo-dataprocess.log
smbd 11489 根内存 REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 11489 root 2w REG 9,5 3484 12320915 /services/samba/logs/hippocampus-pc.log
smbd 11489根7u REG 9,5 8192 12320776 /services/samba/etc/secrets.tdb
smbd 11489 root 28w REG 9,5 3484 12320915 /services/samba/logs/hippocampus-pc.log
sudo 11525 root cwd DIR 9,5 4096 14516225 /services/BackupDir
grep 11526 user1 cwd DIR 9,5 4096 14516225 /services/BackupDir
lsof 11527 root cwd DIR 9,5 4096 14516225 /services/BackupDir
lsof 11528 root cwd DIR 9,5 4096 14516225 /services/BackupDir

#第7列删除的文件大小为0字节!
> sudo /usr/sbin/lsof | sudo /usr/sbin/lsof | grep 删除
mysqld 3632 mysql 4u REG 9,0 0 7070979 /tmp/ibjpoC3F(已删除)
mysqld 3632 mysql 5u REG 9,0 0 7070980 /tmp/ibTKRzCQ(已删除)
mysqld 3632 mysql 6u REG 9,0 0 7070981 /tmp/ibvuExb1(已删除)
mysqld 3632 mysql 7u REG 9,0 0 7070983 /tmp/ibYLMOLb (已删除)
mysqld 3632 mysql 11u REG 9,0 0 7070984 /tmp/ibQfuW1m(已删除)
gpm 3690 root 0u CHR 136,0 0t0 2 /dev/pts/0(已删除)
gpm 3690 root 1u CHR 136,0 0t0 2 /dev/pts/0(已删除)
gpm 3690 root 2u CHR 136,0 0t0 2 /dev/pts/0(已删除)

答案1

您似乎误读了多次运行的命令的输出。

此命令显示的打开文件总数(显示的输出中的第 7 列)几乎 > 分配的 200GB 空间总量的 60%。

我不知道你从哪里得到这个数字。您显示的行总数约为 800kB,约为 200GB 的 0.0004%。

如果您添加的行数多于此处显示的行数,请记住:

  • 如果一个文件被多个进程打开,或者甚至由同一进程在多个描述符上打开(这种情况发生),那么您已经对其进行了多次计数。
  • 其中一些文件位于不同的文件系统上。

如果这是正常的期望,我该如何调整才能将所有 200GB 用于我的数据而不打开文件!

没有什么可以调整的。您可以使用所有空间。您只是对您运行的用于测量磁盘使用情况的命令的输出进行了奇怪的解释。

sudo du --max-depth=1 -h /services

下有挂载点,因此这总结了不在文件系统上但在及其同级上/services的文件的大小。/services/services/BackupDir/ext1

此命令的输出没有提供有关 上的磁盘使用情况的太多有用信息/services。传递选项-xdu告诉它不要下降到安装点。

sudo du -x -h /services

如果报告的尺寸命令小于报告的“占用”大小df /services,有两个可能的原因:

  • 您有一些文件已被删除但仍然打开。这些文件仍然占用空间,但它们没有名称,因此du找不到它们。它们将出现在 的输出中lsof。运行lsof +F1 /services以查看 上已删除但打开的文件的列表/services
  • 下的一些挂载点后面隐藏着文件/services。也许您的应用程序之一在这些文件系统未按预期安装时运行,因此在父文件系统上写入了文件。当文件系统安装在目录上时,这会隐藏该目录中的文件,但当然文件仍然存在。运行以下命令来创建/services没有较低安装点的备用视图并进行探索。

    mkdir /root/services-view
    mount --bind /services /root/services-view
    du /root/services-view/BackupDir/ext?
    

答案2

之间存在这种差异du并不df罕见,但根据我的经验,存在如此大的差异是非常不寻常的。根据我的经验,当应用程序文件(通常是日志文件)通过 删除rm但仍然在应用程序中打开时,就会发生这种类型的差异,因此文件句柄保持打开状态并且内核不允许删除实际数据,但目录中的索引节点条目被删除。因此,df显示空间仍然被占用,但du它查看目录中的文件枚举,没有看到该文件并显示可用空间。我能给您的最好建议是与应用程序一起工作,尝试减少它们保持打开的文件句柄的数量。

答案3

除了已经建议的原因外,还可能有以下原因:

  • 另一个磁盘安装在充满数据的现有文件夹“上方”
  • du 将计算已安装磁盘的消耗大小,df 将显示实际消耗的大小
  • 解决方案:(如果可能)卸载所有非根磁盘并再次检查大小du -md 1。通过移动来解决问题文件夹到其他地方或安装在不同的地方。

相关内容