天天看點

linux面試中級面試題

一、Linux系統和Shell

1.  寫一個sed指令,修改/tmp/input.txt檔案的内容,要求:(1) 删除所有空行;(2) 一行中,如果包含"11111",則在"11111"前面插入"AAA",在"11111"後面插入"BBB",比如:将内容為0000111112222的一行改為:0000AAA11111BBB2222

#sed '^$/d ' input.txt

#sed-i '/allow /tmp/11111 /i\allow AAA' input.txt

#sed-i '/allow /tmp/11111 /a\allow BBB' input.txt

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

#crontab–e

*15 * * 1 rsync -vazu /tmp/logs/ [email protected]:/tmp/logs

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

#find/tmp –name “*_sj.jpg” -type f –mtime 1 –print 

4.  寫出SHELL函數RevertInput,函數必須擷取三個參數,然後将三個參數倒序echo列印出來,函數必須檢查參數個數的合法性,如果參數非法,列印”Illegalparameters”,對于下面的輸入:

RevertInput “this is para1” para2para3

應該輸出:

para3

para2

this is para1

(注:需要注意第一個參數中的空格)

5.  如果一個系統使用LVM進行分區管理,請寫出調整一個邏輯卷分區大小的指令:

6.  如何找出目前系統中磁盤I/O讀寫占用最高的程式:

二、網絡相關

1.  一個域名是否可以配置多個A記錄?一個域名是否可以配置成多個其他域名的CNAME?

2.  請寫出用tcpdump抓取符合如下條件包的指令:(1)目标端口是 80;(2) 來源IP或者是1.1.1.1,或者是2.2.2.2;(3) UDP包;

3.  用netstat指令配合其他shell指令,按照來源IP統計下所有到80端口的ESTABLISHED狀态連結的個數,輸出結果類似(第一列為連接配接數,第二列為IP):

    12 202.165.123.2

    35 202.165.123.2

    69 202.165.123.2

三、LAMP相關

2.  寫一個shell指令,統計apache日志檔案(access_log)中某一天中每個URL的通路次數,并按照次數由小到大的順序排序輸出:

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

4.  如何打開PHP檔案的出錯輸出

四、緩存、監控、KVM等

2.  請說明下面zabbix監控項配置的意義:

UserParameter=dns.duration_[*],/opt/tools/dns_status.sh  | grep "^$1:" | awk '{print $$3}'

3.  如何給一個名稱為CentOS62的KVM虛拟機建立快照

五、綜合問答:

如果一個Linux系統響應十分緩慢,SSH進去後執行指令等一分鐘才有響應,請說明各種可能的原因,并闡述如何分析并找到問題源頭?

本文轉自xinsz08の平行時空部落格51CTO部落格,原文連結http://blog.51cto.com/xinsz08/1854563如需轉載請自行聯系原作者

<b>次元2018</b>