2026/1/8 21:39:01
网站建设
项目流程
php 校园网站设计,电子科技 深圳 网站建设,厦门网站建设外贸,分析网站的外链1. 磁盘空间检查基础命令
1.1 查看磁盘使用情况
# 查看所有挂载点的磁盘使用情况
df -h# 查看指定目录的磁盘使用情况
df -h /home
1.2 查找大文件和目录
# 查找当前目录下大于100MB的文件
find . -type f -size 100M -exec ls -lh {} \;# 查找根目录下大于1GB的文件
find …1. 磁盘空间检查基础命令1.1 查看磁盘使用情况# 查看所有挂载点的磁盘使用情况 df -h # 查看指定目录的磁盘使用情况 df -h /home1.2 查找大文件和目录# 查找当前目录下大于100MB的文件 find . -type f -size 100M -exec ls -lh {} \; # 查找根目录下大于1GB的文件 find / -type f -size 1G -exec ls -lh {} \;2. 高级大文件查找方法2.1 使用du命令# 查看当前目录下最大的10个目录 du -sh * | sort -rh | head -10 # 查看根目录下最大的10个目录 du -sh /* | sort -rh | head -10 # 查看特定目录下的大文件 du -ah /var/log | sort -rh | head -202.2 综合查找脚本#!/bin/bash # 查找系统中最大的文件和目录 echo 最大的10个目录 du -h / 2/dev/null | sort -hr | head -10 echo -e \n 最大的10个文件 find / -type f -size 100M 2/dev/null | xargs ls -lh | sort -k5 -hr | head -103. 常见大文件类型分析3.1 日志文件清理# 查看日志目录大小 du -sh /var/log/* # 清理旧的日志文件保留最近7天 find /var/log -name *.log -mtime 7 -delete # 压缩旧日志文件 find /var/log -name *.log -mtime 3 -exec gzip {} \;3.2 缓存文件清理# 查看缓存目录大小 du -sh /tmp /var/tmp /var/cache/* # 清理临时文件 rm -rf /tmp/* rm -rf /var/tmp/* # 清理包管理器缓存 yum clean all # CentOS/RHEL apt-get clean # Ubuntu/Debian4. 实用清理脚本4.1 自动化清理脚本#!/bin/bash # disk_cleanup.sh - 自动清理大文件脚本 LOG_FILE/var/log/disk_cleanup.log # 记录日志函数 log_message() { echo $(date %Y-%m-%d %H:%M:%S) - $1 $LOG_FILE } # 检查磁盘使用率 check_disk_usage() { local usage$(df / | awk NR2 {print $5} | sed s/%//) if [ $usage -gt 80 ]; then log_message 警告磁盘使用率过高: ${usage}% return 1 fi return 0 } # 清理日志文件 cleanup_logs() { log_message 开始清理日志文件... # 删除超过30天的日志 find /var/log -name *.log -mtime 30 -delete # 压缩旧日志 find /var/log -name *.log -mtime 7 -exec gzip {} \; log_message 日志清理完成 } # 清理临时文件 cleanup_temp() { log_message 开始清理临时文件... # 清理过期的临时文件 find /tmp -type f -mtime 1 -delete find /var/tmp -type f -mtime 1 -delete log_message 临时文件清理完成 } # 主执行流程 main() { log_message 开始磁盘清理任务 if check_disk_usage; then cleanup_logs cleanup_temp log_message 磁盘清理任务完成 else log_message 磁盘使用率过高跳过清理操作 fi } main4.2 定时清理任务# 添加到crontab中定期执行 # 每周日凌晨2点执行清理 0 2 * * 0 /path/to/disk_cleanup.sh # 每天凌晨3点检查磁盘使用情况 0 3 * * * df -h | grep -E (Filesystem|/) /tmp/disk_usage.txt5. 安全清理注意事项5.1 清理前检查# 查看文件详细信息避免误删重要文件 ls -la /var/log/ ls -la /tmp/ # 查看文件权限和所有者 ls -l /var/log/messages5.2 验证清理操作# 使用dry-run模式预览将要删除的文件 find /var/log -name *.log -mtime 7 -print # 先备份再删除 cp /var/log/syslog /var/log/syslog.backup rm /var/log/syslog6. 监控和预警6.1 磁盘监控脚本#!/bin/bash # disk_monitor.sh - 磁盘监控脚本 THRESHOLD80 EMAILadminexample.com # 检查磁盘使用率 check_disks() { df -h | grep -vE ^Filesystem|tmpfs|cdrom | while read line; do usage$(echo $line | awk {print $5} | sed s/%//) partition$(echo $line | awk {print $1}) mount_point$(echo $line | awk {print $6}) if [ $usage -gt $THRESHOLD ]; then echo 警告$mount_point 磁盘使用率 $usage% # 发送邮件通知 echo 磁盘使用率过高请及时处理 | mail -s 磁盘警告 $EMAIL fi done } check_disks6.2 创建监控服务# 创建systemd服务用于定时监控 cat /etc/systemd/system/disk-monitor.service EOF [Unit] DescriptionDisk Usage Monitor Afternetwork.target [Service] Typeoneshot ExecStart/usr/local/bin/disk_monitor.sh Userroot [Install] WantedBymulti-user.target EOF # 启用服务 systemctl enable disk-monitor.service7. 常见问题解决7.1 已删除但仍在使用的文件# 查找已删除但仍被进程占用的文件 lsof L1 # 重启相关服务释放文件 systemctl restart nginx systemctl restart httpd7.2 大文件恢复# 如果误删了重要文件可以尝试使用以下方法 # 1. 使用testdisk或photorec恢复 # 2. 检查是否有备份 # 3. 检查文件系统日志 journalctl -f8. 最佳实践建议定期监控设置定期的磁盘使用情况检查备份重要数据清理前确保重要数据已备份分步清理先小范围测试再大规模执行记录操作详细记录清理过程和结果设置阈值建立合理的磁盘使用率预警机制通过以上方法可以有效地管理和维护Linux服务器的磁盘空间确保系统稳定运行。行业拓展分享一个面向研发人群使用的前后端分离的低代码软件——JNPF。基于 Java Boot/.Net Core双引擎它适配国产化支持主流数据库和操作系统提供五十几种高频预制组件内置了常用的后台管理系统使用场景和实用模版通过简单的拖拉拽操作开发者能够高效完成软件开发提高开发效率减少代码编写工作。JNPF基于SpringBootVue.js提供了一个适合所有水平用户的低代码学习平台无论是有经验的开发者还是编程新手都可以在这里找到适合自己的学习路径。此外JNPF支持全源码交付完全支持根据公司、项目需求、业务需求进行二次改造开发或内网部署具备多角色门户、登录认证、组织管理、角色授权、表单设计、流程设计、页面配置、报表设计、门户配置、代码生成工具等开箱即用的在线服务。