开发者社区> 科技小能手> 正文

网传Linux运维面试题解答(四)

简介:
+关注继续查看

题目来源:http://2358205.blog.51cto.com/2348205/1688557

大部分都自己做的,部分参考了原帖博主的答案 



1、如何检测某个端口所占用的进程


lsof -i :port



2、对于linux主机的cpu负载使用,什么情况下user的比例升高,什么情况下system的比例升高,请联系实际举例。


使用top命令可以查看cpu的负载使用

-us:用户进程消耗的CPU时间百分比
us的值比较高时,说明用户进程消耗的CPU资源多,如果长期超50%的使用,那么我们就该考虑优化程序算法或者进行加速(比如PHP/PERL)

-sy:内核进程消耗的CPU时间百分比(sy的值高时,说明系统内核消耗的CPU资源多,这并不是良性表现,我们应该检查原因)

-wa:IO等待消耗的CPU时间百分比
wa的值高时,说明IO等待比较严重,这可能由于磁盘大量随机访问造成,也有可能磁盘出现瓶颈(块操作)
-id:CPU处于空闲状态时间百分比,如果空闲时间(cpu id)持续为0并且系统时间(cpu sy)是用户时间的两倍(cpu us) 系统则面临着CPU资源的短缺



3、在不umount的情况下,如何重新设置mount的参数。


mount -o remount,rw /



4、不小心在系统下执行了chmod -x /bin/chmod 怎么办?


mv /bin/chmod /bin/chmod_backup

cp /bin/cp /bin/chmod

cat /bin/chmod_backup > /bin/chmod



5、linux文件的权限位x对目录和文件有何不同?


x权限对目录而言,表示这个用户可以进入该目录(浏览,即可以ls列出目录下的东西)

   对文件而言,表示对文件有可执行权限


 

6、找出/taomee目录下的所有常规文件并设置权限755


find /taomee -type f | xargs chmod 755



7、如何查找某一文件被哪个进程打开?


比如查看/usr/bin/mysqld_safe这个文件是被哪个进程打开的,可以使用命令:

lsof /usr/bin/mysqld_safe



8、新增一块存储设备,lvm操作的命令如何写


1、对新的存储设备分区并格式化为8e格式

2、创建物理卷(PV)

3、将PV加入到卷组(VG)

4、创建逻辑卷(LV)

5、格式化罗技卷并挂载

参考:http://yujia2016.blog.51cto.com/59379/1712579



9、给主机host:172.16.0.2增加gateway10.0.0.1


route add -host 172.16.0.2 gw 10.0.0.1



10、socket和tcp访问mysql的区别?


TCP/IP 访问mysql:这种方式会在TCP/IP连接上建立一个基于网络的连接请求,一般是client连接跑在Server上的MySQL实例,2台机器通过一个TCP/IP 网络连接。(一般是mysql客户端跟服务端不在同一机器上)

socket访问mysql:UNIX域套接字并不是网络协议,所以只能在MySQL客户端和数据库实例在同一台服务器上使用,用户可以在配置文件中指定套接字文件。



二、shell

1、如何将一个文件中的taomee、******、peoplenet中的*内容进行替换成network(*的内容不同)


[root@Manager-01 ~]# cat 1.txt 

taomee、sdegrt、peonetwork

[root@Manager-01 ~]# sed -ri 's#(.*)、.{6}、(.*)#\1、network、\2#g' 1.txt

[root@Manager-01 ~]# cat 1.txt 

taomee、network、peonetwork


2、找出access.log中访问top 10的ip地址


awk '{print $1}' nginx.log | grep -v "^$" | sort | uniq -c | sort -nr | head 



3、打印1-100奇数?打印1-100偶数?打印1-100的和?打印1-100的奇数和?打印1-100的偶数和?打印1-100的质数?


打印1-100奇数:for((i=1;i<=100;i+=2));do echo $i;done

打印1-100偶数:for((i=2;i<=100;i+=2));do echo $i;done
打印1-100和:sum=0;for((i=1;i<=100;i++));do let sum+=i;done;echo $sum 

打印1-100的奇数和:sum=0;for((i=1;i<=100;i+=2));do let sum+=i;done;echo $sum 

打印1-100的偶数和:sum=0;for((i=2;i<=100;i+=2));do let sum+=i;done;echo $sum 

打印1-100的质数:for i in `seq 2 100`; do factor $i | awk -F'[: ]+' 'NF==2{print $1}';done



4、删除一个文件中行号为奇数的行


sed -n '1~2p' file  或 sed -n 'p;n' file



5、替换某一个文件的字符串


sed -i 's/111/222/g' test.txt

或vim test

:%s/111/222/g


6、exec和souce区别


所谓 source 就是让 script 在当前 shell 内执行、而不是产生一个 sub-shell 来执行。

 exec 也是让 script 在同一个行程上执行,但是原有行程则被结束了。

他们的最大区别就是在于:原有行程会否终止。


7、iptables表和链


简称三表五链

filter:INPUT FOWARD OUTPUT

nat:OUTPUT PREROUTING POSTROUTING

mangle:INPUT FOWARD OUTPUT PREROUTING POSTROUTING


8、统计目录inode占用数目  


for i in `find . -type d`;do ls -1i $i |awk -v sum=0 -v dir=$i '{sum+=!a[$1]++};END{print sum"\t"dir}';done |sort -n



本文转自 kuSorZ 51CTO博客,原文链接:http://blog.51cto.com/kusorz/1856705

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Linux面试题汇总
Linux面试题汇总
10 0
《对线面试官》| 高频 Linux 面试题 Pt.1
今天打算给大家分享一些校招面试中面试官提问频率较高的关于 Linux 系统的面试题
46 0
《对线面试官》| 高频 Linux 面试题 Pt.2
给大家分享一些在校招面试中常见的 Linux 面试题
31 0
软件测试面试题:linux下的CP命令设计测试用例?
软件测试面试题:linux下的CP命令设计测试用例?
50 0
软件测试Linux面试题:结束后台java进程
软件测试Linux面试题:结束后台java进程
43 0
软件测试Linux面试题:查看后台所有java进程
软件测试Linux面试题:查看后台所有java进程
67 0
软件测试Linux面试题:三种查看server.log的文件内容
软件测试Linux面试题:三种查看server.log的文件内容
246 0
软件测试Linux面试题:进程的查看和调度分别使用什么命令?
软件测试Linux面试题:进程的查看和调度分别使用什么命令?
49 0
软件测试Linux面试题:简述DNS进行域名解析的过程.
软件测试Linux面试题:简述DNS进行域名解析的过程.
46 0
软件测试Linux面试题:简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
软件测试Linux面试题:简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
66 0
软件测试Linux面试题:简述进程的启动、终止的方式以及如何进行进程的查看.
软件测试Linux面试题:简述进程的启动、终止的方式以及如何进行进程的查看.
92 0
软件测试Linux面试题:Linux的基本命令。
软件测试Linux面试题:Linux的基本命令。
34 0
+关注
科技小能手
文章
问答
视频
相关电子书
更多
ECS运维指南 之 Linux系统诊断
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关实验场景
更多
相关镜像