运维面试题和答案

1、简述TCP三次握手四次挥手过程及各过程中客户端和服务器端的状态。

#三次握手
客户端向服务器端发送SYN包,客户端进入SYN_SEND状态
服务器端收到客户端发送的包返回ACK+SYN包,服务器端进入SYN_RECV状态
客户端收到服务器端返回的包再发回ACK包,客户端进入ESTABLISHED状态,服务器端收到包也进入ESTABLISHED状态
客户端状态:SYN_SENDE    STABLISHED
服务器端状态:SYN_RCVE    ESTABLISHED
#四次挥手
客户端发送FIN包询问服务器端是否能断开,客户端进入FIN_WAIT_1状态
服务器端收到客户端发送的包并返回ACK包,服务器端进入CLOSE_WAIT状态
服务器端准备好断开后,发送FIN包给客户端,服务器端进入LAST_ACK状态
客户端收到服务器端发送的包后返回ACK包,客户端进入TIME_WAIT状态,服务器端收到包后进入CLOSED状态
客户端状态:FIN_WAIT_1    FIN_WAIT_2    TIME_WAIT
服务器端状态:CLOSE_WAIT    LAST_ACKC    LOSED

2、说说进程和线程的区别

进程是并发执行的程序在执行过程中分配和管理资源的基本单位。
线程是进程的一部分,线程的改变只代表了 CPU 执行过程的改变,而没有发生进程所拥有的资源变化。

3、查询file.txt以abc结尾的行

grep "abc$" file.txt

4、删除file.txt文件中的空行

sed -i '/^$/d' file.txt

5、打印file.txt文件中的第10行

sed -n '10p' file.txt

head -10 file.txt | tail -1

6、对MySQL数据库test进行备份和恢复

备份:

mysqldump -uroot -pPassword -hHostname test >/root/test.sql

恢复:

mysql -uroot -pPassword -hHostname </root/test.sql

7、用netstat统计系统当前tcp连接的各种状态的连接数。

netstat -nat| awk '{print $6}'| sort | uniq -c

8、linux下如何将GBK编码格式的test_gbk.txt文件转换成UTF-8编码格式,转化后的文件名为 test_utf8.txt

iconv -f GBK -t UTF-8 test_gbk.txt -o test_utf8.txt

9、说说你用过哪些监控软件,并简述其原理及适用场景

#zabbix
    agent方式监控:在被监控端安装agent程序,通过zabbix自己的协议主动或被动发送数据给server端或代理的proxy端,
适用于服务器、工作站的监控,不适用于交换机、路由器、防火墙的监控。
    SNMP方式监控:通过SNMP协议进行监控,需要开起并配置SNMP服务,适用于网络设备(交换机、路由器、防火墙)的监控,
通信协议为UDP,所以不适用于服务器、工作站的监控。

10、写出查看linux系统性能的命令,如cpu、内存、流量、io等

top,free,iftop,iostat

11、说说nginx的upstream支持的分配策略,并简述其原理

轮询:默认的方式,按时间顺序依次分配
weight:根据服务器权重进行轮询分配
ip_hash:按ip的hash值进行分配,可以解决session保持
url_hash:按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效
fair:按服务器响应时长进行分配

12、crontab定时:在11月份内,每天的早上6点到12点中,每隔2小时执行一次/usr/bin/httpd.sh  怎么实现

0 6-12/2 * 11 * /usr/bin/httpd.sh

13、iptables禁止 ip 10.10.10.1 访问本地80端口

iptables -t filter -I INPUT -p tcp -s 10.10.10.1 --dport 80 -j DROP

14、找出在文件a中但不在文件b中的内容,用命令后编写脚本实现

#!/bin/bash
diff /root/a /root/b | grep "<" | awk '$1=" "'

15、编写shell循环创建100个用户,用户名格式user_[0~99]

#!/bin/bash
for i in {1..100};do
        useradd user_$i
done
echo "ok"

原创文章,作者:N17_信风,如若转载,请注明出处:http://www.178linux.com/18051

(9)
N17_信风N17_信风
上一篇 2016-06-09 22:15
下一篇 2016-06-11 22:40

相关推荐

  • CentOS 5和6的启动流程

    一、Linux组成     1. linux:kernel+rootfs         kernrl的作用:进程管理、内存管理、网络管理、驱动程序、文件系统、安全功能      &nbsp…

    Linux干货 2016-09-18
  • N25_第三周作业_leon

    N25_第三周作业_leon 1.       列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who 全部 jj       tty1  …

    Linux干货 2017-01-06
  • grep与文本处理工具

    grep:基本正则表达式,-E  -F egrep:扩展正则表达式,-G -F fgrep: 不支持正则表达式,-F  egrep:          支持扩展的正则表达式实现类似于grep文本过滤功能; grep -E          …

    Linux干货 2016-12-23
  • 计算机简介

    计算机的简介 电子计算机(英语:computer),亦称电脑,是一种利用「电子学」原理,根据一系列指令对数据进行处理的工具计算机种类繁多,但实际来看,计算机总体上是处理信息的工具。计算机在组成上形式不一,早期计算机的体积足有一间房屋的大小,而今天某些嵌入式计算机可能比一副「扑克牌」还小。当然,即使在今天依然有大量体积庞大的巨型计算机为特别的[科学]计算或面向…

    Linux干货 2016-10-28
  • 计算机的组成及功能

    计算机的组成及功能 计算机由CPU、存储器、输入设备、输出设备等部件组成。 CPU:为计算机的中央处理器,是计算机的核心部分,由运算器和控制器组成。 运算器:CPU中用于进行算术运算和逻辑运算的部件。 控制器:整个CPU的指挥中心,控制程序中指令读取、解析并产生相应的操作控制信息保证各程序的有序执行。 存储器:计算机中用来存储数据、程序等信息的部件,并在需要…

    Linux干货 2017-07-02
  • shell脚本之变量、运算、条件测试。

    概述 程序:指令+数据 程序编程风格: 过程式:以指令为中心,数据服务于指令 对象式:以数据为中心,指令服务于数据 shell程序:提供了编程能力,解释执行 计算机:运行二进制指令; 编程语言: 低级:             汇编 高级:…

    Linux干货 2016-08-15