Linux系统运维常见面试简答题

作者: admin 分类: linux运维面试题 发布时间: 2018-05-30 22:49

  本文所有内容均来自网络,由运维派编辑整理,如内容有不正之处,烦请给予指正,谢谢!

  1. 写一个sed命令,修改/tmp/input.txt文件的内容,要求:

  (1) 删除所有空行;

  (2) 一行中,如果包含”11111″,则在”11111″前面插入”AAA”,在”11111″后面插入”BBB”,比如:将内容为0000111112222的一行改为:0000AAA11111BBB2222

  [root@~]# cat -n /tmp/input.txt

  1 000011111222

  2

  3 000011111222222

  4 11111000000222

  5

  6

  7 111111111111122222222222

  8 2211111111

  9 112222222

  10 1122

  11

  删除所有空行命令

  [root@~]# sed ‘/^$/d’ /tmp/input.txt

  000011111222

  000011111222222

  11111000000222

  111111111111122222222222

  2211111111

  112222222

  1122

  插入指定的字符

  [root@~]# sed ‘s#\(11111\)#AAA\1BBB#g’ /tmp/input.txt

  0000AAA11111BBB222

  0000AAA11111BBB222222

  AAA11111BBB000000222

  AAA11111BBBAAA11111BBB11122222222222

  22AAA11111BBB111

  112222222

  1122

  2. 每周一下午三点将/tmp/logs目录下面的后缀为*.log的所有文件rsync同步到备份服务器192.168.1.100中同样的目录下面,crontab配置项该如何写:

  00 15 * * 1 rsync -avzP /tmp/logs/*.log root@192.168.1.100:/tmp/logs

  3. 找到/tmp/目录下面的所有名称以”_s1.jpg”结尾的普通文件,如果其修改日期在一天内,则将其打包到/tmp/back.tar.gz文件中

  find /tmp -type f -name “.*_sj.jpg” -mtime 1|xarges tar zxf /tmp/back.tar.gz

  4. 写出如何给apache增加virtualhost,让访问http://www.test.com和http://www.test.cn的时候,都打开/var/www/html目录下面的文件:

  ServerAdmin admini@abc.com

  DocumentRoot “/var/www/html”

  ServerName www.test.com

  ServerAlias test.cn

  ErrorLog “logs/bbs-error_log”

  CustomLog “logs/bbs-access_log” common

  5. 配置mysql服务器的时候,配置了auto_increment_increment=3,请问这里的3意味着什么?

  auto_increment是用于主键自动增长的,从3开始增长,3表示自增的起始值

  6. 用一条命令显示本机eth0网卡的IP地址,不显示其它字符

  方法一:

  [root@apache ~]# ifconfig eth0|grep “inet addr”|awk -F ‘[ :]+’ ‘{print $4}’

  192.168.1.22

  方法二:

  [root@apache ~]# ifconfig eth0|awk -F ‘[ :]+’ ‘NR==2 {print $4}’

  192.168.1.22

  方法三:

  [root@apache ~]# ifconfig eth0|sed -n ‘2p’|sed ‘s#^.*addr:##g’|sed ‘s# Bc.*$##g’

  192.168.1.22

  方法四:

  [root@apache ~]# ifconfig eth0|sed -n ‘2p’|sed -r ‘s#^.*addr:(.*) Bc.*$#\1#g’

  192.168.1.22

  7. 请详细说明keepalived的故障切换工作原理

  这种故障切换是通过VRRP协议来实现的,主节点会按一定的时间间隔发送心跳信息的广播包,告诉备节点自己的存活状态信息,当主节点发生故障时,备节点在一段时间内就收到广播包,从而判断主节点出现故障,因此会调用自身的接管程序来接管主节点的IP资源及服务,当主节点恢复时,备节点会主动释放资源,恢复到接管前的状态,从而来实现主备故障切换。

  8. 写出一个curl命令,访问指定服务器61.135.169.121上的如下URL:http://www.baidu.com/s?wd=test,访问的超时时间是20秒:

  curl –connect-timeout 20 http://61.135.169.121/s?wd=test

  9. 用netstat命令配合其他shell命令,按照源IP统计所有到80端口的ESTABLISHED状态链接的个数,输出结果类似(第一列为连接数,第二列为IP):

  [root@~]# netstat -an|grep ESTABLISHED

  tcp 0 52 139.224.199.85:22 101.47.33.86:51763 ESTABLISHED

  tcp 0 0 139.224.199.85:45368 106.11.68.13:80 ESTABLISHED

  [root@ ~]# netstat -an|grep ESTABLISHED|grep “:80”

  tcp 0 0 139.224.199.85:45368 106.11.68.13:80 ESTABLISHED

  [root@ ~]# netstat -an|grep ESTABLISHED|grep “:80″|awk ‘BEGIN{FS=”[[:space:]:]+”}{print $4}’

  139.224.199.85

  说明:FS 是字段分隔符

  如果需要进行整理并排序的话,完整命令如下

  [root@ ~]# netstat -an|grep ESTABLISHED|grep “:80″|awk ‘BEGIN{FS=”[[:space:]:]+”}{print $4}’|sort|uniq -c|sort -nr

Linux 命令大全

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!