| 操作步骤 | 核心操作 | 检查点 / 风险点 | 确认状态(√/×) |
|---|---|---|---|
| 1. 进入引导模式 | 重启服务器,进入 GRUB 引导界面 | 确认服务器重启后能正常显示引导菜单,无启动故障 | |
| 2. 编辑启动项 | 按 “e” 进入启动编辑界面 | 找到以linux/linux16/linuxefi开头的行(非其他系统项) | |
| 3. 添加启动参数 | 在 linux 行结尾输入console=tty single | 确认参数输入正确,无多余空格 / 错别字,未修改其他内容 | |
| 4. 进入单用户模式 | 按 F10 保存并启动 | 确认系统进入 tty 命令行界面,无需密码即可操作(root 权限) | |
| 5. 查看磁盘占用 | 执行df -h | 确认/分区(C 盘)使用率>90%,记录/data分区剩余空间 | |
| 6. 进入用户配置目录 | 执行cd /home/cmcc/.config | 确认目录切换成功(执行pwd显示/home/cmcc/.config) | |
| 7. 定位大文件 | 执行du -sh *+ls -l | 确认目标大文件(如 oamail),记录文件大小;排除系统核心文件 | |
| 8. 移动 / 删除文件 | 移动:mv oamail /data删除:rm -rf oamail | 移动前:df -h /data确认剩余空间≥目标文件大小删除前:再次确认文件非必要(无业务依赖) | |
| 9. 创建软链接 | 执行ln -s /data/oamail oamail | 执行ls -l显示oamail -> /data/oamail(路径正确) | |
| 10. 重启系统 | 优先reboot,无响应则reboot -f | 重启后能正常进入系统,业务程序(如依赖 oamail 的应用)运行正常 | |
| 11. 验证磁盘空间 | 系统启动后执行df -h | 确认/分区使用率降至安全范围(<80%) |
额外检查项(通用清理时补充)
清理日志:进入
/var/log,du -sh *确认大日志,删除 / 清空后检查服务日志功能正常清理缓存:执行
yum clean all,确认无报错;rm -rf /home/*/.cache无权限错误清理临时文件:
/tmp目录删除后,确认系统临时文件生成正常- 补充几个关键注意事项和优化点,让操作更安全:
一、关键注意事项(避免操作失误)
权限确认:进入 tty 模式后默认是 root 权限(麒麟单用户模式通常自动提权),但执行
mv/rm前务必用ls -lh确认目标文件(如 oamail)确实是大文件且非系统核心文件(避免误删系统配置)。/data 分区空间检查:执行
mv oamail /data前,先输入df -h /data确认 /data 分区有足够剩余空间,防止移动后 /data 也满了。软链接有效性:创建软链接
ln -s /data/oamail oamail时,必须确保当前目录是/home/cmcc/.config(否则软链接路径错误),创建后用ls -l检查软链接是否指向正确路径(显示oamail -> /data/oamail)。强制重启风险:
reboot -f是强制重启,若系统有未保存的写入操作可能损坏文件,优先用普通reboot,仅当系统无响应时再用-f。二、补充通用清理方案(若 oamail 不是大文件)
- 如果步骤 7 中发现大文件不是 oamail,可按以下优先级清理:
清理日志文件:
进入
/var/log目录(cd /var/log),用du -sh *查看日志大小,删除老旧日志(如rm -rf *.gz压缩日志、cat /dev/null > 大日志文件.log清空实时日志)。清理缓存文件:
执行
yum clean all(清理 yum 缓存)、rm -rf /home/*/.cache(清理用户缓存)。删除临时文件:
进入
/tmp目录,执行rm -rf *(临时文件均为非必要文件)。三、操作优化建议
步骤 3 中,麒麟系统启动项可能不是
linux开头(部分版本是linux16或linuxefi),找到以linux相关开头的行即可。进入 tty 模式后,若键盘输入无响应,检查是否开启 NumLock(部分服务器需关闭 NumLock)。
一、第一步:精准定位大文件(必做)
- 查看磁盘整体占用执行
df -h,重点关注/分区(C 盘)的使用率,同时记录其他分区(如/data/home)的剩余空间(确认是否有空间存放待移动的大文件)。示例输出:plaintextFilesystem Size Used Avail Use% Mounted on /dev/sda1 50G 48G 2G 96% / # C盘满,需清理 /dev/sdb1 200G 50G 150G 25% /data # 有足够空间,可移动文件
- 定位具体大文件
按目录扫描:从根目录开始,执行
du -sh /*(查看根目录下各子目录大小),找到占用最大的目录(如/home/var),再逐层深入(如du -sh /home/*)。按文件大小扫描:执行
find / -type f -size +1G 2>/dev/null(查找 1GB 以上的文件,2>/dev/null屏蔽权限错误),直接列出大文件路径。✅ 关键:优先排查非系统目录(
/home/var/log/tmp),避免误触/bin/etc/lib等系统核心目录。
二、第二步:按文件类型选择处理方式
1. 移动大文件(适用于有用的用户数据 / 配置文件)
前提:目标分区(如
/data)有足够剩余空间,且文件非系统运行必需(如用户缓存、业务日志归档)。实操步骤:
① 确认目标文件路径:如
/home/cmcc/.config/oamail(大小 20G)。② 确认目标分区空间:
df -h /data确认剩余空间≥20G。③ 移动文件:执行
mv /home/cmcc/.config/oamail /data/(保留文件完整,仅转移位置)。④ 创建软链接(关键!):回到原文件目录(
cd /home/cmcc/.config),执行ln -s /data/oamail oamail,确保原程序能通过软链接访问到移动后的文件。⑤ 验证:执行
ls -l,显示oamail -> /data/oamail即为成功。
2. 删除大文件(适用于无用文件 / 日志 / 缓存)
安全删除优先级(从最安全到次安全):
① 临时文件:
/tmp目录下的所有文件(执行rm -rf /tmp/*),均为系统临时生成,删除无影响。② 日志压缩文件:
/var/log下的.gz后缀归档日志(执行rm -rf /var/log/*.gz),保留最新的实时日志(.log文件)。③ 大日志文件清空(替代删除):若实时日志过大(如
/var/log/messages10G),不直接删除(避免服务日志写入失败),执行cat /dev/null > /var/log/messages(清空内容,保留文件本身)。④ 用户缓存:
/home/*/.cache目录(执行rm -rf /home/*/.cache/*),为用户应用缓存,删除后应用会重新生成。❌ 绝对禁止删除:
/etc/bin/sbin/lib目录下的文件,/var/lib下的数据库文件(如mysqlredis数据)。
3. 特殊处理:yum 缓存清理
yum clean all,自动清理 yum 下载的包缓存、元数据缓存,无需手动删除,安全无风险。三、第三步:验证清理效果(必做)
执行
df -h,确认/分区使用率降至 80% 以下(安全阈值)。若移动了文件并创建软链接,执行
ls -l 原文件路径,确认软链接指向正确。尝试重启关键服务(如
systemctl restart 业务服务),确认无文件找不到的报错(验证软链接有效性)。
四、单用户模式操作注意事项
权限:单用户模式下默认是 root 权限,无需 sudo,操作前务必确认文件路径无误(建议用
ls 路径验证文件存在)。避免强制删除:用
rm -rf时务必加完整路径(如rm -rf /tmp/oldfile,而非rm -rf /*),防止误删根目录。移动目录:若移动的是目录(而非单个文件),
mv命令无需加参数,直接移动即可(如mv /home/test /data/)。磁盘挂载:若
/data分区未挂载(df -h看不到),先执行mount /dev/sdb1 /data(根据实际分区名)挂载后再移动文件。
本文链接:https://www.eycit.com/post/22.html 转载需授权!
