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

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介:

题目来源: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

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
13天前
|
Linux 测试技术 数据安全/隐私保护
阿里云Linux os copilot 运维助手初体验
阿里云Linux os copilot 初体验
247 1
阿里云Linux os copilot 运维助手初体验
|
6天前
|
弹性计算 运维 自然语言处理
古希腊掌管Linux运维の神
阿里云的OS Copilot是专为Alibaba Cloud Linux 3设计的智能助手,提供命令行自然语言问答、辅助命令执行、阿里云CLI调用和系统运维调优等功能,简化Linux操作,尤其适合新手用户。要体验OS Copilot,用户需在x86平台的Alibaba Cloud Linux 3上使用,可通过ECS、KVM或Docker。免费试用ECS、学生优惠及老用户套餐可从阿里云官网获取。安装OS Copilot后,配置AK并使用`co`或`copilot`命令即可开始使用。该助手目前在与阿里云生态集成方面仍有提升空间。
|
11天前
|
弹性计算 运维 Linux
阿里云Linux os copilot 运维助手初体验
摘要(Markdown格式): 在阿里云ECS上体验了Linux编程助手OS Copilot,步骤包括申请账户、开通ECS、安装Copilot。Copilot准确解释代码、快速响应问答、辅助编程,尤其在代码生成和注解上表现出色。作为运维人员,认为其简化了工作,给出8分评价,并愿意推荐给他人。期望它能支持更多操作系统,优化代码直接运行功能,并与更多阿里云产品集成。目前只体验了Copilot的基础功能,未与其他类似产品对比。
|
15天前
|
Linux 编译器 Shell
拼多多面试 Linux下一个应用程序开始执行到main被调用之间经历了什么?
在Linux中,程序启动到`main`调用涉及加载器、内核、动态链接器和C运行时。`execve`系统调用加载ELF文件,内核创建进程,加载段,设置栈和调用动态链接器。动态链接器解析符号,重定位,执行初始化。C运行时初始化堆栈,调用`main`。从`_start`到`main`的流程包括环境设置和函数调用。
33 0
|
1月前
|
存储 网络协议 编译器
【干货总结】Linux C/C++面试知识点
Linux C/C++基础与进阶知识点,不仅用于面试,平时开发也用得上!
451 8
|
14天前
|
存储 Java Linux
Java面试之Linux和docker
Java面试之Linux和docker
15 0
|
14天前
|
运维 监控 大数据
部署-Linux01,后端开发,运维开发,大数据开发,测试开发,后端软件,大数据系统,运维监控,测试程序,网页服务都要在Linux中进行部署
部署-Linux01,后端开发,运维开发,大数据开发,测试开发,后端软件,大数据系统,运维监控,测试程序,网页服务都要在Linux中进行部署
|
1月前
|
消息中间件 Unix Linux
[高频]Linux中常见的命令及常见面试题
[高频]Linux中常见的命令及常见面试题
|
16天前
|
运维 Linux 应用服务中间件
Linux之自动化运维工具ansible、ansible模块(2)
Linux之自动化运维工具ansible、ansible模块(2)
|
16天前
|
运维 Linux Shell
Linux之自动化运维工具ansible、ansible模块(1)
Linux之自动化运维工具ansible、ansible模块(1)