`

(转)磁盘空间满故障排除

阅读更多
磁盘空间满一般情况下使用du可以快速定位到那个目录占用了大量的磁盘空间。
这里主要讲两个使用du无法查看的情况。

# 现象/mnt分区磁盘使用率达到100%
# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              97G  1.5G   90G   2% /
/dev/sda1             190M   12M  169M   7% /boot
none                  2.0G     0  2.0G   0% /dev/shm
/dev/sda3              97G  6.3G   85G   7% /usr
/dev/sda6             191G  408M  181G   1% /var
tmpfs                 300M  300M     0 100% /mnt
/dev/loop0            190M  106M   74M  60% /mnt/foo
# 进入/mnt目录使用du查看/mnt下的磁盘使用率
# cd /mnt
# du -sh *
101M    bar
101M    foo

# troubleshooting
# 解决思路
# 有两种情况会干扰du查看磁盘空间使用率
# 1、删除的文件使用du无法查看
# 2、磁盘分区的某一个目录挂载了另外一个分区时,du查看到的磁盘空间为挂载分区后的目录空间。
# 在了解上面两种情况后,解决这个问题会比较简单。
# 在生产环境中某一程序的日志文件被删除这一情况发生的几率会大些。

# 故障排除
# 1、查找被删除文件
# 被删除文件,在写程序未退出的情况下,被删除文件同样会占用磁盘空间。

# lsof -n | head -1
COMMAND     PID     USER   FD      TYPE     DEVICE     SIZE       NODE NAME
# lsof -n /mnt | grep deleted
foo.sh  32593 root    1w   REG   0,18 104538112 981982 /mnt/test.out (deleted)
foo.sh  32593 root    2w   REG   0,18 104538112 981982 /mnt/test.out (deleted)

# 杀掉写文件的程序,磁盘空间会自然释放
# kill 32593
# df -h /mnt
Filesystem            Size  Used Avail Use% Mounted on
tmpfs                 300M  201M  100M  67% /mnt

# 2、查看分区挂载情况
# 因为分区的目录下挂载有其它分区,被挂载分区的目录本身容量无法被查看,所以umount掉挂载分区的目录后将可正常查看此目录下文件所占用的容量。
# cd /mnt
# du -sh *
101M    bar
101M    foo #此容量为目录挂载分区后的新分区容量
# umount /mnt/foo
# du -sh *
21M     bar
201M    foo #此容量为目录所占用磁盘满分区的容量

---------------------------------------------------------------------------

测试环境搭建过程

# 挂载300M的内存tmpfs到/mnt目录
# mount -t tmpfs -o size=300m tmpfs /mnt
# cd /mnt && mkdir foo bar
# 先生成两个文件到foo bar下,占用一定的磁盘空间
# dd if=/dev/zero of=foo/file.out bs=1M count=100
# dd if=/dev/zero of=bar/file.out bs=1M count=100  
# 查看磁盘当时的使用情况
# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              97G  1.5G   90G   2% /
/dev/sda1             190M   12M  169M   7% /boot
none                  2.0G     0  2.0G   0% /dev/shm
/dev/sda3              97G  6.3G   85G   7% /usr
/dev/sda6             191G  408M  181G   1% /var
tmpfs                 300M  201M  100M  67% /mnt
# 使用空文件建立一个文件系统
# cd /root/shell
# 生成200M的空文件
# dd if=/dev/zero of=foo.img bs=1M count=200
# 建立一个loop devices
# losetup /dev/loop0 foo.img
# 在loop devices上创建一个ext3文件系统
# mke2fs -j -c /dev/loop0 200000
# 使用/mnt/foo目录挂载/dev/loop0
# mount -t ext3 /dev/loop0 /mnt/foo
# 在/mnt/foo/目录产生一个测试文件file.out
# dd if=/dev/zero of=/mnt/foo/file.out bs=1M count=100
# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              97G  1.5G   90G   2% /
/dev/sda1             190M   12M  169M   7% /boot
none                  2.0G     0  2.0G   0% /dev/shm
/dev/sda3              97G  6.3G   85G   7% /usr
/dev/sda6             191G  408M  181G   1% /var
tmpfs                 300M  201M  100M  67% /mnt
/dev/loop0            190M  106M   74M  60% /mnt/foo
# /mnt/foo目录挂载方式伪装已经完成

# 删除文件伪装
# 编写一个死循环产生测试文件
# cat /root/shell/foo.sh
#!/bin/bash
# set -x
foo=$(seq 1 500)

while :
do
   echo $foo
done
# 生成一个测试文件test.out占用/mnt目录的空间
# nohup /root/shell/foo.sh >/mnt/test.out 2>&1 &
# 删除测试文件
# rm /mnt/test.out
# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              97G  1.5G   90G   2% /
/dev/sda1             190M   12M  169M   7% /boot
none                  2.0G     0  2.0G   0% /dev/shm
/dev/sda3              97G  6.3G   85G   7% /usr
/dev/sda6             191G  408M  181G   1% /var
tmpfs                 300M  300M     0 100% /mnt
/dev/loop0            190M  106M   74M  60% /mnt/foo
分享到:
评论
2 楼 jackyrong 2013-01-24  
nohup startapusic & > /dev/null
1 楼 jackyrong 2013-01-24  
lsof -n /u01 |grep deleted

相关推荐

    Oracle日常维护故障定位故障排除

    3. 临时表空间无法扩展:临时表空间满时,数据库操作可能暂停。确保有足够的磁盘空间,并合理设置临时表空间的自动扩展属性。 二、数据库功能/性能异常 4. RMAN备份挂起:未及时打补丁可能导致RMAN备份过程中出现...

    操作系统与常见应用程序的故障排除.ppt

    当用户遇到如开始菜单、任务栏、桌面、文件夹视图或辅助功能选项的配置问题时,技术人员需要了解如何分析问题的原因,如权限问题、磁盘空间不足、配置文件损坏或丢失等,并提供相应的解决方案。 总之,这份文件为...

    Linux实战型企业运维工程师试题测评 433页

    对于文档中提到的故障案例,如“文件系统只读”、“MySQL数据库启动故障”、“磁盘空间满了但未满”等,都是运维工作中常见的问题,运维工程师需要根据故障的具体表现,运用相应知识点和工具进行诊断和解决。...

    NetBackup Troubleshoot Guide

    - **解决与磁盘已满相关的问题**:当磁盘空间不足时,备份操作可能会失败。 - **解决与PBX相关的问题**: - **必须安装PBX**:PBX是NetBackup系统中的一个组件,用于处理介质管理和监控。 - **PBX必须处于运行...

    Oracle DBA日常运维及应急故障处理手册

    对于磁盘空间不足的问题,DBA需要知道如何清理归档日志文件,以免归档目录满造成数据库无法连接。同时,DBA还需了解如何处理网卡和网络问题,这些都会影响到数据库的正常运行。 8. 实践操作 进行常规的数据库性能...

    Oracle数据库日常维护手册.pdf

    - 如果磁盘空间不足,可能会影响Oracle数据库的正常运行。 ##### 4.4 检查表空间使用情况 - **SQL命令**:`SELECT tablespace_name, sum(bytes)/1024/1024 "Total MB", (sum(bytes) - sum(free))/1024/1024 "Used ...

    常见电脑故障的英语提示.docx

    ### 常见电脑故障英文提示解析 #### 概述 本文档收集并解析了一些常见的电脑故障英文提示信息,旨在帮助用户理解这些信息的具体含义及其应对...这有助于提高计算机维护和故障排除的能力,减少因语言障碍而带来的不便。

    Java线上故障排查方案.pdf

    1. **系统异常**:例如CPU占用率过高、磁盘空间100%满、系统可用内存过低等。 2. **业务异常**:如服务运行一段时间后自动退出、服务间调用耗时过长、多线程并发处理时出现问题、线程死锁等。 #### 三、如何定位...

    Oracle_ORA-12518故障_处理

    本文旨在探讨如何接近并解决ORA-12518/TNS-12518错误,并提供详细的故障排除指南。 #### 最后审核日期 本指南最后审核于2008年1月29日,确保了内容的时效性和准确性。 #### 故障排查细节 ##### 第一部分:处理...

    ORACLE修改表空间方法

    5. **改变表空间的读写权限**:在维护或故障排除期间,可能需要暂时禁用表空间的写入权限: ```sql ALTER TABLESPACE 表空间名 READ ONLY; ``` 要恢复读写权限,执行: ```sql ALTER TABLESPACE 表空间名 ...

    HANA trouble shooting guide

    磁盘问题排查需要关注磁盘空间回收和内部磁盘满的事件分析。例如,Alert30表示的内部磁盘满的警告需要及时处理,以避免系统运行中断。 I/O性能和延迟分析是性能优化的另一个重点。特别是备份和恢复过程中,I/O性能...

    MySQL 叢集評估指南

    - 表空间满了(内存或磁盘空间不足)。 - 重做日志(REDO log)空间不足。 - 锁死超时。 - 部分变更处理。 7. 结论和资源 该指南提供了一套全面的评估MySQL集群的方法,帮助用户确定应用程序是否适合使用MySQL集群...

    oracle ora-03113错误

    - 磁盘空间检查结果显示,磁盘利用率仅为30%左右,排除了磁盘空间不足的可能性。 2. **Oracle内部错误检查**: - 在`$ORACLE_HOME/admin/SID/cdump`目录下发现了大量的core文件,但这些文件为空,无法提供有用的...

    电脑关机时出现错误提示和 经典蓝屏案意义破解 .txt

    36. **0x00000024 磁盘已满**:磁盘空间不足。 37. **0x00000025 错误的函数**:函数调用不正确。 38. **0x00000026 错误的中断处理程序**:中断处理程序存在问题。 39. **0x00000027 端口已被占用**:指定的端口已...

    乌海机场气象数据库系统和SQL服务器的常见问题分析与解决.pdf

    - 分析进程日志文件以确定故障原因,对异常的进程进行故障排除。 6. 文献引用与分类 - 文章发表于2013年第6期内蒙古气象,文章编号为1005—8656(2013)06—0045—02。 - 文章关键词包括数据库、应用系统和服务器...

    PA分区助手绿色版XP可用

    这个文档通常包含了软件的详细使用指南、常见问题解答以及可能的故障排除步骤,对于初学者来说是很好的学习资源。 总的来说,PA分区助手绿色版凭借其丰富的功能和对XP系统的支持,成为了个人用户和小型企业进行磁盘...

    网站-服务器巡检报告.doc

    4. 磁盘空间:确保系统盘和数据盘有足够的可用空间,避免因存储满而引起的系统崩溃。 5. 操作系统运行:检查启动过程和运行状况,不正常的启动可能提示系统配置问题或软件冲突。 6. 数据库和服务启动:测试数据库...

    win7系统的70种 使用技巧

    20. **清理无用文件:** 清理临时文件和其他不必要的数据,释放磁盘空间。 - **操作步骤:** 1. 打开“我的电脑”。 2. 右键点击C盘,选择“属性”。 3. 点击“磁盘清理”按钮。 以上技巧只是Windows 7众多...

    服务器巡检报告-改.docx编程资料

    **磁盘空间使用率检查** - **工具**:通过计算机管理-磁盘管理或监控软件查看。 - **标准**:当空闲空间小于10%时,应采取措施释放空间,如删除垃圾文件、备份并清理日志文件等。 #### 三、巡检报告模板 文档中...

Global site tag (gtag.js) - Google Analytics