【面试真经】2020年7月 Linux运维面试题(含答案版)

文章目录

        • 前言:
          • 一. 在当前文件目录下,有文件file1
          • 二. 如何将本地80端口的请求转发到8080端口,当前的主机IP为192.168.2.1
          • 三. crontab 如何设置在11月份的每天早上6点到12点中,每隔2个小时执行 /usr/bin/httpd.sh 怎么实现
          • 四. 编写个shell 脚本将/usr/local/test 目录下大于100K 的文件转移到/tmp 目录下
          • 五. 简述raid0 raid1 raid5 三种工作模式的工作原理及特点。
          • 六. mysql 数据库备份方式
          • 七. 如何查看占用端口8080 的进程
          • 八. 如何统计当前Linux系统中TCP链接的ESTABISHED ,TIMEOUT 等各种状态的情况
          • 九. 你使用过监控软件吗?说说其特点
          • 十. 你使用过自动化配置和部署工具吗,这些工具有什么特点?
        • 总结

前言:

本面试题,是小伙伴们7月份出去面试获得的一手资料,如果你也在面试运维,可以看看,说不定你也会去这家公司面试。
公司的面试题也是从网上找的题目,而且很多公司面试题一套题一用就是几年不换题。换题的也就是出了三五套,这个月用这套,下个月用下一套。

之前一个学员去360面试,做完了三套题,去面试正好是其中一套。

一. 在当前文件目录下,有文件file1
  1. 查询file1里面空行的所在行号
  2. 查询file2以五行结尾的行
  3. 打印出file1文件第一行到第3行
[root@ecs-c13b ~]# cat file1 
我是高胜寒第一行
我是高胜寒第二行

我是高胜寒第三行
我是高胜寒第四行
我是高胜寒第五行
1. file中的空行
[root@ecs-c13b ~]# grep -n ^$ file1|awk -F: '{print $1}'
3
2.   以“五行”结尾的行
[root@ecs-c13b ~]# grep "五行$" file1
我是高胜寒第五行
3.  [root@ecs-c13b ~]# sed "3q" file1
我是高胜寒第一行
我是高胜寒第二行
空行
二. 如何将本地80端口的请求转发到8080端口,当前的主机IP为192.168.2.1
 iptables -t nat -A PREROUTING -d 192.168.2.1 -p tcp --dport 80 -j DNAT --to-des 192.168.2.1:8080
三. crontab 如何设置在11月份的每天早上6点到12点中,每隔2个小时执行 /usr/bin/httpd.sh 怎么实现
crontab -e
* 6-12/2 * 11 * /usr/bin/httpd.sh
四. 编写个shell 脚本将/usr/local/test 目录下大于100K 的文件转移到/tmp 目录下
#!/bin/bash  
for FILE in `ls /usr/local/test`  
do  
    if [ -f $FILE ] ; then  
        if [ `ls -l  $FILE | awk `{print $5}` -gt 100000 ] ; then  
            mv $FILE  /tmp/  
        fi  
    fi  
done  
五. 简述raid0 raid1 raid5 三种工作模式的工作原理及特点。
RAID0 ,由一块盘或者多快盘组合起来的一块盘,缺点是没有冗余,坏掉了数据就没了
RAID1: 由两块盘组成的,一块盘写入信息,用一块盘做备份, 缺点; 成本较高,一份数据分两份写
RAID5: 由三块盘组成的,损失一块盘,不影响使用。 缺点: 读的性能较好,写的性能稍差
六. mysql 数据库备份方式
   1.  直接拷贝数据,一般是myisam引擎,但备份时候不能写入数据
   2. 使用mysqlhotcopy 工具进行数据备份。
   3. 使用mysqldump进行备份
   
   备份: 增量备份,全量备份,差异备份
七. 如何查看占用端口8080 的进程
[root@zmedu-17 ~]# lsof -i:22    ## 虚拟机上没有8080端口,你可以把22换成8080
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd     1442 root    3u  IPv4  28048      0t0  TCP *:ssh (LISTEN)
sshd     1442 root    4u  IPv6  28064      0t0  TCP *:ssh (LISTEN)
sshd    67514 root    3u  IPv4 141418      0t0  TCP zmedu-17:ssh->192.168.1.4:ttntspauto (ESTABLISHED)

八. 如何统计当前Linux系统中TCP链接的ESTABISHED ,TIMEOUT 等各种状态的情况
ESTABISHED:  建立连接,表示处于通信状态
TIMEOUT: 超时
[root@ecs-c13b ~]# netstat -an |grep ESTABLISHED |wc -l
5

[root@ecs-c13b ~]# netstat -nat |grep ESTABLISHED|awk '{print$5}' | awk -F : "{print $1}" |sort |uniq -c |sort -rn    #查看每个ip建立的ESTABLISHED/TIME_OUT状态的连接数
      1 120.244.154.166:5010
      1 120.244.154.166:4915
      1 120.244.154.166:4763
      1 120.244.154.166:4747
      1 120.244.154.166:4736
      1 100.125.1.41:443


九. 你使用过监控软件吗?说说其特点
cacti:  图表效果展示比较好
nagios: 告警功能强大
zabbix: 集合了nagios和cacti的优点
其他的还有,promethues,等
十. 你使用过自动化配置和部署工具吗,这些工具有什么特点?
jenkins: 一个CI/CD 工具,实现自动化部署方便快捷
ElectricFlow:  有免费的社区版,包含大量插件

总结

笔试题考得都是基础知识,主要考察你对基础知识的掌握情况,所以务必在面试前多看一下笔试题

我是高胜寒,一个在教培行业不忘初心的人。

你可能感兴趣的:(面试真经,笔试题,面试,笔试,微软,百度,腾讯,linux,运维)