一、故障现象描述 NAS操作系统内核为Linux,自带的存储有16块硬盘,总共分两组,每组做了RAID5,Linux操作系统无法正常启动,在服务启动到cups那里就停止了,按键ctrl+c强制断开也没有响应,查看硬盘状态,都是正常的,没有报警或者警告现象。 二、问题判断思路 通过上面这些现象,首先判断NAS硬件应该没问题,NAS存储盘也应该正常,现在Linux无法启动,应该是Linux系统本身存在问题,因此,首先从Linux系统入手进行排查。 三、问题处理过程 1、第一次处理过程 NAS系统本身就是一个Linux内核装载了一个文件系统管理软件,管理软件可以对系统磁盘、系统服务、文件系统等进行管理和操作,正常情况下,基于Linux内核的NAS系统应该启动到init3或者init5模式下,由于NAS仅用了Linux一个内核模块和几个简单服务,所以判断NAS下的Linux系统肯定是启动到init 3模式下,那么现在无法启动到多用户字符界面下,何不让Linux直接进入单用户(init 1)模式下呢,因为单用户模式下仅仅启用系统所必须的几个服务,而cpus服务是应用程序级别的,肯定不会在“init 1”模式下启动,这样就避开了cups无法启动的问题,所以,下面的工作就是要进入Linux的单用户模式下。 很多的Linux发行版本都可以在启动的引导界面通过相关的设置进入单用户模式下,通过查看NAS的启动过程,基本判断这个Linux系统与RHEL/Centos发行版极为类似,因此,就通过RHEL/Centos进入单用户模式的方法试一试。 RHEL/Centos进入单用户模式很简单,就是在系统启动到引导欢迎界面下,按键e,然后编辑正确的内核引导选项,在最后面加上“single”选项,最后直接按键“b“即可进入单用户了。 接下来,重新启动NAS,然后硬件自检,接着开始启动Linux,一直在等待这个NAS的启动欢迎界面,但是欢迎界面一直没出来,就直接进入内核镜像,加载内核阶段了,没有内核引导界面,如何进入单用户啊,经过简单思考,还是决定在硬件检测完毕后直接按键盘”e“键,奇迹出现了,还真的可以,NAS进入到了内核引导界面,通过简单观察,发行第二个正是要引导的内核选项,于是移动键盘上下键,选择这个内核,然后在按键”e“,进入内核引导编辑界面了,在这行的最后面,输入“single”,然后按回车键,返回上个界面,接着按键“b”开始进行单用户引导,经过一分钟的时间,系统如愿以偿的进入了单用户下的shell命令行。 进入单用户模式后,能做的事情就很多了,首先要做的就是将cups服务在多用户模式下自启动关闭,执行命令如下: chkconfig --levle 35 cups off 执行成功后,重启系统进入多用户模式下,看看系统是否能正常启动。 2、第二次处理过程 将cups服务开机自启动关闭后,重启NAS,发现问题依旧,NAS还是启动到cups服务那里停止了,难道上面的命令没有执行成功吗?明明已经禁止了cups服务启动了,怎么还是启动了呢?于是,继续重启NAS,再次进入单用户模式下,看看问题究竟出在哪里了。 进入单用户后,再次执行chkconfig 命令,依旧可以成功,难道是cups服务有问题,先看看配置文件,执行如下命令: vi /etc/cups/cupsd.conf 在这里发现了一个问题,vi打开cupsd.conf时,提示“write file in swap”,文件明明真实存在,怎么说在虚拟内存中呢,经过思考,只有一种可能,NAS设备的Linux系统分区应该没有正确挂载,导致在进入单用户的时候,所有文件都存储在了虚拟内存中,要验证非常简单,执行“df”命令查看即可,如下图所示:

从这里可以看出,Linux的系统分区并未挂载,通过“fdisk -l”检查下磁盘分区状态,输出如下图所示: 通过输出可知,NAS的系统盘是/dev/sda,仅划分了/dev/sda1和/dev/sda2两个系统分区,而数据磁盘是经过做RAID5完成的,在系统上的设备标识分别是/dev/sdb1和/dev/sdc1,由于单用户默认没有挂载任何NAS磁盘,这里尝试手动挂载NAS的系统盘,执行如下命令: [root@NASserver ~]#mount /dev/sda2 /mnt [root@NASserver ~]#mount /dev/sda1 /opt 这里的/mnt、/opt是随意挂载的目录,也可以挂载到其他空目录下,挂载完成,分别进入这连个目录看看内容有什么,如下图所示: 通过这两个内容的查看,初步判断,/dev/sda2分区应该是Linux的根分区,而/dev/sda1应该是/boot分区。现在分区已经挂载上去了,再次执行df命令看看挂载情况,如下图所示: 到这里为止,发现问题了。/dev/sda2磁盘分区已经没有可用的磁盘空间了,而这个分区刚好是NAS系统的根分区,根分区没有空间了,那么系统启动肯定就出问题了。 下面再把思路转到前面介绍的案例中,由于系统cups服务在启动的时候会写启动日志到根分区,而根分区因为没有空间了,所以也就无法写日志了,由此导致的结果就是cups服务无法启动,这就解释了此案例中NAS系统每次启动到cups服务就停止的原因。 四解决问题 由于NAS系统只有根分区和/boot分区,所以系统产生的相关日志都会存储在根分区中,现在根分区满了,首先可以清理的就是/var目录下的系统相关日志文件,通常可以清理的目录有/var/log,执行如下命令查看/var/log日志目录占据磁盘空间大小: [root@NASserver ~]# du -sh /var/log 50.1G /var/log 通过命令输出发现/var/log目录占据了根分区仅70%的空间,清理这个目录下的日志文件即可释放大部分根分区空间,清理完毕,重启NAS系统,发现系统cups服务能正常启动了,NAS服务也启动正常了。

