Linux 運維工程師面試真題-5-常考題目彙總
1.解釋下什麼是 GPL,GNU,自由軟體?
GPL:(通用公共許可證):一種授權,任何人有權取得、修改、重新發布自由軟體的權力。
GNU:(革奴計劃):目標是建立一套完全自由、開放的的作業系統。
自由軟體:是一種可以不受限制地自由使用、複製、研究、修改和分發的軟體。主要許可證
有 GPL 和 BSD 許可證兩種。
2.如何選擇 Linux 作業系統版本?
一般來講,桌面使用者首選 Ubuntu;伺服器首選 RHEL 或 CentOS,兩者中首選 CentOS。
根據具體要求:
①安全性要求較高,則選擇 Debian 或者 FreeBSD。
②需要使用資料庫高階服務和電子郵件網路應用的使用者可以選擇 SUSE。
③想要新技術新功能功能可以選擇 Feddora,Feddora 是 RHEL 和 CentOS 的一個測試版
和預釋出版本。
④根據現有狀況,絕大多數網際網路公司選擇 CentOS。現在比較常用的是 6 系列,現在市場
佔有大概一半左右。另外的原因是 CentOS 更側重伺服器領域,並且無版權約束。
3.初學者在 Linux 系統的開機啟動項如何選擇?
建議選擇五個開機啟動項:
①.crond: 該服務用於週期地執行系統及使用者配置的計劃任務。有要週期性執行的任務計
劃需要開啟,此服務是生產場景必須要用的一個軟體。
②.iptables: iptables 包過濾防火牆,有外網 IP 時,考慮開啟。
③.network: 啟動系統時,若想啟用/關閉啟動時的各個網路介面,則應(必須)考慮開
啟。
④.sshd: 遠端連線 Linux 伺服器時需要用到這個服務程式,所以必須要開啟,否則將無法
遠端連線到 Linux 伺服器。
⑤.rsyslog: 是作業系統提供的一種機制,系統的守護程式通常會使用 rsyslog 將各種資訊
收集寫入到系統日誌檔案中,CentOS6 以前此服務的名字為 syslog。
⑥.sysstat: 是一個軟體包,包含監測系統效能及效率的一組工具,這些工具對於 Linux 系
統效能資料很有幫助,比如 CPU 使用率、硬碟和網路吞吐資料等,這些資料的分析,有利
於判斷系統執行是否正常,所以它是提高系統執行效率、安全執行服務的助手。
4.請描述 Linux 系統最佳化的 12 個步驟。
⑴登入系統:不使用 root 登入,透過 sudo 授權管理,使用普通使用者登入。
⑵禁止 SSH 遠端:更改預設的遠端連線 SSH 服務及禁止 root 遠端連線。
⑶時間同步:定時自動更新伺服器時間。
⑷配置 yum 更新源,從國內更新下載安裝 rpm 包。
400-080-6560
⑸關閉 selinux 及 iptables(iptables 工作場景如有 wan ip,一般要開啟,高併發除外)
⑹調整檔案描述符數量,程序及檔案的開啟都會消耗檔案描述符。
⑺定時自動清理/var/spool/clientmquene/目錄垃圾檔案,防止節點被佔滿(c6.4 預設沒
有 sendmail,因此可以不配。)
⑻精簡開機啟動服務(crond、sshd、network、rsyslog)
⑼Linux 核心引數最佳化/etc/sysctl.conf,執行 sysct -p 生效。
更改字符集,支援中文,但是還是建議使用英文,防止亂碼問題出現。
⑾鎖定關鍵系統檔案
(chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab 處理以
上內容後,把 chatter 改名,就更安全了。)
⑿清空/etc/issue,去除系統及核心版本登陸前的螢幕顯示。
5.描述 Linux 執行級別 0-6 的各自含義
0:關機模式
1:單使用者模式<==破解 root 密碼
2:無網路支援的多使用者模式
3:有網路支援的多使用者模式(文字模式,工作中最常用的模式)
4:保留,未使用
5:有網路支援的 X-windows 支援多使用者模式(桌面)
400-080-6560
6: 重新引導系統,即重啟
6.描述 Linux 系統從開機到登陸介面的啟動過程
⑴開機 BIOS 自檢,載入硬碟。
⑵讀取 MBR,MBR 引導。
⑶grub 引導選單(Boot Loader)。
⑷載入核心 kernel。
⑸啟動 init 程序,依據 inittab 檔案設定執行級別
⑹init 程序,執行 rc.sysinit 檔案。
⑺啟動核心模組,執行不同級別的指令碼程式。
⑻執行/etc/rc.d/rc.local
⑼啟動 mingetty,進入系統登陸介面。
7.描述 Linux 下軟連結和硬連結的區別
在 Linux 系統中,連結分為兩種,一種是硬連結(Hard link),另一種稱為符號連結或軟
連結(Symbolic Link)。
①預設不帶引數的情況下,ln 建立的是硬連結,帶-s 引數的 ln 命令建立的是軟連結。
②硬連結檔案與原始檔的 inode 節點號相同,而軟連結檔案的 inode 節點號,與原始檔不
同,
③ln 命令不能對目錄建立硬連結,但可以建立軟連結。對目錄的軟連結會經常使用到。
400-080-6560
④刪除軟連結檔案,對原始檔和硬連結檔案無任何影響。
⑤刪除檔案的硬連結檔案,對原始檔及軟連結檔案無任何影響。
⑥刪除連結檔案的原始檔,對硬連結檔案無影響,會導致其軟連結失效(紅底白字閃爍狀)。
⑦同時刪除原始檔及其硬連結檔案,整個檔案才會被真正的刪除。
⑧很多硬體裝置的快照功能,使用的就是類似硬連結的原理。
⑨軟連結可以跨檔案系統,硬連結不可以跨檔案系統。
8.生產場景如何對 linux 系統進行合理規劃分割槽?
分割槽的根本原則是簡單、易用、方便批次管理。根據伺服器角色定位建議如下:
①單機伺服器:如 8G 記憶體,300G 硬碟
分割槽: /boot 100-200M,swap 16G,記憶體大小 8G*2,/ 80G,/var 20G(也可不分),
/data 180G(存放 web 及 db 資料)
優點:資料盤和系統盤分開,有利於出問題時維護。
RAID 方案:視資料及效能要求,一般可採用 raid5 折中。
②負載均衡器(如 LVS 等)
分割槽:/boot 100-200M,swap 記憶體的 1-2 倍,/ ,
優點:簡單方便,只做轉發資料量很少。
RAID 方案:資料量小,重要性高,可採用 RAID1
③負載均衡下的 RS server
400-080-6560
分割槽: /boot 100-200M,swap 記憶體的 1-2 倍,/
優點:簡單方便,因為有多機,對資料要求低。
RAID 方案:資料量大,重要性不高,有效能要求,資料要求低,可採用 RAID0
④資料庫伺服器 mysql 及 oracle 如 16/32G 記憶體
分割槽:/boot 100-200M,swap 16G,記憶體的 1 倍,/ 100G,/data 剩餘(存放 db 資料)
優點:資料盤和系統盤分開,有利於出問題時維護,及保持資料完整。
RAID 方案:視資料及效能要求主庫可採取 raid10/raid5,從庫可採用 raid0 提高效能(讀
寫分離的情況下。)
⑤儲存伺服器
分割槽:/boot 100-200M,swap 記憶體的 1-2 倍,/ 100G,/data(存放資料)
優點:此伺服器不要分割槽太多。只做備份,效能要求低。容量要大。
RAID 方案:可採取 sata 盤,raid5
⑥共享儲存伺服器(如 NFS)
分割槽:/boot 100-200M,swap 記憶體的 1-2 倍,/ 100G,/data(存放資料)
優點:此伺服器不要分割槽太多。NFS 共享比儲存多的要求就是效能要求。
RAID 方案:視效能及訪問要求可以 raid5,raid10,甚至 raid0(要有高可用或雙寫方案)
⑦監控伺服器 cacti,nagios
分割槽:/boot 100-200M,swap 記憶體的 1-2 倍,/
400-080-6560
優點:重要性一般,資料要求也一般。
RAID 方案:單盤或雙盤 raid1 即可。三盤就 RAID5,看容量要求加盤即可。
9.描述 Linux 下檔案刪除的原理
Linux 系統是透過 link 的數量來控制檔案刪除的,只有當一個檔案不存在任何 link 的時候,
這個檔案才會被刪除。一般來說每個檔案兩個 link 計數器來控制 i_count 和 i_nlink。當一
個檔案被一個程式佔用的時候 i_count 就加 1。當檔案的硬連結多一個的時候 i_nlink 也加
1。刪除一個檔案,就是讓這個檔案,沒有程序佔用,同時 i_link 數量為 0。
10.請簡單描述 VI 編輯器的使用
①vi 編輯器是 linux 系統下最最基本和最常用的標準文字編輯器。
②vi 編輯器有三種工作模式:普通模式、編輯模式、命令模式。
③普通模式下的鍵盤輸入任何字元都是當作命令來執行的,也可以輸入命令進行游標的移動,
字元、單詞、行的複製、粘帖以及刪除等操作。
④編輯模式主要用於文字的輸入。在該模式下,使用者輸入的任何字元都被作為檔案的內容保
存起來。
⑤命令模式下,使用者可以對檔案進行一些如字串查詢、替換、顯示行號等操作還是必須要
進入命令模式的。
⑥在普通模式下輸入冒號即可進入命令模式,此時 vi 視窗的狀態行會顯示出冒號,等待用
戶輸入命令。“i”插入模式,即可以進行編輯。使用者輸入完成後,按【Esc】之後編輯器又
400-080-6560
返回到普通模式下,在命令模式下,儲存退出,可以使用的命令為 wq 和 x。前面加!表示
強制退出,強制儲存等。
11.請簡單說出使用者管理的相關命令及用途
#組管理命令
groupadd #新增組
groupdel #刪除使用者組
groupmod #修改使用者組
groups #顯示當前使用者所屬的使用者組
grpck #檢查使用者組及密碼檔案的完整性(etc/group 以及/etc/gshadow 檔案)
grpconv #透過/etc/group 和/etc/gshadow 的檔案內容來同步或建立/etc/gshadow ,
如果/etc/gshadow 不存在則建立;
grpunconv #透過/etc/group 和/etc/gshadow 檔案內容來同步或建立/etc/group ,然後
刪除 gshadow 檔案 。
#使用者管理命令
useradd #新增使用者
adduser #新增使用者
passwd #為使用者設定密碼
usermod #修改使用者命令,可以透過 usermod 來修改登入名、使用者的家目錄等等
400-080-6560
pwcov #同步使用者從/etc/passwd 到/etc/shadow
pwck #pwck 是校驗使用者配置檔案/etc/passwd 和/etc/shadow 檔案內容是否合法或完
整
pwunconv #執行pwunconv指令可以關閉使用者投影密碼,它會把密碼從shadow檔案內,
重回存到 passwd 檔案裡。
finger #檢視使用者資訊工具(危險命令,一般不用)
id #檢視使用者的 UID、GID 及所歸屬的使用者組
chfn #更改使用者資訊工具
su #使用者切換工具
12.請簡述基礎正規表示式 grep 高階引數的使用
常用引數:
-v 排除匹配內容,
-e 支援擴充套件的正規表示式,
-i 忽略大小寫,
-o 輸出匹配的內容(只是一塊,不是行),
–color=auto 匹配內容顯示顏色,
-n 在行首顯示行號。
特殊字元注意事項:
400-080-6560
^(尖括號)word :表示搜尋以 word 開頭的內容。
word$ 表示搜尋以 word 結尾的內容。
^$ 表示的是空行,不是空格。
. 代表且只能代表任意一個字元。非正規表示式其他功能(當前目錄,載入檔案)
\ 跳脫字元,讓有著特殊身份意義的字元,脫掉馬甲,還原原型。例如.只表示原始小數
點意義。
* 表示重複 0 個或多個前面的一個字元。不代表所有。
.* 表示匹配所有的字元。^.*表示以任意字元開頭。
[任意字元如 abc] 匹配字符集內任意一個字元[a-z]。
[^abc] ^在中括號裡面是非的意思,不包含之意。意思就是不包含 a 或 b 或 c 的行。
{n,m} 表示重複 n 到 m 次前一個字元。{n}至少 n 次,多了不限。{n}N 次,{,m}
至多 m 次,少了不限。
注:使用 grep 或 sed 要對{}轉義。即\{\}.egrep 就不需要轉義了。
13.請簡述基礎正規表示式 sed 高階引數的使用
解答:
-n 取消預設輸出
-p 列印
-d 刪除
400-080-6560
-e 允許多項編輯
sed 取行,要特別注意 sed -n ‘s###g’ filename 的使用,sed 的( )的功能可以記住正
則表示式的一部分,其中,\1 為第一個記住的模式即第一個小括號中的匹配內容,\2 第二
記住的模式,即第二個小括號中的匹配內容,sed 最多可以記住 9 個。
實際字元的選取最好要唯一,正規表示式是貪婪的,總是儘可能的匹配更遠的符合匹配的內
容。另外注意字串中的空格。
14.請給出檢視當前哪些使用者線上的 Linux 命令
w #顯示目前系統登入使用者
who #顯示目前已登入使用者資訊
last #列出目前與過去登入系統的使用者相關資訊
lastlog #檢查某特定使用者上次登入時間
whoami #列印與當前生效的使用者 ID 關聯的使用者名稱
finger #使用者資訊查詢程式
id #顯示指定使用者或當前使用者的使用者與組資訊
15.請你描述下 crontab 的作用和語法,以及書寫定時任務注意的要點。
設定 crontab 後我們可以使得 Linux 主動執行的在固定的間隔時間,執行指定的系統指令
或 shell script 指令碼。生產環境可以用來日誌分析或生產備份等。
語法格式:
400-080-6560
crontab [ -u user ] file ===》-u 的意思就是指定使用者
crontab [ -u user ] { -l 顯示檔案內容| -r全部刪除crontab檔案 | -e 編輯crontab檔案| -i
刪除 crontab 檔案前確認提示}
舉例:
*/5 10,12 * 3-8 * * /usr/sbin/ntpdate 10.0.0.155 >/dev/null 2>&1
前五段是時間間隔的設定,單位分別是分鐘、小時、日、月、周(儘量避免使用日月和周同
時出現,以免造成系統誤判)。
第一個時間段 分鐘 範圍 0-59
第二個時間段 小時 範圍 0-23
第三個世間段 日 範圍 1-31
第四個時間段 月 範圍 1-12
第五個時間段 周 範圍 0-7
*星號代表任何時間都接受命令
,逗號,表示隔開。代表分隔的時間都適用此命令。
– 減號,兩個時間段之間,代表在此時間段內執行定時任務。
/n 斜線和 n(數字)表示每隔 n 段時間執行一次。
注意要點分為:書寫基本要領與書寫注意事項
7 個基本要領:
400-080-6560
第一、為定時任務規則加必要的註釋
第二、定時任務命令或程式最好寫到指令碼里執行
第三、定時任務執行的指令碼要規範路徑,如:/server/scripts
第四、執行 shell 指令碼任務時前加/bin/sh
執行定時任務時,如果是執行指令碼,儘量在指令碼前面帶上/bin/sh 命名
第五、定時任務結尾加 >/dev/null 2>&1
第六、/dev/null 為特殊的字元裝置檔案,表示黑洞裝置或空裝置。
第七、有關重定向的說明
>或 1> 輸出重定向:把前面輸出的東西輸入到後邊的檔案中,會刪除檔案原有內容。
>>或 1>> 追加重定向:把前面輸出的東西追加到後邊的檔案中,不會刪除檔案原有內容。
<或<0 輸入重定向:輸入重定向用於改變命令的輸入,指定輸入內容,後跟檔名。
<<或<<0 輸入重定向:後跟字串,用來表示“輸入結束”,也可用 ctrl+d 來結束輸入。
2> 錯誤重定向:把錯誤資訊輸入到後邊的檔案中,會刪除檔案原有內容。
2>> 錯誤追加重定向:把錯誤資訊追加到後邊的檔案中,不會刪除檔案原有內容。
標準輸入(stdin):程式碼為 0,使用<或<<。
標準輸出(stdout):程式碼為 1,使用>或>>。正常的輸出。
標準錯誤輸出(sederr):程式碼為 2,使用 2>或 2>>。
400-080-6560
特殊:
2>&1 就是把標準錯誤重定向到標準輸出(>&)。
>/dev/null 2>&1 等價於 1>/dev/null 2>/dev/null
16.請列出 Linux 中你認為重要的資料夾及包含內容
① /目錄下的資料夾裡面分別是以下內容:
/usr 包含所有的命令和程式庫、文件和其他檔案及當前 linux 發行版的主要應用程式
/var 包含正在操作的檔案,還有記錄檔案、加密檔案、臨時檔案等
/home 除了 root 使用者外的所有使用者的配置檔案,個性化檔案和主目錄,即家目錄
/proc 虛擬目錄,該目錄實際上指向記憶體而不是硬碟
/bin 系統執行檔案(二進位制檔案)普通使用者可以使用
/sbin 系統執行檔案(二進位制檔案)不能被普通使用者使用,通常由 root 使用者使用
/etc 作業系統的配置檔案
/root root 使用者的家目錄
/dev 系統裝置檔案,linux 所有裝置都是以檔案的形式被處理,該目錄不包含驅動程式
/lib 程式和核心模組共享庫(僅限於/下的程式)
/boot 系統引導、啟動檔案,通常 grub 也在這裡
/opt 可選應用程式目錄
400-080-6560
/tmp 臨時檔案,系統會自動清理
/lost+found 恢復檔案(類似回收站)
/media 所有的磁碟(有時有光碟)將以資料夾的形式掛載,光碟映象也可以掛載
/cd-rom 掛載光碟的地方
② /usr 目錄下的檔案比較重要,其作用下面分類列出:
/usr/X11 X-windows 桌面環境
/usr/doc linux 系統的文件資料
/usr/share 獨立於當前計算機的資料結構,如字典中的詞
/usr/bin 類似/bin 但是不參與啟動,大部分命令都在這裡
/usr/local 本地管理員安裝的應用程式
/usr/local/bin 使用者安裝的應用程式(部分)
③ /proc 目錄的內容
/proc/cpuinfo 處理器的資訊
/proc/devices 當前執行核心的所有裝置清單
/proc/dma 當前正在使用中的 DMA 通道
/proc/filesystem 當前執行核心所配置的檔案系統
/proc/interrupts 當前使用的中斷和曾經有多少箇中斷
400-080-6560
/proc/ioports 正在使用的 I/O 埠
17.給出正確的關機和重啟伺服器的命令
⑴shutdown
[-t] 指定在多長時間之後關閉系統
[-r] 重啟系統
[-k] 並不真正關機,只是給每個登入使用者傳送警告訊號
[-h] 關閉系統(halt)
⑵halt
halt 是最簡單的關機命令,其實際上是呼叫 shutdown -h 命令。halt 執行時,殺死應用進
程,檔案系統寫操作完成後就會停止核心。
halt 命令的部分引數如下:
[-f] 沒有呼叫 shutdown 而強制關機或重啟
[-i] 關機或重新啟動之前,關掉所有的網路介面
[-p] 關機時呼叫 poweroff,此選項為預設選項
⑶reboot
reboot 工作過程與 halt 類似,作用是重新啟動,而 halt 是關機。其引數與 halt 類似。
⑷init
400-080-6560
400-080-6560
init 是所有程序的祖先,其程序號始終為 1。init 用於切換系統的執行級別,切換的工作是
立即完成的。init 0 命令用於立即將系統執行級別切換為 0,即關機;init 6 命令用於將系
統執行級別切換為 6,即重新啟動。
18.請簡述修改/etc/sudoers 配置檔案的注意事項
①別名的名稱可以包含大寫字母。數字、下劃線。如果是字母必須要大寫,(別名為一群擁
有相同屬性的集合)。
②一個別名下面可以有多個成員,成員間透過半形(,)逗號隔開。成員必須有效實際存在。
別名成員受別名型別 Host_Alias、User_Alias、Runas_Alias、Cmnd_Alias 制約,定義什
麼型別的別名,就要有相什麼型別的成員匹配。
③使用者組前面必須加%號。命令別名下的成員必須是檔案或目錄的絕對路徑。
④指定切換使用者要用()括號括起來,如果省略,則預設 root 使用者,如果括號裡是 ALL,
則代表能切換到所有使用者。
⑤命令路徑要使用全路徑。
⑥別名規則每行算一個規則,一行容不下時用\續行。另外超過一行,用反斜線換行。
⑦一般不建議先給 all 許可權,後面排除。用什麼許可權,就給什麼許可權。(注意許可權,語法)。
如果不需要密碼直接執行命令的應該加 NOPASSWD 引數。
⑧禁止某類程式或命令執行,要在命令動作前面加上“!”號,並放在允許執行命令之後。
19.請描述如何實現 linux 系統集權分治的許可權分級精細管理?
400-080-6560
① 收集以及制定使用者和許可權的匹配資訊,原則是給於最小許可權,但是又能完成所承擔的工
作職責。
② 各個使用者組設定對應許可權,用什麼給什麼,精細到每一條指令上根據分組情況。
③ 建立規劃許可權分組的使用者.新增相關使用者組。並修改 etc/sudoers 配置檔案。
④ 增加 sudo 的許可權開放,確定相關使用者加入如 soduers 許可權列表,並詳細設定所開放權
限內容,並選擇是否需要密碼的相關執行許可權開放。(注意 ALL 許可權,以及密碼修改許可權設
置)。
⑤ 不建議先給 all 許可權,後面排除。建議使用白名單。
⑥實戰除錯測試相關許可權是否正確配置完成。
⑦編寫操作說明,及相關注意事項。
⑧除錯完畢,郵件周知所有相關人員系統許可權設定生效,並附帶操作說明及相關注意事項。
20.請寫出下面 Linux SecureCRT 命令列快捷鍵命令的功能?
Ctrl + a 游標到開頭
Ctrl + c 中斷當前程式
Ctrl + d 退出當前視窗或當前使用者
Ctrl + e 游標到結尾
Ctrl + l 清屏 相當與 clear
Ctrl + u 剪下、刪除(游標以前的)內容
Ctrl + k 剪下、刪除(游標以後的)內容
Ctrl + r 查詢(最近用過的命令)
tab 所有路徑以及補全命令
Ctrl+shift+c 命令列復制內容
Ctrl+shift+v 命令列貼上內容
Ctrl + q 取消螢幕鎖定
Ctrl + s 執行螢幕鎖定
21.請描述伺服器賬戶日誌審計的 5 種解決方案。
⑴透過環境變數 syslog 對全部全部日誌進行審計(資訊量太大,不推薦)
⑵sudo 配合 syslog 服務,進行 sudo 操作日誌進行審計(資訊較少,效果不錯)
⑶在 bash 直譯器嵌入一個監視器,讓所有使用者使用修改過的 bash 程式,作為解釋程式。
⑷齊治的堡壘機(商業產品)。
22.如果一臺辦公室內主機無法上網(打不開網站),請給出你的排查步驟?
①首先確定物理鏈路是否聯通正常。
②檢視本機 IP,路由,DNS 的設定情況是否達標。
③telnet 檢查伺服器的 WEB 有沒有開啟以及防火牆是否阻攔。
④ping 一下閘道器,進行最基礎的檢查,通了,表示能夠到達伺服器。
400-080-6560
⑤測試到閘道器或路由器的通常情況,先測閘道器,然後再測路由器一級一級的測試。
⑥測試 ping 公網 ip 的通常情況(記住幾個外部 IP),
⑦測試 DNS 的通暢。ping 出對應 IP。
⑧透過以上檢查後,還在網管的路由器上進行檢查。
23.描述 Linux shell 中單引號、雙引號及不加引號的簡單區別
單引號:所見即所得,即將單引號內的內容原樣輸出,或者描述為單引號裡面看到的是什麼
就輸出什麼。
雙引號:把雙引號裡面的內容給輸出出來,如果內容中有命令、變數等,會先把,變來那個、
命令解析出結果,然後輸出最終內容。
雙引號內的命令或者變數寫法’命令或變數’或$(命令或變數)
無引號:把內容輸出出來,可能不會鍵含有空格的字串,視為一個整體輸出,如果內容中
有命令、變數等,會先把變數、命令解析出來,然後輸出最終內容,如果字串中帶有空格
等特殊字元,則不能完整輸出,需要改加雙引號。一般連續的字串,數字,路徑等可以用,
不過最好用雙引號,替代之。
24.請簡述 Linux 啟動過程中幾個重要配置檔案的執行過程
Linux 登入後,配置執行順序為(Debian Serials Capable):
/etc/environment -> /etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) ->
~/.bashrc -> /etc/bashrc -> ~/.bash_logout
關於各個檔案的作用說明:
400-080-6560
(1)/etc/environment:此配置檔案設定基本的 PATH 變數,及系統當前語言變數,雖
然比較短,但卻在系統啟動中佔據舉足輕重的作用,比如如下是我的系統中的內容:
(2)/etc/profile: 此檔案為系統的每個使用者設定環境資訊,當使用者第一次登入時,該檔案被
執行. 並從/etc/profile.d 目錄的配置檔案中搜集 shell 的設定。
(3)/etc/bash.bashrc: 為每一個執行 bash shell 的使用者執行此檔案.當 bash shell 被開啟
時,該檔案被讀取。
(4)~/.bash_profile: 每個使用者都可使用該檔案輸入專用於自己使用的 shell 資訊,當使用者
登入時,該檔案僅僅執行一次!預設情況下,他設定一些環境變數,執行使用者的.bashrc 檔案。
(5)~/.bashrc: 該檔案包含專用於你的 bash shell 的 bash 資訊,當登入時以及每次開啟新
的 shell 時,該該檔案被讀取。
(6)~/.bash_logout: 當每次退出系統(退出 bash shell)時,執行該檔案. 另外,/etc/profile
中設定的變數(全域性)的可以作用於任何使用者,而~/.bashrc 等中設定的變數(區域性)只能繼
承 /etc/profile 中的變數,他們是”父子”關係。
(7)~/.bash_profile 是互動式、login 方式進入 bash 執行的~/.bashrc 是互動
式 non-login 方式進入 bash 執行的通常二者設定大致相同,所以通常前者會呼叫後者。
25.請描述下列路徑的內容是做什麼的?
/var/log/messages 系統日誌檔案
/var/log/secure 系統安全檔案(顯示登入資訊的檔案)
/var/spool/clientmqueue 例行性任務回執郵件存放檔案
400-080-6560
/proc/interrupts 當前系統中斷報告檔案
/etc/fstab 開機自動掛載磁碟的配置檔案
/etc/profile 環境變數存放的檔案
26.請給出 Linux 中 eth0 的 IP 地址和廣播地址的指令,需使用 cut、awk、grep、sed
指令。
第一種方法:使用 grep 和 cut 取值
第二種方法:使用 grep 和 awk(預設分隔符為空格)取值
第三種方法:使用 grep 和 awk(多分隔符)
第四種方法:使用 sed 和 awk
第五種方法:使用 grep 和 awk(多分隔符與加號+)
第六種方法:awk (分隔符及取行)
第七種方法:grep 網路卡檔案
第八種方法:head 取行 awk 分割
27.請輸出你知道的 20 個 LINUX 命令及作用
cp 複製 -a(drp),-r 複製目錄 -p 保持屬性
mv 移動檔案或目錄
mkdir 建立目錄 -p 遞迴建立目錄 mkdir /a/b/c
touch 建立檔案,
400-080-6560
cd 切換目錄(~當前使用者家目錄,-上一次的目錄)
cat 檢視檔案內容 -n 顯示行號
ls 檢視目錄下檔案,-l 長格式,-d 檢視目錄**********
rm 刪除檔案或目錄 -r 目錄 -f 強制刪除(慎用,mv,find)
find 查詢檔案或目錄 -type 型別(f,d,l,c,b),-name 名字 -exec 執行動作*****
alias 檢視及設定別名
unalias 取消別名
seq 列印序列 -s 指定分割符 -w 數字前面加 0 補齊位數
head 檢視檔案前 N 行,預設 10 行,-n 指定行數
tail 檢視檔案後 N 行,預設 10 行,-n 指定行數,-f 實時跟蹤檔案結尾的變化
sed linux 三劍客老二,檔案增刪改查,*****
pwd 列印當前工作目錄
rmdir 刪除空目錄
echo 顯示輸出
xargs (配合 find,ls)等查詢到的內容處理,-n 分組
tree -L 層數 -d 目錄
rpm -q query 查詢 -a all
uname -r 核心 -m32 位還是 64 位 -a 所有資訊, -n 主機名(hostname)
hostname 主機名
whoami 檢視當前使用者
useradd 新增使用者
400-080-6560
passwd 改密碼,–stdin 非互動設定密碼
su 切換使用者角色,-切換環境變數