天天看點

linux系統運維企業常見面試題集合(三)

linux系統運維企業常見面試題集合(三)

01  寫一個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

1122                                                                                     

02   每周一下午三點将/tmp/logs目錄下面的字尾為*.log的所有檔案rsync同步到備份伺服器192.168.1.100中同樣的目錄下面,crontab配置項該如何寫:

 00 15 * * 1 rsync -avzP /tmp/logs/*.log [email protected]:/tmp/logs

03   找到/tmp/目錄下面的所有名稱以"_s1.jpg"結尾的普通檔案,如果其修改日期在一天内,則将其打包到/tmp/back.tar.gz檔案中

find /tmp -type f -name ".*_sj.jpg" -mtime 1|xarges tar zcf /tmp/back.tar.gz

04   寫出如何給apache增加virtualhost,讓通路http://www.test.com和http://www.test.cn的時候,都打開/var/www/html目錄下面的檔案:

 <VirtualHost *:80>

    ServerAdmin [email protected]

    DocumentRoot "/var/www/html"

    ServerName www.test.com

    ServerAlias  test.cn

    ErrorLog "logs/bbs-error_log"

    CustomLog "logs/bbs-access_log" common

</VirtualHost>

06  配置mysql伺服器的時候,配置了auto_increment_increment=3,請問這裡的3意味着什麼?

07   用一條指令顯示本機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}' 

方法三:

[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'

08  請詳細說明keepalived的故障切換工作原理

這種故障切換是通過VRRP協定來實作的,主節點會按一定的時間間隔發送心跳資訊的廣播包,告訴備節點自己的存活狀态資訊,當主節點發生故障時,備節點在一段時間内就收到廣播包,進而判斷主節點出現故障,是以會調用自身的接管程式來接管主節點的IP資源及服務,當主節點恢複時,備節點會主動釋放資源,恢複到接管前的狀态,進而來實作主備故障切換

09   寫出一個curl指令,通路指定伺服器61.135.169.121上的如下URL:http://www.baidu.com/s?wd=test,通路的逾時時間是20秒:

10   用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"

[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

<a href="https://s5.51cto.com/wyfs02/M02/8D/8F/wKioL1ihqa7zXUAyAABspnf9dSI681.jpg-wh_500x0-wm_3-wmp_4-s_1214870078.jpg" target="_blank"></a>

本文轉自 民工哥 51CTO部落格,原文連結:http://blog.51cto.com/mingongge/1897432