Linux清理

分析查找大文件(均以root权限操作)

列出所有挂载点使用情况

df -T
df -hT  # 人类友好显示

这里写图片描述
查看某个文件夹h或文件大小

du -sh /etc/
du -sh .hosts.swp  # 文件以经被我删掉了,152G直接挤爆了根目录,应该是使用vim写入hosts的时候没有正确关闭,就一直写,一个文件写了152G

这里写图片描述
查找出当前文件夹下大于1G的文件

find . -type f -size +1G

这里写图片描述
删除某个文件或文件夹(名称一定要看仔细!)

rm -rf 文件名
rm -rf 文件夹名
<think>好的,我现在需要帮助用户解决在Linux系统中清理硬盘空间的问题。用户之前已经询问过相关内容,并且现在需要更详细的命令教程。首先,我应该回忆常见的清理方法,确保覆盖主要的空间占用点。 首先想到的是使用df和du命令来查看磁盘使用情况。用户需要先确定哪个分区或目录占用了大量空间,因此这部分应该是第一步。然后,清理旧的日志文件,因为日志通常会占用不少空间,尤其是长期运行的服务器。可能需要提到查找和删除特定时间前的日志,比如使用find命令加上-mtime参数。 接下来是清理软件包缓存,不同的Linux发行版有不同的包管理工具。比如,基于Debian的系统可以使用apt-get clean,而Red Hat系的可以用yum或dnf clean all。这部分需要分开展示,确保用户能根据系统选择合适的命令。 然后,处理系统日志,可能需要提到journalctl来清理旧的系统日志,但要注意不要误删当前重要的日志。另外,/var/log目录下手动删除日志文件也是一个方法,但建议使用logrotate来管理,避免服务出现问题。 还有清理临时文件,比如/tmp和/var/tmp,不过这些通常会被系统自动清理,但用户可能需要手动删除某些大文件。此外,查找大文件和大目录的工具如ncdu和find命令应该提到,帮助用户定位问题。 用户可能不知道的还有孤儿包和未使用依赖的清理,比如deborphan和apt-get autoremove,这些可以释放空间。另外,清空大文件内容而不是直接删除,特别是当文件被进程占用时,可以用truncate或重定向空内容,比如使用echo "" > file或者>/proc/PID/fd/N的方法,这部分需要引用之前的例子来说明。 最后,要提醒用户谨慎操作,尤其是在删除系统文件或日志前确认是否必要,避免影响系统稳定性。同时,提供一些维护建议,比如定期清理和设置日志轮转,帮助用户预防空间不足的问题。 现在需要组织这些步骤,确保逻辑清晰,命令正确无误。每个步骤给出具体的命令示例,并适当解释参数的作用。同时,注意使用中文,避免技术术语过于晦涩。最后生成相关问题,可能涉及工具推荐、日志管理、安全删除等,帮助用户进一步探索。</think>### Linux清理硬盘空间命令教程 #### 一、查看磁盘空间占用 1. 使用`df`命令查看分区使用情况: ```bash df -h # 以易读单位显示磁盘空间 df -i # 查看inode使用情况 ``` 2. 使用`du`定位大目录: ```bash du -sh /* 2>/dev/null # 查看根目录下各文件夹大小 du -h --max-depth=1 /var # 查看/var子目录大小 ``` #### 二、清理常见空间占用源 1. **清理旧版本软件包缓存** - Debian/Ubuntu系统: ```bash sudo apt-get clean # 清理所有软件包缓存 sudo apt-get autoremove # 删除未使用的依赖 ``` - RHEL/CentOS系统: ```bash sudo yum clean all # Yum缓存清理 sudo dnf clean all # DNF缓存清理 ``` 2. **删除旧内核版本** ```bash # Ubuntu/Debian sudo purge-old-kernels --keep 2 # 保留最近2个内核 # CentOS/RHEL package-cleanup --oldkernels --count=2 ``` 3. **清理日志文件** ```bash # 清理7天前的日志(先确认日志是否重要) find /var/log -type f -mtime +7 -name "*.log" -exec rm -f {} \; # 清空正在被进程占用的日志文件(示例参考) echo "" > /var/log/hbase/gc.log # 常规清空方式 echo "" > /proc/20302/fd/3 # 针对已删除但被占用的文件[^1] ``` #### 三、高级清理技巧 1. **使用`ncdu`可视化工具** ```bash sudo apt install ncdu # Debian/Ubuntu sudo yum install ncdu # RHEL/CentOS ncdu / # 扫描根目录 ``` 2. **查找并删除大文件** ```bash find / -type f -size +500M -exec ls -lh {} \; 2>/dev/null # 查找500MB以上文件 find /tmp -type f -atime +3 -delete # 删除/tmp中3天未访问的文件 ``` 3. **清理Docker系统资源** ```bash docker system prune -a --volumes # 删除未使用的镜像、容器、卷 ``` #### 四、预防性维护建议 1. 配置日志轮转工具`logrotate` 2. 对重要分区设置磁盘配额 3. 定期执行清理脚本: ```bash # 示例每周清理任务(/etc/cron.weekly/cleanup) #!/bin/bash apt-get autoclean find /var/log -name "*.gz" -delete journalctl --vacuum-time=7d ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值