『壹』 linux系統工程師面試題附答案
一、簡答題
1.如何將本地80埠的請求轉發到8080埠,當前主機IP為192.168.16.1,其中本地網卡eth0:
答:# iptables -t nat -A PREROUTING -d 192.168.16.1 -p tcp --dport 80 -j DNAT --to 192.168.16.1:8080
或 者:# iptables -t nat -A PREROUTING -i eth0 -d 192.168.16.1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
2.什麼是NAT,常見分為那幾種,DNAT與SNAT有什麼不同,應用事例有那些?
SNAT,DNAT,MASQUERADE都是NAT。
MASQUERADE是SNAT的一個特例。
SNAT是指在數據包從網卡發送出去的時候,把數據包中的源地址部分替換為指定的IP,這樣,接收方就認為數據包的來源是被替換的那個IP的主機。
MASQUERADE是用發送數據的網卡上的IP來替換源IP,因此,對於那些IP不固定的場合,比如撥號網路或者通過dhcp分配IP的情況下,就得用MASQUERADE。
DNAT,就是指數據包從網卡發送出去的時候,修改數據包中的目的IP,表現為如果你想訪問A,可是因為網關做了DNAT,把所有訪問A的數據包的目的IP全部修改為B,那麼,你實際上訪問的是B
因為,路由是按照目的地址來選擇的,因此,DNAT是在PREROUTING鏈上來進行的,而SNAT是在數據包發送出去的時候才進行,因此是在POSTROUTING鏈上進行的。
3.包過濾防火牆與代理應用防火牆有什麼區別,能列舉幾種相應的產品嗎?
4.iptables是否支持time時間控制用戶行為,如有請寫出具體操作步驟。
5.說出你知道的幾種linux/unix發行版本。
Redhat、CentOS、Fedora、SuSE、Slackware、Gentoo、Debian、Ubuntu、FreeBSD、Solaris、SCO、AIX、HP…
6.列出linux常見打包工具並寫相應解壓縮參數(至少三種)
7.計劃每星期天早8點伺服器定時重啟,如何實現?
8.列出作為完整郵件系統的軟體,至少二類。
9,當用戶在瀏覽器當中輸入一個網站,說說計算機對dns解釋經過那些流程?註:本機跟本地dns還沒有緩存。
答:
a.用戶輸入網址到瀏覽器;
b.瀏覽器發出DNS請求信息;
c.計算機首先查詢本機HOST文件,看是否存在,存在直接返回結果,不存在,繼續下一步;
d.計算機按照本地DNS的順序,向合法dns伺服器查詢IP結果;
e.合法dns返回dns結果給本地dns,本地dns並緩存本結果,直到TTL過期,才再次查詢此結果;
f.返回IP結果給瀏覽器;
g.瀏覽器根據IP信息,獲取頁面;
10,我們都知道,dns既採用了tcp協議,又採用了udp協議,什麼時候採用tcp協議?什麼時候採用udp協議?為什麼要這么設計?
答:這個題需要理解的東西比較的多,分一下幾個方面
a,從數據包大小上分:UDP的最大包長度是65507個位元組,響應dns查詢的時候數據包長度超過512個位元組,而返回的只要前512個位元組,這時名字 解釋器通常使用TCP從發原來的請求。
b,從協議本身來分:大部分的情況下使用UDP協議,大家都知道UDP協議是一種不可靠的協議,dns不像其它的使用UDP的Internet應用 (如:TFTP,BOOTP和SNMP等),大部分集中在區域網,dns查詢和響應需要經過廣域網,分組丟失和往返時間的不確定性在廣域網比區域網上更 大,這就要求dns客戶端需要好的重傳和超時演算法,這時候使用TCP。
11,一個EXT3的文件分區,當使用touch test.file命令創建一個新文件時報錯,報錯的信息是提示磁碟已滿,但是採用df -h命令查看磁碟大小時,只使用了,60%的磁碟空間,為什麼會出現這個情況,說說你的理由。
答:兩種情況,一種是磁碟配額問題,另外一種就是EXT3文件系統的設計不適合很多小文件跟大文件的一種文件格式,出現很多小文件時,容易導致inode 耗盡了。
12,我們都知道FTP協議有兩種工作模式,說說它們的大概的一個工作流程?
FTP兩種工作模式:主動模式(Active FTP)和被動模式(Passive FTP)
在主動模式下,FTP客戶端隨機開啟一個大於1024的埠N向伺服器的21號埠發起連接,然後開放N+1號埠進行監聽,並向伺服器發出PORT N+1命令。
伺服器接收到命令後,會用其本地的FTP數據埠(通常是20)來連接客戶端指定的埠N+1,進行數據傳輸。
在被動模式下,FTP客戶端隨機開啟一個大於1024的埠N向伺服器的21號埠發起連接,同時會開啟N+1號埠。然後向伺服器發送PASV命令,通 知伺服器自己處於被動模式。伺服器收到命令後,會開放一個大於1024的埠P進行監聽,然後用PORT P命令通知客戶端,自己的數據埠是P。客戶端收到命令後,會通過N+1號埠連接伺服器的埠P,然後在兩個埠之間進行數據傳輸。
總的來說,主動模式的FTP是指伺服器主動連接客戶端的數據埠,被動模式的.FTP是指伺服器被動地等待客戶端連接自己的數據埠。
被動模式的FTP通常用在處於防火牆之後的FTP客戶訪問外界FTp伺服器的情況,因為在這種情況下,防火牆通常配置為不允許外界訪問防火牆之後主機,而只允許由防火牆之後的主機發起的連接請求通過。
因此,在這種情況下不能使用主動模式的FTP傳輸,而被動模式的FTP可以良好的工作。
13.編寫個shell腳本將當前目錄下大於10K的文件轉移到/tmp目錄下
Q:主要是考察awk 這些的用法
#/bin/sh
#Programm :
# Using for move currently directory to /tmp
for FileName in `ls -l |awk ‘$5>10240 {print $9}’`
do
mv $FileName /tmp
done
ls -la /tmp
echo “Done! ”
14.apache有幾種工作模式,分別介紹下其特點,並說明什麼情況下採用不同的工作模式?
apache主要有兩種工作模式:prefork(apache的默認安裝模式)和worker(可以在編譯的時候加參數–with-mpm- worker選擇工作模式)
『貳』 Linux運維工程師面試題庫及答案
Linux運維工程師面試題庫及答案
為幫助大家順利通過Linux面試,我為大家分享的是Linux面試各部分知識題庫,希望對大家復習有所幫助!
Linux操作系統知識
1.常見的Linux發行版本都有什麼?你最擅長哪一個?它的網站網站是什麼?說明你擅長哪一塊?
2.Linux開機啟動流程詳細步驟是什麼?系統安裝完,忘記密碼如何破解?
3.企業中Linux伺服器系統分區標準是什麼?(硬碟為300G,內存16G)
4.某一天突然發現Linux系統文件只讀,該怎麼辦呢?完整操作步驟。
5.安裝一台系統使用DVD光碟安裝,如何安裝50台Linux系統如何安裝呢?思考一下。
6.用虛擬機安裝了一台Linux系統,突然想克隆一台伺服器,克隆後發現無法上網,如何解決?
7.Linux網卡配置文件路徑是什麼?要使伺服器上外網,必須滿足的條件有哪些?需要配置什麼?
8.一般可以使用什麼軟體遠程linux伺服器?通過什麼上傳文件和下載文件?
9./mnt目錄主要用於什麼?/root目錄跟root用戶有什麼關系?/根目錄與/boot目錄有什麼聯系?
10.某一天誤操作,執行了rm -rf * ,會有哪些情況發生?請舉例。
Linux命令及文件操作
1.在/tmp/目錄下創建test.txt文件,內容為: Hello,World! ,用一個命令寫出來。
2.給test.txt文件除所有者之外增加執行許可權,最終以數字寫出文件的許可權。
3.用vi命令編輯test.txt,如何跳轉到末行,首行,行首、行末,如何在游標行下一行插入,如何復制5行,刪除10行,查找jingfeng的字元、把jingfeng替換為jfe.net
4.查找linux系統下以txt結尾,30天沒有修改的文件大小大於20K同時具有執行許可權的文件並備份到/data/backup/目錄下。
5.當前test.txt所屬的用戶為root,組為abc,請將test.txt使擁有者為abc,組為root,寫出命令。
6.如何修改Linux啟動級別為字元模式並永久生效,如何臨時、永久關閉selinux及防火牆,請分別寫出操作方法。
7.每次開機在/tmp目錄下創建一個當天的日期文件夾(提示:當前日期表示的方法為:`date +%Y%m%d`)
8.如何查看文件內容,命令有哪些?查看文件第1行到3行,查看文件最後一行。
9.查看linux伺服器IP的命令,同時只顯示包含ip所在的行列印出來。
10.將普通用戶test加入root組的命令是?
Linux磁碟及軟體管理操作
1.如何添加一塊新的50G硬碟到linux伺服器系統作為單獨的'分區,並正在使用?需要哪些操作步驟?
2.有個金士頓U盤,需要往伺服器/var/www/html/目錄下上傳一個index.html文件,如何操作並完成。
3.有一塊移動硬碟,上面有300G數據,如何快速cp到linux伺服器?
4.光碟裡面有一個httpd-2.2.15.xx.rpm包,如何掛載並安裝呢?
5.使用rpm命令安裝、卸載、刪除、更新ntp-0.7.12.x86_64.rpm這個軟包。
6./var/www/html/是網站的發布目錄,如何每天凌晨0點30對其進行自動備份,寫出操作步驟?
7.使用tar命令打包並壓縮/root目錄,然後移動到/tmp下,將其許可權設置其他人只讀。
8.Yum命令與rpm命令的區別?如何使用rpm安裝一個有依賴的包?
9.在這個月內,每天的早上 6 點到 12 點中,每隔 2 小時創建一個test.txt文件,內容為ok,如何實現?
10.將/usr/local/test目錄下大於100K 的文件轉移到/tmp 目錄下。
11.簡述 raid0 raid1 raid5三種工作模式的工作原理及特點。
12.如何查看佔用埠 8080 的進程。
Linux服務配置及管理
1.請寫出 apache2.X 版本的兩種工作模式,以及各自工作原理。如何查看apache 當前所支持的模塊,並且查看是工作在哪種模式下?
2.Linux下nfs在客戶端無法掛載,請寫出排查步驟?
3.Linux下已經部署了dhcp伺服器,客戶端無法獲取的IP,如何解決?
4.常見的FTP軟體有哪些?Linux最常用的是?如何共享一個資源讓他人使用用戶名和密碼訪問?
5.如何禁止FTP使用匿名用戶登錄?命令行如何訪問ftp伺服器?
6.ApacheWEB伺服器的發布目錄在哪裡?
7.ApacheWEB伺服器有幾種工作模式,每種模式的簡單區別?
8.MySQL伺服器的用途是?Apache和mysql可以安裝在一台機器嗎?如何查看apache和mysql埠和進程?
9.如何在虛擬機上面部署4個網站,訪問的域名分別為www.a1.com test.a1.com www.a2.com test.a2.com?
10.假設 Apache 產生的日誌文件名為access_log,在 apache 正在運行時,執行命令 mv access_log access_log.bak,執行完後,請問新的 apache的日誌會列印到哪裡,為什麼?
11.我們都知道 FTP 協議有兩種工作模式,說說它們的大概的一個工作流程?
12.Linux內核引導時,從哪個文件中讀取要載入的文件系統。
13.寫出下面服務的常用埠ftp http dns snmp pop3、dhcp、nfs、mysql、samba等服務。
14.Mysql創建資料庫的命令,創建表的命令,插入語句的命令?
15.Mysql備份命令?Mysql如何給root用戶對jfe授權訪問,密碼為jfe.net,請寫出命令?
16.Mysql忘記密碼該如何操作呢?
17.Linux運維工程師都需要具備哪些技能和職業品質?
;『叄』 linux經常問的面試題有哪些
1、如何查看系統內核的版本
這里有兩種方法:
1) uname -a
uname 這個命令是用來列印系統信息的, -a 可以列印系統所有信息,其中包含內核版本,比如我的版本號是3.10.0-957.21.3.el7.X86_64。
2)使用 ss 命令
現在也有很多人用 ss 命令,ss 一般用於轉儲套接字統計信息。它還可以顯示所有類型的套接字統計信息,包括 PACKET、TCP、UDP、DCCP、RAW、Unix 域等。這里可以用 ss -lntpd
7、如何查看某個進程對 CPU 的使用情況
1) 可以使用 top 命令
top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源佔用狀況,類似於Windows的任務管理器。
2) 使用 ps 命令
ps aux 可以顯示所有使用者的進程,最常用的方法是ps aux,然後再利用一個管道符號導向到grep去查找特定的進程。比如查看nginx 進程可以用
18、Linux里如何來做掛載
這里主要考的是 mount 命令,用於掛載Linux系統外的文件。
只輸入 mount命令可以查看所有系統已經掛載的文件。
如果想掛載一個新的文件,比如將 /dev/hda1 掛在 /mnt 之下,可以用
19、如何查看一些你不太熟悉的命令
這里要考大家的是使用 man 命令。對某個 Linux的命令不熟悉,可以用 man <命令 >,系統會返回該命令的一個非常詳細的手冊,來幫助大家使用。
『肆』 linux認證面試題及答案(5)
0 1 * * * /bin/sh /usr/bin/fileback
7.有一普通用戶想在每周日凌晨零點零分定期備份/user/backup到/tmp目錄下,該用戶應如何做?
參考答案:(1)第一種方法:
用戶應使用crontab –e 命令創建crontab文件。格式如下:
0 0 * * sun cp –r /user/backup /tmp
(2)第二種方法:
用戶先在自己目錄下新建文件file,文件內容如下:
0 * * sun cp –r /user/backup /tmp
然後執行 crontab file 使生效。
8.設計一個Shell程序,在/userdata目錄下建立50個目錄,即user1~user50,並設置每個目錄的許可權,其中其他用戶的許可權為:讀;文件所有者的許可權
為:讀、寫、執行;文件所有者所在組的許可權為:讀、執行。
參考答案: 建立程序 Pro16如下:
#!/bin/sh
i=1
while [ i -le 50 ]
do
if [ -d /userdata ];then
mkdir -p /userdata/user$i
chmod 754 /userdata/user$i
echo "user$i"
let "i = i + 1" (或i=$(($i+1))
else
mkdir /userdata
mkdir -p /userdata/user$i
chmod 754 /userdata/user$i
echo "user$i"
let "i = i + 1" (或i=$(($i+1))
fi
done
五、多選題
1.關於硬鏈接的描述正確的(BE)。
A 跨文件系統 B不可以跨文件系統 D可以做目錄的連接
C 為鏈接文件創建新的i節點 E鏈接文件的i節點同被鏈接文件的i節點
2.在網站發布用戶wang的個人網頁時,需要創建用戶網頁目錄,假定用戶網頁目錄設定為web
(用戶目錄在/home目錄下),如下描述正確的是(BCE)
A 存放用戶網頁的絕對路徑/wang/web B存放用戶網頁的目錄~wang/
C 存放用戶網頁的絕對路徑/home/wang/web D存放用戶網頁的絕對路徑/home/web
E 在本機訪問用戶wang的個人網頁的URL地址http://localhost/~wang/
3.在一台WWW伺服器上將埠號設定為8000,默認的網頁文件index.html,伺服器網頁的根目錄/www。在本機訪問伺服器時,正確的用法是(BDE)
A 瀏覽器訪問該伺服器的URL地址http://localhost/
B 瀏覽器訪問該伺服器的URL地址http://localhost:8000/
C 瀏覽器訪問該伺服器的用戶li網頁URL地址http://localhost/~li
D 瀏覽器訪問該伺服器的用戶li網頁URL地址http://localhost:8000/~li
E 瀏覽器訪問該伺服器的URL地址localhost:8000/
4.在shell編程中關於$2的描述正確的是(CE)
A 程序後攜帶了兩個位置參數 B 宏替換 C 程序後面攜帶的第二個位置參數
D 攜帶位置參數的個數 E 用$2引用第二個位置參數
5.某文件的許可權是 - r w x r - - r- -,下面描述正確的是(CD)
A 文件的許可權值是755 B 文件的所有者對文件只有讀權 限
C 文件的許可權值是 744 D 其他用戶對文件只有讀許可權 E同組用戶對文件只有寫許可權
6.關於OpenSSH的作用的描述正確的是(ACE)
A 開放源代碼的安全加密程序 B OpenSSH常用於為http協議加密
C OpenSSH用於提高遠程登錄訪問的安全性 D 它和telnet實用同樣的埠號
E OpenSSH是免費下載的應程序
7.關於NFS伺服器描述正確的是(BC)
A 網路中實現Windows系統之間文件系統共享的應用軟體
B 網路中實現Linux系統之間文件系統共享的應用軟體
C 網路中實現Unix系統之間文件系統共享的應用軟體
D 網路中實現Windows系統和Unix之間文件系統共享的應用軟體
E 網路中實現Windows系統和Linux之間文件系統共享的應用軟體
8.關於sed描述正確的是(ABD)
A sed 是Linux系統中的流編輯器 B sed 是UNIX系統中的流編輯器
C sed 網路文件系統的類型
D 利用管道對標准輸入/標准輸入的數據進行編輯和組合
E sed是NFS的應用程序
9.關於限制磁碟限額,描述正確的是(ABD)
A 使用edquota可以監控系統所有用戶使用的磁碟空間,並在接近極限時提示用戶
B 用戶組的磁碟限額是用戶組內所有用戶予設磁碟空間總和
C 單個用戶的磁碟限額就是該用戶所在用戶組內所有磁碟限額的總合
D 在Linux系統下限制用戶使用的磁碟空間可以使用edquota
E 用戶組的磁碟限額就是該用戶組內擁有最大磁碟限額值的用戶的磁碟限額
10.關於建立系統用戶的正確描述是(ABD)
A 在Linux系統下建立用戶使用adser命令
B 每個系統用戶分別在/etc/passwd和/etc/shadow文件中有一條記錄
C 訪問每個用戶的工作目錄使用命令“cd /用戶名”
D 每個系統用戶在默認狀態下的工作目錄在/home/用戶名
E 每個系統用戶在/etc/fstab文件中有一條記錄
『伍』 Linux系統工程師面試題附答案(2)
Linux系統工程師面試題(附答案)
prefork的特點是:(預派生)
1.這種模式可以不必在請求到來時再產生新的進程,從而減小了系統開銷
2.可以防止意外的內存泄漏
3.在伺服器負載下降的時候會自動減少子進程數
worker的特點是:支持混合的多線程多進程的多路處理模塊
如果對於一個高流量的HTTP服務 器,worker MPM是一個比較好的選擇,因為worker MPM佔用的內存要比prefork要小。
15.名詞解釋 HDLC,VTP,OSPF,RIP,DDOS,system V,GNU,netscreen,ssh,smartd,apache,WAIT_TIME 等等。
16.編寫shell腳本獲取本機的網路地址。比如:本機的ip地址是:192.168.100.2/255.255.255.0,那麼它的網路地址是
192.168.100.1/255.255.255.0
方法一:
#!/bin/bash
#This script print ip and network
file=”/etc/sysconfig/network-scripts/ifcfg-eth0″
if [ -f $file ] ;then
IP=`grep “IPADDR” $file|awk -F”=” ‘{ print $2 }’`
MASK=`grep “NETMASK” $file|awk -F”=” ‘{ print $2 }’`
echo “$IP/$MASK”
exit 1
fi
方法二:
#!/bin/bash
#This programm will printf ip/network
#
IP=`ifconfig eth0 |grep ‘inet ‘ |sed ‘s/^.*addr://g’|sed ‘s/ Bcast.*$//g’`
NETMASK=`ifconfig eth0 |grep ‘inet ‘|sed ‘s/^.*Mask://g’`
echo “$IP/$NETMASK”
exit
17.在命令行下發一郵件,發件人:[email protected], 收信人:[email protected]
二、簡述題:
1.linux下如何改IP,主機名,DNS
2.linux下如何添加路由
3.簡述linux下編譯內核的意義與步驟
4.簡述Linux啟動過程
5.簡述DDOS攻擊的原理
6.簡述Tcp三次握手的過程
7.簡述VPN,常見有哪幾種?
三、設計題:
1.系統設計
請考慮以下系統的設計. 您可以翻閱資料,查詢任何您有幫助的資料、指南等。
您有的資源:
8台安裝Linux (2.6內核) 的雙網卡PC伺服器以及相關開源軟體,交換機
Apache 2.2.x
Tomcat 5.5.X
資料庫系統
最多8個Internet IP地址,請您設計一個系統:
1、使用雙apache web server前端;
2、採用AJP連接後段的3台Tomcat應用伺服器,這些tomcat被配置成cluster, 因此需要考慮apache對後端的分配,分配採用完全平衡的方法;配置使用cookie來實現session stickness;
3、1台資料庫伺服器只有tomcat才需要連接,也不需要對Internet提供服務。
4、考慮系統的安全性和維護方便性;
5、通過rewrite規則配置把下屬URL規則改寫成友好的URL
http://server/webapp/getinfo?id=XXXX&name=YYYY –> http://server/getinfo/YYYY/XXXX
您需要提交
1、伺服器規劃,包括:
*網路結構圖
*每台機器的IP地址分配
*每台機器上運行的關鍵軟體
*您從安全性和維護性方面的考慮
2、Apache的以下配置文件給我們:
*extra/http-proxy-ajp.conf
*extra/http-rewrite.conf
2.你可以採取任何設備和不同操 作系統伺服器設計對兩台WWW伺服器和兩台FTP伺服器做負載均衡,用網路拓撲圖表示並加以說明!(方法越多越好)
第一種方法: DNS輪巡
www1 IN A 192.168.1.1
www2 IN A 192.168.1.2
www3 IN A 192.168.1.3
ftp1 IN A 192.1.1.4
ftp2 IN A 192.1.1.5
ftp3 IN A 192.1.1.6
www IN CNAME www1
www IN CNAME www2
www IN CNAME www3
ftp IN CNAME ftp1
ftp IN CNAME ftp2
ftp IN CNAME ftp3
;