1、簡述TCP三次握手四次揮手過程及各過程中客戶端和服務器端的狀態。
答:三次握手:
客戶端發起連接請求SYN給服務器端
服務器端發送ACK回應及SYN請求給客戶端
客戶端發送一個ACK回應給服務器端
保持連接
四次斷開:
客戶端發起斷開請求FIN給服務器端
服務器端發送ACK回應給客戶端
服務器端又發送一個FIN請求給客戶端
客戶端發送一個ACK給服務器端,并等待一段時間再斷開
2、說說進程和線程的區別
答:線程可共享內存,而進程不可以。
但正因為線程可共享內存,可能會導致資源爭用、加鎖等待的問題。而進程之間相互獨立。
3、查詢file.txt以abc結尾的行
答:grep abc$ file.txt
4、刪除file.txt文件中的空行
答:sed -i ‘/[[:space:]]+/d’file.txt
5、打印file.txt文件中的第10行
答:awk ‘NR==10{print}’ file.txt
6、對MySQL數據庫test進行備份和恢復
備份:mysqldump -uXXX -pXXX -hXXX –B test -x -E -R > test.sql
恢復:mysql -uXXX -pXXX -hXXX text < test.sql
7、用netstat統計系統當前tcp連接的各種狀態的連接數。
答:netstat -tnlp
8、linux下如何將GBK編碼格式的test_gbk.txt文件轉換成UTF-8編碼格式,轉化后的文件名為 test_utf8.txt
答:不會做
9、說說你用過哪些監控軟件,并簡述其原理及適用場景
答:使用過zabbix監控
zabbix監控主要就是:收集數據(SNMP、IPMI、agent等方式收集)——》數據匯總——》設置監控項——》設置觸發條件——》使用某種告警媒介——》設置告警后應執行的操作
應用場景:可使用SNMP對交換路由做監控
可對服務器實現系統資源監控及自定義監控
可通過自動發現或agent注冊實現監控的自動添加
可通過proxy進行監控
10、寫出查看linux系統性能的命令,如cpu、內存、流量、io等
答:top、htop、glance
sar、iostat、iftop、dstat
11、說說nginx的upstream支持的分配策略,并簡述其原理
答:nginx的upstream支持有
rr:輪詢,按順序依次對upstream的主機進行訪問,默認使用該機制
ip_hash:根據發送請求的IP進行哈希計算,同樣的IP來源會一直綁定在同一個后端主機上
least_conn:最少連接,根據后端主機的連接負載進行判斷,將請求發送給連接數比較小的后端主機上。支持添加權重,會根據權重值做調整。
12、crontab定時:在11月份內,每天的早上6點到12點中,每隔2小時執行一次/usr/bin/httpd.sh 怎么實現
答:# crontab –e
0 (6-12)/2 * 11 * /usr/bin/httpd.sh
13、iptables禁止 ip 10.10.10.1 訪問本地80端口
答:iptables –A INPUT –s 10.10.10.1 –p –dport 80 –j DROP
14、找出在文件a中但不在文件b中的內容,用命令后編寫腳本實現
答:grep -v -Ff b a
#!/bin/env bash
#
PATH=/usr/bin:/usr/sbin:/bin:/sbin:
# 腳本放在a和b的目錄中
cd $(dirname $0)
# 將b中的內容做成一個循環體
B=$(cat b)
cat a | while read A;do
for i in $B;do
# 將a中的內容與b中的內容進行比對,若相同則輸出
if [ $A == $i ];then
echo $A
fi
done
done
15、編寫shell循環創建100個用戶,用戶名格式user_[0~99]
#!/bin/env bash
#
for i in seq(0..99);do
/usr/sbin/useradd user_$i
done
原創文章,作者:526399002,如若轉載,請注明出處:http://www.www58058.com/18577