Linux使用tab补全时报没有空间的错
发现问题
当代码提交了后,好的项目组中都会做CI(Continuous integration ),CI包括代码编译、单元测试、代码扫描、完成后通知,按照常理,2分钟内会完成这个动作。小编这次代码提交后等了30分钟+也没有得到编译的信息,是好是坏成功失败您给个呀,不给一个信,消息石沉大海的感觉真不好。
咋办呢?坐以待毙不可取,找人解决。第一想到的就是亮哥,亮哥可是我的幸运星呀。
小编:亮哥我提交了个代码,为啥没有反馈呢 ?
亮哥:没反馈是啥意思?
小编:就是没有编译信息的通知?不知道是成功还是失败?我要看sonarqube的扫描结果
亮哥:奥,这样呀,你去gitlab上看看任务跑了不?再看下编译的哪台机器上去是不是跑任务了?
定位问题
有亮哥的指导,我这可是有了方向有了目标,我一点也不慌,那就去查吧。
- 先看了下gitlab上的任务,CI正常调用
- 再查看编译的机器,冥冥之中感觉是编译的机器有问题,但又不知道问题在哪里
排查问题从切换到执行CI的用户开始吧
[root@dev01 #] su - darren
[darren@dev01 ~]$
root权限非必要不使用,记得权利越大,责任越大这个说法不,万一是操作错了,那后果很严重。
当想进入ci目录时,使用cd习惯上使用tab进行命令补全。这是出现了问题
[darren@dev01 ~]$ ll
total 8
drwxr-xr-x 3 darren darren 22 Feb 3 2022 builds
drwxr-xr-x 4 darren darren 4096 Aug 26 04:50 ci
drwxrwxr-x 4 darren darren 43 Feb 4 2022 dev
[darren@dev01 ~]$ cd b-bash: cannot create temp file for here-document: No space left on device
哎呀,报错了看起来是没有空间了,可能问题的症结就在此
[darren@dev01 ~]$ df -TH
Filesystem Type Size Used Avail Use% Mounted on
......
/dev/mapper/VolGroup-tmp_lv xfs 5.4G 5.4G 119k 100% /tmp
......
[darren@dev01 ~]
其实报错信息已经很明显了,无法创建临时文件,由于没有空间导致的。因为tmp盘使用率达到100%没有空间了,那清理tmp目录下的文件吧
解决问题
[darren@dev01 tmp]$ cd /tmp/
[darren@dev01 tmp]$ pwd
/tmp
[darren@dev01 tmp]$ rm -rf *
这时会报有些文件没有权限,如果清理的彻底,可以使用root操作,那会带来一定的风险
再次查看空间
[darren@dev01 tmp]$ df -TH
Filesystem Type Size Used Avail Use% Mounted on
......
/dev/mapper/VolGroup-tmp_lv xfs 5.4G 356M 5.1G 7% /tmp
......
[darren@dev01 tmp]$
空间有了,重新触发CI,这时没有出现卡顿的情况,但这个错误结束了,又出来一个错误,这就是人生,出现问题解决问题,再有问题继续解决,久而久之只要你不放弃,就会炼成打不死的小强的。
这时候报了一个错,因为要使用sonarqube,在代码编译结束后使用sonarqube进行扫描代码,来规避因为写代码不规范导致生产问题,这样也是将风险前移,将事故降到最低。
在服务器上执行
[darren@dev01 ~]$ telnet ip 9000
Trying ip...
网络不通,这时候可能是有好多种原因
- 防火墙不通
- 任意服务端增加iptables限制
- 网络服务未启动
- 硬件故障等
任何一个缓解出问题都会导致网络不通。
寄语:只要思想不滑坡,方法总比困难多,遇到问题即时去处理,是最好的方式,无论后果如何,最起码可以获取到一定的经验,工作经验就是这样一点点的积累过来的,高手是有多年工作经验,咱可以不能一个经验用多年呀。