当前位置:首页 > linux > 正文内容

死亡进程导致在办公室莫名背锅后平反昭雪艰辛之路

root6年前 (2020-11-23)linux1408

背景:之前就有一个在我账户名下的问题程序,但是并不是我启动的,绝对不是我启动的。但是找不到原因就莫名的背起了锅。然后默默修改了密码(其实然并卵,下面详聊原理),该机器管理员把我踢出了root组(因为没啥程序在上面)

起因:今日突然发现一个进程的cpu占用率一直处于100%+ 居高不下,同时还发现进程启动用户是我的名字,极其尴尬。

经过:但是我并没有启动过这个程序,因为我知道我自己开的程序,就两三个,而且都是轻量级的,不可能暂用这么大的cpu资源。

于是就开始查找问题所在,但是能力有限,只能依靠背后东日大佬。

于是乎大佬开始操作。
htop 查看进程PID,已经对应的命令

启动命令是celery 对应的后面还有cron可疑单词。PID 60372

celery是py的包,通过pip list | grep -i celery  查看 是否有该包,没有发现

通过 apt list --installed | grep -i celery 查看 apt是否有该包,没有发现

crontab -l 看看定时有没有异常的东西,没有发现。

ps aux |grep celery  看看有没有celery的程序启动,发现有几个程序。 这里算是发现了有用的信息。这个时候就比较尴尬了,没有这个包但是怎么启动的。带着疑问,继续探究。

怀疑某个包依赖这个celery,去py的包区域查找

cd  /.local/lib/python2.7/site-packages  

which celery   没有发现

which celeryd  没有发现

celery   执行没有反应

celery --help  仍然没有反应

find -iname "*celery*"   让然没有查到

cd /usr/lib/

find -iname "*celery*"    还是没有任何信息

cd /proc/7019  去PID 的工作目录

发现了  cwd 是sentry ,是sentry 启动的。其实到这个时候我东日大佬已经严重怀疑问题进程在docker里面,也确实如他所料

cat environ

pip version

看看环境里面确实是否有包的存在,没有发现

sudo docker ps  看看docker 

sudo docker exec -it ***_web_1 bash    进入第一个docker 看看,发现sentry 但是没有什么代码内容,也没有celery

更换下一个docker

sudo docker exec -it ****_worker_1 bash  进入第二个docker 看看,跟第一个一样。

sudo docker exec -it onpremise_cron_1 bash  第三个看名字十分可疑,cron 这个单词出现在之前的pid 程序命令中,

果然发现了可以的sentry和celery 到此处基本算是确定问题所在了。查看启动细节发现跟之前的一模一样。

通过询问该docker是其他同事启动,因该程序已经出现问题,就让他停下该docker,然后htop那个进程直接消失。


OK 现在很多人会有疑问,并不是我自己启动的,为什么docker启动程序为什么在我的名下。

大佬的正解是,查看一下你的uid

echo $UID   发现是999

大佬就给我说  docker非常喜欢用999这个uid

进入刚才的问题docker,发现sentry 就是999的uid。

linux 系统在监控的过程中是能够看到docker里的uid,由于跟自己的冲突,导致将该程序的被系统规划到我的名下了



扫描二维码推送至手机访问。

版权声明:本文由一叶知秋发布,如需转载请注明出处。

本文链接:https://zhiqiu.top/?id=50

分享给朋友:

相关文章

linux 慎用 kill -9 干掉程序

 kill -9 强制结束某程序的时候,如果程序的有退出信号触发处理回收子进程的,将失效。会造成僵尸进程。...

修改linux时区

ubuntu:rm  /etc/localtimeln -sf /usr/share/zoneinfo/Asia/Shanghai  /etc/localtimecentos echo "A...

zabbix 中文乱码

zabbix 中文乱码

原因是因为zabbix没有支持中文的字体,在win找到一个中文字体文件名是:simkai.ttf把这个文件复制到服务器的/usr/share/zabbix/fonts  路径下然后修改zabbix的配置文件vim /us...

服务查看启动

服务启动、停止和重启service   xxx  start  service   xxx  stopservice   xxx ...

Python2 的Popen在docker中执行会挂起主进程

python2.7因业务需求。要把程序放入到docker容器中但是在docker执行的时候程序出现异常缓慢的情况检查函数执行情况发现当第一个线程执行到popen的时候会导致所有线程的挂起p1 = subprocess.P...

git 忽略文件不起作用 .gitignore

git rm -r --cached . git add .   git commit -m "update .gitignore"  git status查看是否是"working di...