EN 联系我们加入我们
典型案例
您现在的位置:首页 > 典型案例
【案例分享】统信UOS文件系统无法登录问题

一、故障描述

统信UOS终端登录图形界面(即下图),输入正确的域用户名和密码,无法正常登。即使使用本地用户也无法登,点击登后自动退回到登录界面。

因域管环境下统信UOS禁用了本地root用户,统信技术支持建议恢复系统解决,但是恢复系统后,需要重新配置各种软件程序,且该问题发生频率较高,恢复系统费时费力。

经过我公司技术专家的反复诊断研究,发现该问题是由于日志文件过大导致,可以通过单用户登,清空文件内容的方式解决问题。

图1.jpg

二、故障分析

在统信UOS系统长期运行中,有程序报错,持续写系统日志,输出的错误信息过于频繁,这导致日志文件疯狂增长,最终致使根目录空间被占满,系统没有剩余空间,用户无法登录。

三、故障解决

进入到单用户模式,将日志文件清空。

1)在开机grub菜单处,按方向“↓”键,将光标定位至Uniontech OS Backup & Restore菜单;

图2.jpg

2)按下E键进入grub菜单编辑模式;

图3.jpg

3)  splash quite修改为systemd.unit=multi-user.target,然后按CTRL+X进入到单用户模式;

图4.jpg

4)查找大日志文件:


a.输入sudo -s切换到root用户;

图5.jpg

b.输入fdisk -l 查看磁盘分区,发现sda5分区50G;


图6.jpg

c.查找挂载根分区;


使用命令将sda5分区挂载到/mnt目录上,并确认/mnt下有var、lib、usr目录,则可以确认sda5是根分区,如没有则需要尝试其他分区。

mount /dev/sda5 /mnt

ls -l /mnt

输入df -h查看文件系统使用情况。


图7.jpg

d. 查找/mnt目录下的大目录;


使用如下命令:

du --max-depth=1 -BM /mnt/ | sort -nk1

输出结果显示/mnt/var目录很大,查找/mnt/var目录下的大于5G的文件。

cd /mnt/var

du --max-depth=1 -BM /mnt/var | sort -nk1

输出结果显示/mnt/var/log目录很大,查找/mnt/var/log下面大于5G的文件。

du -sh /mnt/var/log/*;

注意:kern.log.1这个文件超过了5G,已经达到41G。


图8.jpg

使用命令将查找到的大于5G的日志文件清空(文件名以find输出的大文件为准)。


truncate -s 0 /mnt/var/log/<日志文件名>


图9.jpg

使用df -h命令查看空间被释放情况,如下图。

图10.jpg

e. 输入reboot命令重新启动机器可以正常登录国产统信UOS系统。

四、经验总结


1、当出现统信UOS因文件系统占满,导致用户无法登录,且有重要文件,不能重置系统的情况时,可以使用此方法进行解决;

2、用户每次登录域用户后,会拉取域管平台内的基线检查脚本。可追加如下命令到基线检查脚本中,在每次登录后自动清空日志文件,以避免此类问题发生;


find /var/log -type f -name \*.log -size +5G -exec truncate -s 0 {}\;

3、若无法控制基线检查脚本,也可通过域管平台下发脚本功能,将如下命令下发到终端,修改计划任务以进行避免。

#/bin/bash

set -x

cat << EOF >> /var/spool/cron/crontabs/root

0 9 */1 * * find /var/log -type f -name \*.log -size +5G -exec truncate -s 0 {}\;

EOF



如欲了解更多,请登录安图特官方网站:www.antute.com.cn



版权所有 安图特(北京)科技有限公司 备案号:京ICP备17074963号-1
技术支持:创世网络