我有一个vps切片运行centos 5.5我应该有15演出的磁盘空间,但根据df它似乎加倍我的磁盘空间使用.
当我以/ root身份运行du -skh *时,我得到:
[root@yardvps1 /]# du -skh *0 aquota.group0 aquota.user5.2M bin4.0K boot4.0K dev4.9M etc2.5G home12M lib14M lib644.0K media4.0K mnt299M opt0 proc692K root23M sbin4.0K selinux4.0K srv0 sys48K tmp2.0G usr121M var
这与我上传到机器的内容一致,最多可增加约5gig.
但是,当我运行df我得到:
[root@yardvps1 /]# dffilesystem 1K-blocks Used Available Use% Mounted on/dev/simfs 15728640 11659048 4069592 75% /none 262144 4 262140 1% /dev
它显示我已经使用了近12场演出.
造成这种差异的原因是什么,我可以做些什么,我根据15场演出计划了服务器,但现在它基本上只让我有大约7演出的东西.
谢谢.
最佳答案导致此效果的最常见原因是已删除的打开文件.如果删除的文件在删除时未被使用,则内核将仅释放已删除文件的磁盘块.否则,这将延迟到文件关闭或系统重新启动.
确保不留下临时文件的常见Unix世界技巧如下:
>进程创建并打开临时文件
>在保持打开文件描述符的同时,该过程取消链接(即删除)文件
>该进程通常使用文件描述符读取和写入文件
>进程完成后关闭文件描述符,内核释放空间
>如果进程(或系统)意外终止,则临时文件已被删除,无需进行清理.
>作为奖励,删除文件可以减少在创建临时文件时命名冲突的可能性,并且还为正在运行的进程提供额外的隐藏层 – 对于除root用户之外的任何人,即.
此行为可确保进程不必处理突然从脚下拉出的文件,并且进程不必相互协商以删除文件.但是,对于来自windows系统的人来说,这是一种意外的行为,因为通常不允许删除正在使用的文件.
当以root身份运行时,lsof命令将显示所有打开的文件,它将专门指示已删除的已删除文件:
# lsof 2>/dev/null | grep deletedbootlogd 2024 root 1w REG 9,3 58 917506 /tmp/init.0W2ARi (deleted)bootlogd 2024 root 2w REG 9,3 58 917506 /tmp/init.0W2ARi (deleted)
停止并重新启动有罪进程,或者只是重新启动服务器应解决此问题.
例如,如果它是挂载的文件系统映像,则内核也可以保持打开已删除的文件.在这种情况下,卸载文件系统或重新启动服务器应该可以解决问题.
在您的情况下,根据“缺失”空间的大小判断,我会查找您用于设置VPS的文件的任何引用,例如安装后删除的Centos DVD映像.
总结以上是内存溢出为你收集整理的linux – du -skh * in /返回与centos 5.5上的df大不相同的大小全部内容,希望文章能够帮你解决linux – du -skh * in /返回与centos 5.5上的df大不相同的大小所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)