常见Linux面试题总结
一、有文件file1
1、查詢file1 里面空行的所在行號
awk `{if($0~/^$/)print NR}` fileor grep -n ^$ file |awk ‘BEGIN{FS=”:”}{print $1}’ 或者用grep -n ^$ /usr/local/httpd/conf/httpd.conf | awk -F: '{print $1}' 即可2、查詢file1 以abc 結尾的行
grep abc$ file1
3、打印出file1 文件第1 到第3 行
sed -n ’1,3p’ file1head -3 file1二、如何將本地80 端口的請求轉發到8080 端口,當前主機IP 為192.168.2.1
Iptables -A PREROUTING -d 124.42.60.109 -p tcp -m tcp –dport 80 -j DNAT –to-destination 10.0.0.18:9000
三、crontab
在11 月份內,每天的早上6 點到12 點中,每隔2 小時執行一次/usr/bin/httpd.sh 怎么實現
0 6-12/2 * 11 * /usr/bin/httpd.sh
四、編寫個shell 腳本將/usr/local/test 目錄下大于100K 的文件轉移到/tmp 目錄下
#!/bin/bashfor file in `ls /usr/local/test`doif [ -f $file ]; thenif [ `ls -l $file|awk '{print $5}'` -gt 100000 ]; thenmv $file /tmp/fifidone五、簡述raid0 raid1 raid5 三種工作模式的工作原理及特點。
RAID 0:連續以位或字節為單位分割數據,并行讀/寫于多個磁盤上,因此具有很高的數據
傳輸率,但它沒有數據冗余,因此并不能算是真正的RAID 結構。RAID 0 只是單純地提高
性能,并沒有為數據的可靠性提供保證,而且其中的一個磁盤失效將影響到所有數據。因此,
RAID 0 不能應用于數據安全性要求高的場合。
RAID 1:它是通過磁盤數據鏡像實現數據冗余,在成對的獨立磁盤上產生互為備份的數據。
當原始數據繁忙時,可直接從鏡像拷貝中讀取數據,因此RAID 1 可以提高讀取性能。RAID
1 是磁盤陣列中單位成本最高的,但提供了很高的數據安全性和可用性。當一個磁盤失效時,
系統可以自動切換到鏡像磁盤上讀寫 ,而不需要重組失效的數據。簡單來說就是:鏡象結
構,類似于備份模式,一個數據被復制到兩塊硬盤上。
RAID10:高可靠性與高效磁盤結構
一個帶區結構加一個鏡象結構,因為兩種結構各有優缺點,因此可以相互補充。
主要用于容量不大,但要求速度和差錯控制的數據庫中。
RAID5:分布式奇偶校驗的獨立磁盤結構,它的奇偶校驗碼存在于所有磁盤上,任何一個
硬盤損壞,都可以根據其它硬盤上的校驗位來重建損壞的數據。支持一塊盤掉線后仍然正常
運行。
六、oracle 數據庫備份方式
物理備份:開啟網絡監聽,備份數據庫文件。
RMAN 備份:通過表空間文件在RMAN 模式對ORACLE 數據備份。
七、如何查看占用端口8080 的進程
lsof -i:8080
八、請寫出apache2.X 版本的兩種工作模式,以及各自工作原理。如何查看apache 當前
所支持的模塊,并且查看是工作在哪種模式下?
答案:
prefork(多進程,每個進程產生子進程)和worker(多進程,每個進程生成多個線程)
prefork 的工作原理是,控制進程在最初建立“StartServers”個子進程后,為了滿足
MinSpareServers 設置的需要創建一個進程,等待一秒鐘,繼續創建兩個,再等待一秒鐘, 繼續創建四個……如此按指數級增加創建的進程數,最多達到每秒32 個,直到滿足 MinSpareServers 設置的值為止。這就是預派生(prefork)的由來。這種模式可以不必 在請求到來時再產生新的進程,從而減小了系統開銷以增加性能。
worker 是2.0 版中全新的支持多線程和多進程混合模型的MPM。由于使用線程來處理,所以可以處理相對海量的請求,而系統資源的開銷要小于基于進程的服務器。但是, worker 也使用了多進程,每個進程又生成多個線程,以獲得基于進程服務器的穩定性。這 種MPM 的工作方式將是Apache 2.0 的發展趨勢。可以通過命令httpd -l 可以查看apache 當前的模塊,如果帶有worker.c 就是工作在 worker 模式下,如果有prefork.c 就是工作在prefork.c 的模式下。
九、你使用過監控軟件嗎?說說其特點
使用nagios 對服務器進行監控,其特點可實時實現手機短信、電子郵件、MSN、飛信報警。
使用cacti 對流量進行監控。
zabbix是一個基于WEB界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。zabbix能監視各種網絡參數,保證服務器系統的安全運營;并提供柔軟的通知機制以讓系統管理員快速定位/解決存在的各種問題。
十、你對現在運維工程師的理解和以及對其工作的認識
運維工程師在公司當中責任重大,需要保證時刻為公司及客戶提供最高、最快、最穩定、最
安全的服務。運維工程師的一個小小的失誤,很有可能會對公司及客戶造成重大損失,因此
運維工程師的工作需要嚴謹及富有創新精神。
十一、linux 下常用的DNS服務軟件是什么,舉出幾種常用的DNS記錄,如果域名abc.com 配置好了一臺郵件服務器,IP 地址為202.106.0.20,我該如何做相關的解析?是否了解bind 的智能解析,如果了解請簡述一下其原理
答案:
1)常用的DNS 軟件是bind
2)A 記錄 地址記錄
MX 記錄 郵件交換記錄
CNAME 記錄 別名域記錄
3)修改abc.com 域名的配置文件,增加以下記錄
IN MX 10 mail.abc.com.
mail IN A 202.106.0.20
4)bind 根據請求解析客戶端的IP 地址,做出不同的解析,其原理是在配置文件中,設定了
view,在每個view 都有客戶端的IP 地址段,bind 服務器根據請求解析客戶端的IP 地址,
匹配不同的view,再根據該view 的配置,到相應的配置文件進行查詢,將結果返回給請求
的客戶端。
十二、通過apache 訪問日志access.log 統計IP 和每個地址訪問的次數,按訪問量列出前10 名。
日志格式樣例如下
192.168.1.247 – - [02/Jul/2010:23:44:59 +0800] “GET / HTTP/1.1″ 200 19
答案:
cat access_log | awk ‘{print $1}’ | uniq -c|sort -rn|head -10
//這個別的方法也能統計,但有些命令是必要的 awk , sort,uniq ,主要看是否這些命令都 使用了。
十三、如何用mysql 命令進行備份和恢復?以test 庫為例,創建一個備份,并再用此備份進行恢復。
mysqldump -u root -p test > test.sql
mysql -u root -p test < test.sql
//主要考對方msqldump > test.sql 和 mysql < test.sql
總結
以上是生活随笔為你收集整理的常见Linux面试题总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 常见坑人无数的Redis面试题总结
- 下一篇: linux系统中查看gcc内置宏定义的命