【Linux】拓展:运维面试题,进程管理常见的7大问题

目录

一、如何判断一个程序是单线程还是多线程

二、僵尸进程是什么,有什么危害,如何解决

三、如何找回删掉的文件

四、删除文件以后,空间不释放

五、遇到一个病毒(如死循环病毒),解决思路

六、机器开机前几天很正常,过了几天很卡顿,怎么解决?

七、oom内存不足怎么解决?


一、如何判断一个程序是单线程还是多线程

++思路,判断一个进程是单线程还是多线程,原理应该是查看进程配置文件/proc/进程pid/status++

*++**1、查看/proc/进程pid/status:*cat /proc/pid/status |grep -i threads++

*++**2、使用prtstat命令:*prtstat pid号|grep -i threads++

*++**3、采用pstree 命令树查看:*pstree -p|grep 进程名称++

二、僵尸进程是什么,有什么危害,如何解决

++僵尸进程是因为子进程结束的时候,父进程并不知情(父进程被暂停了),导致父进程并没有收回资源,消耗了cpu;++

++***危害:*僵尸进程实际没有工作,却占用资源++

++*解决:*要么干掉父进程(kill -9++ ++),要么恢复父进程状态(kill -18)++

三、如何找回删掉的文件

++思路:有一个文件存在,不小心删除了,我们可以想到lsof命令,列出进程中的所有文件,包含删除的文件,++

++1、可以通过这个命令找到文件删除的进程pid号;++

++2、根据pid找到/proc/pid号/fd 文件夹++

++3、查看下,这里有可能有误删文件,能不能恢复看命++

四、删除文件以后,空间不释放

++思路:现在要清理磁盘空间,发现文件并不释放,说明大概率这个文件有人正在使用++

++解决办法:1、给一个空字符,释放空间 ;2、强杀kill -9++

方法一:给个空字符

方法二:kill -9

五、遇到一个病毒(如死循环病毒),解决思路

++思路:病毒之所以危害是消耗我们cpu的资源,++

++1、先用ps aux k -%cpu 先找到消耗我们cpu资源的进程pid号,判断出哪个是病毒,病毒的pid是多少++

++2、然后使用进入/proc/pid号/这个目录中,可以查看是否有exe的执行文件,是个软连接++

++3、使用ll了解这个病毒的源程序++

++4、然后将源删掉,模拟创建一个同名文件++

++5、给这个文件加上一个权限,限定只能访问不能覆盖等,超级管理员都不能改++

六、机器开机前几天很正常,过了几天很卡顿,怎么解决?

说明内存的缓存空间需要清理

复制代码
[root@localhost 27813]#echo 3 > /proc/sys/vm/drop_caches 

七、oom内存不足怎么解决?

关于oom,out of memory,内存不足,在java程序中比较常见。系统会选一个进程将之杀死,在日志messages中看到类似下面的提示

Jul 10 10:20:30 kernel: Out of memory: Kill process 9527 (java) score 88 or sacrifice child


++思路:1、要么是本身就内存空间不足;2、要么是代码有bug,存在僵尸进程,消耗内存资源;++

++解决办法:++

*++**清理缓存:*使用free 、 top 监控内存的缓存空间,并使用echo 3 > /proc/sys/vm/drop_caches 清理缓存,监控内存空间变化;++

++可能存在僵尸进程:++ ++使用命令ps aux |grep Z |grep -v grep,再++ ++使用kill -9 强制清退进程++

相关推荐
大树885 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠5 小时前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质6 小时前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
bush46 小时前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行5206 小时前
Linux 11 动态监控指令top
linux
小宇宙Zz6 小时前
Maven依赖冲突
java·服务器·maven
Inhand陈工7 小时前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智7 小时前
ARP代理--工作原理
运维·网络·arp·arp代理
不会C语言的男孩7 小时前
Linux 系统编程 · 第 8 章:进程基础
linux·c语言
shushangyun_7 小时前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化