Linux 模糊面試題
1.linux 中管道“|” 的作用?
將前一個(gè)的輸出結(jié)果,交由后面的命令處理,當(dāng)做后面命令的參數(shù)。
==========================================================
2.編譯源碼包過程介紹:
采用源碼編譯的方式安裝軟件包,有哪些基本過程、各自的作用是什么?
答:tar解包:解壓、釋放安裝包內(nèi)的文件。
.configgure 配置:針對(duì)當(dāng)前系統(tǒng)環(huán)境指定安裝目錄、選擇功能等設(shè)置。
Make編譯:將源代碼編譯成二進(jìn)制的可執(zhí)行程序、庫文件扥數(shù)據(jù)。
Make install:將編譯好的程序文件、配置文檔等復(fù)制到對(duì)應(yīng)的安裝目錄。
==========================================================
3.Linux 目錄結(jié)構(gòu)介紹:
Linux 系統(tǒng)的根目錄下主要包括哪些文件夾,各自的作用是什么?
/boot? 存放Linux內(nèi)核、引導(dǎo)配置等啟動(dòng)文件
/bin? ? 存放最基本的用戶命令,普通用戶有權(quán)限執(zhí)行。
/dev? ? 存放硬盤、鍵盤、鼠標(biāo)、光驅(qū)等各種設(shè)備文件。
/etc? ? 存放各種配置文件、配置目錄
/home? 存放普通用戶的默認(rèn)工作文件夾(即 宿主目錄、家目錄)
/root? Linux系統(tǒng)管理員(超級(jí)用戶)root的宿主目錄。
/sbin? 存放最基本的管理命令,一般是管理員才有權(quán)限執(zhí)行。
/usr? 存放額外安裝的應(yīng)用程序、源碼編譯文件、文檔等各種用戶資料
/var? 存放日志文件、用戶郵箱目錄、進(jìn)程運(yùn)行數(shù)據(jù)等變化的文檔。
/tmp? 存放系統(tǒng)運(yùn)行過程中使用的一些臨時(shí)文件。
================================================
4.find命令的擴(kuò)展
在Linux中find常見的選項(xiàng)都有哪些,都有什么作用?
答: -type:按照文件類型查找
? ? -name:按照文件名稱查找
? ? ? -size:按照文件大小查找
-mtime:按照內(nèi)容修改的時(shí)間
-iname:根據(jù)名稱查找,忽略大小寫
-uid:根據(jù)UId查找,屬于這個(gè)用戶的文件
-gid:根據(jù)gid查找,屬于這個(gè)組的文件
-user:根據(jù)用戶名查找,查找屬于這個(gè)用戶的
-group:根據(jù)組名查找,查找屬于這個(gè)組的
-nouser:查找這個(gè)文件不屬于任何用戶
-nogroup:查找這個(gè)文件不屬于任何組的
-maxdepth:限制目錄查找的深度
-inum:根據(jù)文件i節(jié)點(diǎn)編號(hào)查找
==========================================================
5.描述RHEL 6.X 系統(tǒng)的引導(dǎo)過程?
答:加載BIOS,檢查硬件信息
讀取并執(zhí)行第一個(gè)開機(jī)設(shè)備內(nèi)MBR
運(yùn)行g(shù)rup引導(dǎo)加載kernel
內(nèi)核啟動(dòng)/sbin/init程序
Init系統(tǒng)初始化
確定默認(rèn)的運(yùn)行級(jí)別
觸發(fā)runlevel 事件,運(yùn)行/etc/rc.d/rc
最后執(zhí)行/etc/rc.d/rc.local
加載終端或X-Window接口
===================================================
6.SSH協(xié)議簡(jiǎn)介
OpenSSH 服務(wù)器使用的協(xié)議、默認(rèn)端口、主配置文件分別是什么?SSH與Telnet應(yīng)用的區(qū)別在哪里?
答:OpenSSH使用TCP協(xié)議,默認(rèn)端口是22,配置文件/etc/ssh/sshd_config.
SSH 的英文全稱是Secure Shell,即安全外殼,SSH會(huì)把傳輸過程中的數(shù)據(jù)加密,且支持壓縮以提高傳輸速度,而Telnet在網(wǎng)絡(luò)上以明文傳送口令和數(shù)據(jù),安全級(jí)別低,容易受攻擊。
==========================================================
7.Linux 常見的系統(tǒng)日志文件都有哪些,各自的用途?
答:/var/log/messages 內(nèi)核及公共消息日志
/var/log/cron 計(jì)劃任務(wù)日志
/var/log/dmesg 系統(tǒng)引導(dǎo)日志
/var/log/maillog 郵件系統(tǒng)日志
/var/log/secure 記錄與訪問限制相關(guān)日志
================================================
8.常見的Linux開機(jī)設(shè)置文件
/etc/fatab: 實(shí)現(xiàn)開機(jī)自動(dòng)掛載設(shè)備的配置文件
/etc/initab:定義開機(jī)進(jìn)入默認(rèn)級(jí)別的配置文件
/etc/rc.local: 定義開機(jī)自定義任務(wù)的配置文件
==========================================================
9.FTP協(xié)議簡(jiǎn)介:
FTP服務(wù)器在傳輸層使用的協(xié)議,默認(rèn)端口、FTP主目錄絕對(duì)路徑?
答:
FTP服務(wù)器在傳輸層使用的協(xié)議是tcp
默認(rèn)端口:21
FTP主目錄絕對(duì)路徑:/var/ftp
==========================================================
10.Suid,sgid,sticky bit的作用?
Suid: 以屬主的身份運(yùn)行程序
Sgid:在目錄中創(chuàng)建的文件繼承所在目錄的屬主
Stricky bit :用戶只能修改,刪除自己的文件
==========================================================
11.描述Linux系統(tǒng)優(yōu)化的12個(gè)步驟:
(1)登錄系統(tǒng):不使用root登錄,通過sudo授權(quán)管理,使用普通用戶登錄。
(2)禁止SSH遠(yuǎn)程:更改默認(rèn)的遠(yuǎn)程連接SSH服務(wù)及禁止root遠(yuǎn)程連接。
(3)時(shí)間同步:定時(shí)自動(dòng)更新服務(wù)器時(shí)間。
(4)配置yum更新源,從國(guó)內(nèi)更新下載安裝rpm包。
(5)關(guān)閉selinux及iptables(iptables 工作場(chǎng)景如有wan ip,一般需要打開,高并發(fā)除外)。
(6)調(diào)整文件描述符數(shù)量,進(jìn)程及文件的打開都會(huì)消耗文件描述符。
(7)定時(shí)自動(dòng)清理/var/spool/clientmquene/目錄垃圾文件,防止節(jié)點(diǎn)被占滿(C6.4 默認(rèn)沒有sendmail,因此可以不配)。
(8)精簡(jiǎn)開機(jī)啟動(dòng)服務(wù)(crond、sshd、network、rsyslog)
(9)Linux內(nèi)核參數(shù)優(yōu)化/etc/sysctl.conf,執(zhí)行sysct -p 生效
(10)更改字符集,支持中文,但是還是建議使用英文,防止亂碼問題出現(xiàn)。
(11)鎖定關(guān)鍵系統(tǒng)文件(chattr +i? /etc/passwd? / etc/shadow /etc/group /etc/gshadow? /etc/inittab 處理以上內(nèi)容后,把chatter改名,就更安全了)
(12)清空/etc/issue,去除系統(tǒng)及內(nèi)核版本登錄前的屏幕顯示。
==========================================================
12.描述Linux運(yùn)行級(jí)別0-6的各自含義:
0:關(guān)機(jī)模式
1:?jiǎn)斡脩裟J?lt;==破解root 密碼
2:無網(wǎng)絡(luò)支持的多用戶模式
3:有網(wǎng)絡(luò)支持的多用戶模式(文本模式,工作中最常用的模式)
4:保留,未使用
5:有網(wǎng)絡(luò)支持的X-window 支持多用戶模式(桌面)
6:重新引導(dǎo)系統(tǒng),即重啟。
==========================================================
13.描述Linux下軟連接和硬鏈接的區(qū)別:
在Linux系統(tǒng)中,鏈接有兩種,一種是硬鏈接(Hard link),另一種稱為符合鏈接或者軟連接(Symboilc Link ).
1)默認(rèn)不帶參數(shù)的情況下,ln 創(chuàng)建的是硬鏈接,帶-s參數(shù)的ln命令創(chuàng)建的是軟連接。
2)硬鏈接文件與源文件的inode節(jié)點(diǎn)相同,而軟連接文件的inode節(jié)點(diǎn)號(hào),與源文件不同。
3)Ln命令不能對(duì)目錄創(chuàng)建硬鏈接,但可以創(chuàng)建軟連接,對(duì)目錄的軟連接會(huì)經(jīng)常使用到。
4)刪除文件的硬鏈接文件,對(duì)源文件及軟連接文件沒有任何影響。
5)刪除文件的硬鏈接文件,對(duì)源文件及軟連接文件無任何影響。
6)刪除連接文件的源文件,對(duì)硬鏈接文件無影響,會(huì)導(dǎo)致其軟連接失效(紅底白字閃爍狀)
7)同時(shí)刪除源文件及其硬鏈接文件,整個(gè)文件會(huì)被真正的刪除。
8)很多硬件設(shè)備的快照功能,使用的就是類似硬鏈接的原理。
9)軟連接可以跨文件系統(tǒng),硬鏈接不可以跨文件系統(tǒng)。
===========================================================
14.生產(chǎn)場(chǎng)景如何對(duì)Linux系統(tǒng)進(jìn)行合理規(guī)劃分區(qū)?
分區(qū)的根本原則就是簡(jiǎn)單,易用,方便批量管理
根據(jù)角色定位建議如下:
1)單機(jī)服務(wù)器:如8G內(nèi)存,300G硬盤
分區(qū): /boot? 100-200M, swap 16G ,內(nèi)存大小 8G*2, /? 80G,?
/var 20G(可以不分), /data 180G(存放web及db數(shù)據(jù))
優(yōu)點(diǎn):數(shù)據(jù)盤和系統(tǒng)盤分開,有利于出問題時(shí)維護(hù)。
RAID方案:視數(shù)據(jù)及性能要求,一般可采用raid5 折中。
========================================================
2)負(fù)載均衡(如LVS等)
分區(qū): /boot 100-200M , swap 內(nèi)存的1.5倍, /? 。
優(yōu)點(diǎn):簡(jiǎn)單方便,只做轉(zhuǎn)發(fā)數(shù)據(jù)量很少。
RAID方案:數(shù)據(jù)量小,重要性高,可采用RAID1
3)負(fù)載均衡下的RS server
分區(qū):/boot 100-200M ,swap 內(nèi)存的1.5倍,? / 。
優(yōu)點(diǎn):簡(jiǎn)單方便,因?yàn)橛卸鄼C(jī)對(duì)數(shù)據(jù)要求低。
RAID方案:數(shù)據(jù)量大,重要性不高,有性能要求,數(shù)據(jù)要求低,可采用RAID 0。
===========================================================
4)數(shù)據(jù)庫服務(wù)器mysql及oracle 如16/32G內(nèi)存
分區(qū):/boot 100-200M ,swap 16G , 內(nèi)存的1倍, /? 100G,
/data 剩余(存放db數(shù)據(jù))。
優(yōu)點(diǎn):數(shù)據(jù)盤和系統(tǒng)盤分開,有利于出問題時(shí)維護(hù),及保持?jǐn)?shù)據(jù)完整。
RAID方案:視數(shù)據(jù)及性能要求主宰可采用raid10/raid5,從庫可采用raid 0 提高性能(讀取分離的情況下。)
5)存儲(chǔ)服務(wù)器:
分區(qū):/boot 100-200M,swap 內(nèi)存的1.5倍,/ 100G , /data(存放數(shù)據(jù))
優(yōu)點(diǎn):次服務(wù)器不要分區(qū)太多,只做備份,性能要求低,容量要大。
RAID方案:可采用SATA盤,raid5。
6)共享存儲(chǔ)服務(wù)器(如NFS)
分區(qū):/boot 100-200M,swap 內(nèi)存的1.5倍,/ 100G , /data(存放數(shù)據(jù))
優(yōu)點(diǎn):次服務(wù)器不要分區(qū)太多,NFS共享比存儲(chǔ)多的要求就是性能要求。
RAID方案:視性能及訪問要求可以raid 5,raid10,甚至raid 0(要求高可用或者雙寫方案)。
7)監(jiān)控服務(wù)器cacti,nagios :
分區(qū):/boot 100-200M,swap 內(nèi)存的1-2倍, / 。
優(yōu)點(diǎn):重要性一般,數(shù)據(jù)要求也一般。
RAID方案:?jiǎn)伪P或雙盤raid1 即可。三盤就是RAID5,看容量要求加盤即可。
==========================================================
15.描述Linux下文件刪除的原理:
Linux系統(tǒng)是通過link的數(shù)量來控制文件刪除的,只有當(dāng)一個(gè)文件不存在任何link的時(shí)候,這個(gè)文件才會(huì)被刪除。一般來說每個(gè)文件兩個(gè)link計(jì)數(shù)器來控制i_ciunt和i_nlink.當(dāng)一個(gè)文件被一個(gè)程序占用的時(shí)候i_count 就加1。當(dāng)文件的硬鏈接多一個(gè)的時(shí)候i_nlink也加1。刪除一個(gè)文件,就是讓這個(gè)文件,沒有進(jìn)程占用,同時(shí)i_link數(shù)量為0。
==========================================================
16.描述Vi編譯器的使用:
1)vi編譯器是linux系統(tǒng)下最基本和最常用的標(biāo)準(zhǔn)文本編譯器。
2)Vi編譯器有三種工作模式:普通、編譯、命令。
3)普通模式下的鍵盤輸入任何字符都是當(dāng)作命令來執(zhí)行的,也可以輸入命令進(jìn)行光標(biāo)的移動(dòng),字符、單詞、行的復(fù)制、粘貼以及刪除等操作。
4)編譯模式主要用于文本的輸入。在該模式下,用戶輸入的任何字符都被作為文本的內(nèi)容保存起來。
5)命令模式下,用戶可以對(duì)文件進(jìn)行一些如字符串的查找、替換、顯示行號(hào)等操作還是必須要進(jìn)行命令模式的。
6)在普通模式下輸入冒號(hào)即可進(jìn)入命令模式,此時(shí)vi窗口的狀態(tài)行會(huì)顯示冒號(hào),等待用戶輸入命令?!癷”插入模式,即可進(jìn)行編輯。用戶輸入完成后,按ESC鍵之后編譯器又會(huì)回到普通模式下,在命令模式下,保存退出,可以使用的命令為wq和X,前面加!表示強(qiáng)制退出,強(qiáng)制保存等。
==========================================================
17.描述下列路徑的內(nèi)容是做什么的?
/var/log/messages? ? 系統(tǒng)日志文件
/var/log/secure? ? ? 系統(tǒng)安全文件(顯示登錄信息文件)
/var/spool/clientmqueue? 例行性任何回執(zhí)郵件存放文件
/proc/interrupts? ? ? 當(dāng)前系統(tǒng)中斷報(bào)告文件
/etc/fstab? ? ? ? ? ? 開機(jī)自動(dòng)掛載磁盤的配置文件
/etc/profile? ? ? ? ? 環(huán)境變量存放的文件
========================(后續(xù)持續(xù)更新)==================================