答案来源网络,供参考,希望对您有帮助

linux清理根目录下的垃圾,linux如何清理根目录空间相关推荐

  1. Xp下的程序编译成linux,Windows XP下硬盘安装Linux系统

    作为一个Linux新手,第一次安装Linux系统,经过几个小时摸索,终于搞清楚在Windows XP系统下硬盘安装Linux系统的方法,跟大家共享. 第一步:在Window系统下必须存在两个分区(不妨 ...

  2. virtual box 安装oracle linux,Virtual Box下安装Oracle Linux 6.3

    Oracle Linux 6.3已经公布快2年了,其功能有非常大的提升,增强了KVM,文件卷的在线resizing,LVM支持 raid4, 5, 6.支持很多其它的虚拟CPU数以及更大内存,详细能够 ...

  3. linux多线程编程和linux 2.6下的nptl,Linux多线程编程和Linux 2.6下的NPTL

    这几天由于工作需要,琢磨了一下Linux下的多线程的相关资料.Linux下最常用的多线程支持库为Pthread库,它是glibc库的组成部分.但是关于Pthread的说明文档非常缺乏,特别是对POSI ...

  4. 【 Linux 】记录下第一次使linux系统遇到的问题(系统安装、配置查看、搜狗输入法安装)

    作为一个有梦想的技术人,无论你是搞硬件的还是搞软件的,相信大家都有一颗探索的心,而Linux操作系统就不该成为一种神秘的系统,于是作为小白的我也开始玩一玩linux系统了,系统的安装是十分的简单,下载 ...

  5. linux多线程编程和linux 2.6下的nptl,Linux多線程編程和Linux 2.6下的NPTL

    這幾天由於工作需要,琢磨了一下Linux下的多線程的相關資料.Linux下最常用的多線程支持庫為Pthread庫,它是glibc庫的組成部分.但是關於Pthread的說明文檔非常缺乏,特別是對POSI ...

  6. linux gdb模式下无反应,Linux,GDB 嵌入式Linux的GDB远程调试的问题--断点没反应

    院士 2006-12-22 22:43:00    评分 2楼 问 我用的是BF531 uClinux Linux version 2.6.16.11-ADI-2006R1-hhbf (root@se ...

  7. linux字符界面下安装鼠标,Linux下有趣的命令:安装oneko实现小猫追鼠标

    Linux中oneko命令会让终端界面出现一只萌萌哒的小猫咪,其始终追随鼠标的位置. Ubuntu 18.04的安装方法: 首先在命令行中输入oneko,此时,若用户没有下载安装软件包,则系统会提示下 ...

  8. windows7卸载linux系统,win7下安全卸载linux系统

    在Win7上安装Linux双系统后,一般都是用的grub启动管理器,想安全的卸载还真是有些难度,下面是我实践过的方法. 网上好多说一条命令:bootrec /fixmbr就搞定的,反正在我这个华硕笔记 ...

  9. linux vi 看下一页,linux中的vi命令(2)

    4.Last line mode下命令简介 在使用「last line mode」之前,请记住先按「ESC」键确定您已经处于「command mode」下后,再按「:」冒号即可进入「last line ...

最新文章

  1. IT职场:程序员如何增加收入?
  2. R语言axis函数自定义可视化的坐标轴刻度线(axis ticks)
  3. windows服务器修改端口号,windows服务器修改远程连接端口图解
  4. python 浏览器,轻量级Python Web浏览器
  5. 【数论】GCD(P2568)
  6. 《TCP/IP详解》学习笔记(五):IP选路、动态选路
  7. python关于csv的查询系统_使用Python对csv文件操作
  8. 《终极算法》阅读笔记与摘要(1)-序和第1-2章
  9. Unity3D中粒子系统
  10. html 怎么绘制曲线图,用html5绘制折线图的实例代码_html5教程技巧
  11. Java菜鸟学习编写第一个java程序HelloWorld
  12. Android截图命令screencap
  13. 好好编程-物流项目02【tomcat插件启动web项目】
  14. 用DOS写一个简单的虚拟WIFI工具,CMD电脑无线WIFI工具,BAT实现WIFI和自动关机
  15. javaMail发送电子邮件
  16. 用C语言画一个Q版奥特曼
  17. 【计算机组成原理】| 第九章 控制单元的功能 | 程序,指令,机器指令,微程序,微指令,微命令,微操作的关系
  18. 教育培训机构屡遭投诉?湖南中创教育给出三点建议
  19. 小米手机5s获得root权限的经验
  20. 完美的alert美化

热门文章

  1. 算法 汉诺塔-java详解
  2. 直播带货系统,实现直播音频的播放
  3. ffmpeg给视频添加个黑色的遮罩
  4. MacOS Docker 安装
  5. 讲解有哪些实用的数据恢复工具
  6. python 操作xls文件
  7. 2021“MINIEYE杯”中国大学生算法设计超级联赛
  8. vi/vim跳转到指定行
  9. Python美化输出 pprint
  10. 看完这篇文章你可能就学会ofd在线转换成pdf了