Q1 Linux的開發者是誰?
A:芬蘭大學生 Linus Torvalds
Q2 Linux的常見內核版本是多少?
A:2.6.x
Q3 Linux可以運行的硬件平台有哪些?
A:Dell, IBM, HP, Oracle和VERITAS
Q4:Linux 1.0版是哪一年發行的?
A:1994年發表 Linux 正式核心 1.0
Q5 交換分區的作用是什麼?
A:用來做虛擬內存,與WINDOWS的頁面文件類似
Q6 Linux有哪些引導裝載方式?
A:常見的有GRUB LILO
Q7 Ext2 ext3文件系統用於哪一Linux版本?
A EXT2為red hat linux 7.2前常用文件系統,現行版本通常使用EXT3文件系統
Q8 卸載Linux後如何清除MBR
A:使用FDISK命令可以刪除MBR
Q9 Linux重新啟動與關機命令是什麼
A:halt命令
功能:關機
格式:halt [-n] [-w] [-d] [-f] [-i] [-p]
說明:
若系統的 runlevel 為 0 或 6 ,則關閉系統,否則以 shutdown 指令(加上 -h 參數)來取代
init 命令
功能:改變系統的運行級別
格式:init [0123456Ss]
說明:init 是所有行程(process)的父行程(parent),開機時一定會先從這個指令開始(可以用 ps -aux 看看第一個行程就是 init),並參考 /etc/inittab 檔來完成整個開機程序,共有八個執行層級(runlevel),而改變只能透過 telinit 的指令來更改
參數:
0 開機執行層級為 0 ,用來關閉系統
1 開機執行層級為 1 ,用來進行單一使用者模式(single user mode)
5 開機執行層級為 5 ,表示進入 X window 時的模式
6 開機執行層級為 6 ,用來重新開機
S 或 s 不是直接使用的,配合開機執行層級 1 時使用,當加上S 或 s 表示開機後不參考 /etc/inittab 檔235 請參照 /etc/inittab 檔案內容以及 /etc/rc.d/rc2.d,/etc/rc.d/rc3.d,/etc/rc.d/rc5.d 等目錄
reboot 命令
功能:重啟系統
格式:reboot [-n] [-w] [-d] [-f] [-i]
說明:若系統的 runlevel 為 0 或 6 ,則重新開機,否則以 shutdown 指令(加上 -r 參數)來取代
參數:
-n : 在重開機前不做將記憶體資料寫回硬盤的動作
-w : 並不會真的重開機,只是把記錄寫到 /var/log/wtmp 檔案裡
-d : 不把記錄寫到 /var/log/wtmp 檔案裡(-n 這個參數包含了 -d) -f : 強迫重開機,不呼叫 shutdown 這個指令
-i : 在重開機之前先把所有網絡相關的裝置先停止
范例:
reboot 重開機。
reboot -w 做個重開機的模擬(只有紀錄並不會真的重開機)。
shutdown 命令
功能:關閉系統
使用方式 : shutdown [-t seconds] [-rkhncfF] time [message]
說明 : shutdown 可以用來進行關機程序,並且在關機以前傳送訊息給所有使用者正在執行的程序,shutdown 也可以用來重開機。
參數 :
-t seconds : 設定在幾秒鐘之後進行關機程序
-k : 並不會真的關機,只是將警告訊息傳送給所有只用者
-r : 關機後重新開機
-h : 關機後停機
-n : 不采用正常程序來關機,用強迫的方式殺掉所有執行中的程序後自行關機
-c : 取消目前已經進行中的關機動作
-f : 關機時,不做 fcsk 動作(檢查 Linux 檔系統)
-F : 關機時,強迫進行 fsck 動作
time : 設定關機的時間
message : 傳送給所有使用者的警告訊息
Q10 常見的3種X-windows桌面環境是什麼?
A: CDE KDE GNOME
Q11 Linux文件和目錄權限是如何劃分的,Umask命令的作用和用法?
A:LINUX文件都具有4種存取權限r讀取、w寫入、x執行、-無權限。
功能:系統管理員使用umask為用戶設置默認的權限
格式:umask mode
說明:umask 022,表示文件的默認權限屏蔽為022:則新建文件夾文件權限為666-022=644
umask –S 顯示當前屏蔽碼
果你不想每次登陸修改的話,可以在`/.bash_profile加上umask 077。
Q12 如何改變文件及目錄的權限
A: 使用 chmod命令
Q13 如何改變文件的所有者
A:使用 chown命令
Q14 如何顯示磁盤分區的大小
A:使用 df du 命令
Q15 CD命令的作用和用法
A:功能:改變當前目錄
格式:cd 路徑
說明:
1)cd :回到目前登錄用戶的主目錄。
2)cd today:切換到主目錄下層的today目錄。
3)cd ..:回到上一層目錄。
4)cd /:直接切換到根目錄。
5). 代表當前目錄
6)..上一級目錄
7)ls 文件名:顯示該文件的信息
Q16 如何添加用戶?
A: 使用adduser命令
Q17 普通用戶的UID最大值是多少?
A:通常是4294967295
Q18 如何刪除文件的默認權限?
A:使用 umask777 清除文件的所有權限
Q19 文件系統的掛載與卸載方法
A:功能:掛載文件系統
格式:mount [-參數] [設備名稱] [掛載點]
說明:其中常用的參數有
-t<文件系統類型> 指定設備的文件系統類型,常見的有:
ext2 linux目前常用的文件系統
msdos MS-DOS的fat,就是fat16
vfat windows98常用的fat32
nfs 網絡文件系統
iso9660 CD-ROM光盤標准文件系統
ntfs windows NT 2000的文件系統
auto 自動檢測文件系統
-o<選項> 指定掛載文件系統時的選項。有些也可用在/etc/fstab中。常用的有
ro 以只讀方式掛載
rw 以讀寫方式掛載
nouser 使一般用戶無法掛載
user 可以讓一般用戶掛載設備
用途:卸載文件系統
語法:umount 文件系統
說明:
卸載文件系統使文件系統不可用。
Q20 LVM水水什麼?
A:LVM(Logicl Volume Manager),邏輯卷管理器,通過使用邏輯卷管理器對硬盤存儲設備進行管理,可以實現硬盤空間的動態劃分和調整。
Q21 如何查看當前用戶的系統行為?
A: 使用命令w查看當前用戶的系統行為, w root
Q22 如何查看曾經登錄系統的用戶名 ?
A:使用who命令查看當前用戶登錄情況 who -u更詳細些
Q23查看所有進程的方法是什麼?
A:ps命令
功能:查看進程狀態
格式:ps [選項]
說明:
-e/A 列出所有進程。
-u 選擇有效的用戶ID。
-p 選擇指定終端下的進程。
-C 選擇指定的文件名。
-f 列出所有詳細信息。
-l 按長格式顯示。
-j 按job格式顯示。
-x 選擇沒有控制終端的進程。
Q24 刪除進程的方法是?
A:kill命令
功能:終止進程
格式:kill [-s p][-a] PID
說明:
-s 指明發送給進程的信號。例如-9(強行終止),默認發送TERM信號。
-p 顯示進程的ID,不發送信號。
-a 終止所有進程。
0 給所有在當前進程組中的進程發送信號。
-1 給所有進程號大於1的進程發送信號。
Q25 如何查看系統開啟的端口?
A:使用 netstar命令
Q26 什麼是LVM物理卷?
A: 物理卷—–PV(Physical Volume)物理卷在邏輯卷管理中處於最底層,它可以是實際物 理硬盤上的分區,也可以是整個物理硬盤。
Q27 什麼是LVM卷組?
A: 卷組——–VG(Volumne Group)卷組建立在物理卷之上,一個卷組中至少要包括一個物理卷,在卷組建立之後可動態添加物理卷到卷組中。一個邏輯卷管理系統工程中可以只有一個卷組,也可以擁有多個卷組。
Q28 什麼是LVM邏輯卷?
A: 邏輯卷—–LV(Logical Volume)邏輯卷建立在卷組之上,卷組中的未分配空間可以用於建立新的邏輯卷,邏輯卷建立後可以動態地擴展和縮小空間。系統中的多個邏輯卷要以屬於同一個卷組,也可以屬於不同的多個卷組。
Q29 什麼是LVM物理區域?
A: 物理區域–PE(Physical Extent)物理區域是物理卷中可用於分配的最小存儲單元,物理區域的大小可根據實際情況在建立物理卷時指定。物理區域大小一旦確定將不能更改,同一卷組中的所有物理卷的物理區域大小需要一致。
Q30 什麼是LVM邏輯區域
A: 邏輯區域—LE(Logical Extent)邏輯區域是邏輯卷中可用於分配的最小存儲單元,邏輯區域的大小取決於邏輯卷所在卷組中的物理區域的大小.
Q31 什麼是LVM卷組描述區域
A: 卷組描述區域—–(Volume Group Descriptor Area)卷組描述區域存在於每個物理卷中,用於描述物理卷本身、物理卷所屬卷組、卷組中的邏輯卷及邏輯卷中物理區域的分配等所有信息,卷組描述區域是在使用pvcreate建立物理卷時建立的。
Q32 如何復制文件
A: cp /test1/file1 /test3/file2:將目錄test1下的文件file1復制到test3目錄下, 並更名為file2。
cp –ax dir1 dir2:a:是指復制指定的目錄,並包含其下的所有文件和子目錄。
x:此文件的格式變為和目的地扇區的文件系統相同的。
Q33 如何移動文件
A:mv /test1/file1 /test2/file2:將test1目錄下的file1文件復制到test2目錄下, 並更改名為file2。
mv file1 file2 將文件名file1改為file2
Q34 如何查找文件?
A:$find ~ -name “*.txt” -print #在$HOME中查.txt文件並顯示$find . -name “*.txt” -print$find . -name “[A-Z]*” -print #查以大寫字母開頭的文件$find /etc -name “host*” -print #查以host開頭的文件$find . -name “[a-z][a-z][0–9][0–9].txt” -print #查以兩個小寫字母和兩個數字開頭的txt文件$find . -perm 755 -print$find . -perm -007 -exec ls -l {} \; #查所有用戶都可讀寫執行的文件同-perm 777$find . -type d -print$find . ! -type d -print$find . -type l -print$find . -size +1000000c -print #查長度大於1Mb的文件$find . -size 100c -print # 查長度為100c的文件$find . -size +10 -print #查長度超過期作廢10塊的文件(1塊=512字節)
Q35 壓縮與解壓縮命令是什麼?
A:功能:將文件歸檔
格式:tar 參數 歸檔文件名稱 文件或目錄
說明:
壓縮一組文件為tar.gz後綴。
# tar cvf backup.tar /etc
#gzip -q backup.tar
或
# tar cvfz backup.tar.gz /etc/
釋放一個後綴為tar.gz的文件。
#gunzip backup.tar.gz
#tar xvf backup.tar
或
# tar xvfz backup.tar.gz
用一個命令完成壓縮
#tar cvf - /etc/ gzip -qc > backup.tar.gz
用一個命令完成釋放
# gunzip -c backup.tar.gz tar xvf -
解開tar.Z的文件
# tar xvfz backup.tar.Z
或
# uncompress backup.tar.Z
#tar xvf backup.tar
解開.tgz文件
#gunzip backup.tgz
壓縮和解壓縮.bz2的包
#bzip2 /etc/smb.conf
這將壓縮文件smb.conf成smb.conf.bz2
#bunzip2 /etc/smb.conf.bz2
這將在當前目錄下還原smb.conf.bz2為smb.conf
注: .bz2壓縮格式不是很常用,你可以man bzip2
Q36 如何顯示系統環境變量?
A: env命令
功能:顯示環境變量
格式:env
說明:
顯示當前環境
env
假設有一角本my_job用來下世環境變量LANG的當前位置。
在不修改LANG變量時,使用env命令執行角本my_job,如下:
env PATH=/u/testuser/jobs: $my_job
LANG=C
當在env命令中修改了LANG的值後將有:
Env LANG=C++ PATH=/u/testuser/jobs : $PATH my_job
LANG=C++
Q37 VI的三種命令模式是什麼
A:vi 做為Linux 系統中一種編輯器,它的使用方法和界面與 Unix 平台十分相似。
基本上vi可以分為三種狀態,分別是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能區分如下:
1) 命令行模式command mode)
控制屏幕光標的移動,字符、字或行的刪除,移動復制某區段及進入Insert mode下,或者到 last line mode。
2) 插入模式(Insert mode)
只有在Insert mode下,才可以做文字輸入,按「ESC」鍵可回到命令行模式。
3) 底行模式(last line mode)
將文件保存或退出vi,也可以設置編輯環境,如尋找字符串、列出行號……等。
不過一般我們在使用時把vi簡化成兩個模式,就是將底行模式(last line mode)也算入命令行模式command mode)。
Q38 vi的基本操作
A:a) 進入vi
在系統提示符號輸入vi及文件名稱後,就進入vi全屏幕編輯畫面:
$ vi myfile
不過有一點要特別注意,就是您進入vi之後,是處於「命令行模式 (command mode)」,您要切換到「插入模式(Insert mode)」才能夠輸入文字。
b) 切換至插入模式(Insert mode)編輯文件
在「命令行模式(command mode)」下按一下字母「i」就可以進入「插入模式(Insert mode)」,這時候你就可以開始輸入文字了。
c) Insert 的切換
您目前處於「插入模式(Insert mode)」,您就只能一直輸入文字,如果您發現輸錯了字!想用光標鍵往回移動,將該字刪除,就要先按一下「ESC」鍵轉到「命令行模式(command mode)」再刪除文字。
d) 退出vi及保存文件
在「命令行模式(command mode)」下,按一下「:」冒號鍵進入「Last line mode」,例如:
: w filename (輸入 「w filename」將文章以指定的文件名filename保存)
: wq (輸入「wq」,存盤並退出vi)
: q! (輸入q!, 不存盤強制退出vi)
q39 命令行模式(command mode)功能鍵
A:1). 插入模式
按「i」切換進入插入模式「insert mode」,按“i”進入插入模式後是從光標當前位置開始輸入文件;
按「a」進入插入模式後,是從目前光標所在位置的下一個位置開始輸入文字;
按「o」進入插入模式後,是插入新的一行,從行首開始輸入文字。
2). 從插入模式切換為命令行模式
按「ESC」鍵。
3). 移動光標
vi可以直接用鍵盤上的光標來上下左右移動,但正規的vi是用小寫英文字母「h」、「j」、「k」、「l」,分別控制光標左、下、上、右移一格。
按「ctrl」+「b」:屏幕往“後”移動一頁。
按「ctrl」+「f」:屏幕往“前”移動一頁。
按「ctrl」+「u」:屏幕往“後”移動半頁。
按「ctrl」+「d」:屏幕往“前”移動半頁。
按數字「0」:移到文章的開頭。
按「G」:移動到文章的最後。
按「$」:移動到光標所在行的“行尾”。
按「^」:移動到光標所在行的“行首”
按「w」:光標跳到下個字的開頭
按「e」:光標跳到下個字的字尾
按「b」:光標回到上個字的開頭
按「#l」:光標移到該行的第#個位置,如:5l,56l。
4). 刪除文字
「x」:每按一次,刪除光標所在位置的“後面”一個字符。
「#x」:例如,「6x」表示刪除光標所在位置的“後面”6個字符。
「X」:大寫的X,每按一次,刪除光標所在位置的“前面”一個字符。
「#X」:例如,「20X」表示刪除光標所在位置的“前面”20個字符。
「dd」:刪除光標所在行。
「#dd」:從光標所在行開始刪除#行
5). 復制
「yw」:將光標所在之處到字尾的字符復制到緩沖區中。
「#yw」:復制#個字到緩沖區
「yy」:復制光標所在行到緩沖區。
「#yy」:例如,「6yy」表示拷貝從光標所在的該行“往下數”6行文字。
「p」:將緩沖區內的字符貼到光標所在位置。注意:所有與“y”有關的復制命令都必須與“p”配合才能完成復制與粘貼功能。
6). 替換
「r」:替換光標所在處的字符。
「R」:替換光標所到之處的字符,直到按下「ESC」鍵為止。
7). 回復上一次操作
「u」:如果您誤執行一個命令,可以馬上按下「u」,回到上一個操作。按多次“u”可以執行多次回復。
8). 更改
「cw」:更改光標所在處的字到字尾處
「c#w」:例如,「c3w」表示更改3個字
9). 跳至指定的行
「ctrl」+「g」列出光標所在行的行號。
「#G」:例如,「15G」,表示移動光標至文章的第15行行首。
Q40 Shell的使用方法
A:程序必須以下面的行開始(必須方在文件的第一行):
#!/bin/sh
符號#!用來告訴系統它後面的參數是用來執行該文件的程序。在這個例子中我們使用/bin/sh來執行程序。
當編輯好腳本時,如果要執行該腳本,還必須使其可執行。
要使腳本可執行:
chmod +x filename
然後,您可以通過輸入: ./filename 來執行您的腳本。
注釋
在進行shell編程時,以#開頭的句子表示注釋,直到這一行的結束。
變量
在其他編程語言中您必須使用變量。在shell編程中,所有的變量都由字符串組成,並且您不需要對變量進行聲明。要賦值給一個變量,您可以這樣寫:
變量名=值
取出變量值可以加一個美元符號($)在變量前面:
#!/bin/sh
#對變量賦值:
a=”hello world”
# 現在打印變量a的內容:
echo “A is:”
echo $a
在您的編輯器中輸入以上內容,然後將其保存為一個文件first。之後執行chmod +x first
使其可執行,最後輸入./first執行該腳本。
這個腳本將會輸出:
A is:
Q41 什麼是正則表達式?
A:簡單的說就是在文件名中使用通配符。
Q42 如何更改網絡接口的IP地址?
A:使用ifconfig命令
Q43 SSH的兩種工作級別是什麼?
A:第一種級別(基於口令的安全驗證)只要你知道自己帳號和口令,就可以登錄到遠程主機。所有傳輸的數據都會被加密,但是不能保證你正在連接的服務器就是你想連接的服務器。可能會有別的服務器在冒充真正的服務器,也就是受到“中間人”這種方式的攻擊。
第二種級別(基於密匙的安全驗證)需要依靠密匙,也就是你必須為自己創建一對密匙,並把公用密匙放在需要訪問的服務器上。如果你要連接到SSH服務器上,客戶端軟件就會向服務器發出請求,請求用你的密匙進行安全驗證。服務器收到請求之後,先在你在該服務器的家目錄下尋找你的公用密匙,然後把它和你發送過來的公用密匙進行比較。如果兩個密匙一致,服務器就用公用密匙加密“質詢”(challenge)並把它發送給客戶端軟件。客戶端軟件收到“質詢”之後就可以用你的私人密匙解密再把它發送給服務器。
Q44 Telnet的工作原理是什麼?
A:當你用Telnet登錄進入遠程計算機系統時,你事實上啟動了兩個程序,一個 叫Telnet客戶程序,它運行在你的本地機上;另一個叫Telnet服務器程序,它運 行在你要登錄的遠程計算機上。本地機上的客戶程序要完成如下功能: 1 、建立與服務器的TCP 聯接; 2 、從鍵盤上接收你輸入的字符; 3 、把你輸入的字符串變成標准格式並送給遠程服務器; 4 、從遠程服務器接收輸出的信息; 5 、把該信息顯示在你的屏幕上。
Q45 ftp的常用命令有哪些?
A:
1![cmd[args]]:在本地機中執行交互shell,exit回到ftp環境,如:!ls*.zip.
2.$ macro-ame[args]:執行宏定義macro-name.
3.account[password]:提供登錄遠程系統成功後訪問系統資源所需的補充口令。
4.append local-file[remote-file]:將本地文件追加到遠程系統主機,若未指定遠程系統文件名,則使用本地文件名。
5.ascii:使用ascii類型傳輸方式。
6.bell:每個命令執行完畢後計算機響鈴一次。
7.bin:使用二進制文件傳輸方式。
8.bye:退出ftp會話過程。
9.case:在使用mget時,將遠程主機文件名中的大寫轉為小寫字母。
10.cd remote-dir:進入遠程主機目錄。
11.cdup:進入遠程主機目錄的父目錄。
12.chmod mode file-name:將遠程主機文件file-name的存取方式設置為mode,如:chmod 777 a.out。
13.close:中斷與遠程服務器的ftp會話(與open對應)。
14.cr:使用asscii方式傳輸文件時,將回車換行轉換為回行。
15.delete remote-file:刪除遠程主機文件。
16.debug[debug-value]:設置調試方式,顯示發送至遠程主機的每條命令,如:deb up 3,若設為0,表示取消debug。
17.dir[remote-dir][local-file]:顯示遠程主機目錄,並將結果存入本地文件local-file。
18.disconnection:同close。
19.form format:將文件傳輸方式設置為format,缺省為file方式。
20.get remote-file[local-file]:將遠程主機的文件remote-file傳至本地硬盤的local-file。
Q46 URL,URI由哪幾部分組成?
URL的格式由下列三部分組成:
第一部分是協議(或稱為服務方式);
第二部分是存有該資源的主機IP地址(有時也包括端口號);
第三部分是主機資源的具體地址。,如目錄和文件名等。
URI一般由三部分組成:
訪問資源的命名機制。
存放資源的主機名。
資源自身的名稱,由路徑表示。
Q47 Apache的最大連接數的修改方法是什麼?》
A:在httpd.conf中設置:
MaxClients n
n是整數,表示最大連接數,取值范圍在1和256之間,如果要讓apache支持更多的連接數,那麼需要修改源碼中的httpd.h文件,把定義的HARD_SERVER_LIMIT值改大然後再編譯。
Q48 CRON命令的作用與用法
A:cron命令:循環執行某一命令。at命令只能執行一次,雖然都是計劃任務的命令,這是這兩個命令的區別 。cron服務提供crontab命令來設定cron服務的,以下是這個命令的一些參數與說明: crontab -u //設定某個用戶的cron服務,一般root用戶在執行這個命令的時候需要此參數
crontab -l //列出某個用戶cron服務的詳細內容
crontab -r //刪除沒個用戶的cron服務
crontab -e //編輯某個用戶的cron服務
Q49 防火牆的分類
A:包過濾(Packet filtering)型
應用代理(Application Proxy)型
Q50 PING命令的用法
A:Ping命令的常用參數選項
ping IP -t
連續對IP地址執行Ping命令,直到被用戶以Ctrl+C中斷。
ping IP -l 3000
指定Ping命令中的數據長度為3000字節,而不是缺省的32字節。
ping IP -n 300
執行300次的Ping命令。
Q51 Netatart命令的用法
A: Netstat用於顯示與IP、TCP、UDP和ICMP協議相關的統計數據,一般用於檢驗本機各端口的網絡連接情況。
netstat 的一些常用選項
netstat -s 本選項能夠按照各個協議分別顯示其統計數據。
netstat -Ce 本選項用於顯示關於以太網的統計數據。它列出的項目包括傳送的數據報的總字節數、錯誤數、刪除數、數據報的數量和廣播的數量。這些統計數據既有發送的數據報數量,也有接收的數據報數量。這個選項可以用來統計一些基本的網絡流量)。
netstat -r 顯示關於路由表的信息,類似於後面所講使用route print命令時看到的信息。除了顯示有效路由外,還顯示當前有效的連接。
netstat -a 本選項顯示一個所有的有效連接信息列表,包括已建立的連接(ESTABLISHED),也包括監聽連接請求(LISTENING)的那些連接。
netstat -n 顯示所有已建立的有效連接。
Q52 ifconfig命令的用法
A:ifconfig命令
用於查看和更改網絡接口的地址和參數
$ifconfig -a
lo0: flags=849 mtu 8232
inet 127.0.0.1 netmask ff000000
hme0: flags=863 mtu 1500
inet 211.101.149.11 netmask ffffff00 broadcast 211.101.149.255
ether 8:0:20:a7:4d:21
系統會顯示網絡接口的名稱,接口的狀態(up or down),
接口的IP地址和掩碼等信息
更改網絡接口的IP地址:
#ifconfig hme0 down
#ifconfig hme0 211.101.149.233 netmask 255.255.255.0 up
首先,使用down命令參數把網絡接口hme0的服務暫時停止,然後再用ifconfig命令給
接口分配新的IP地址和掩碼,並啟動網絡接口服務
也可以通過改變文件/etc/hosts中的IP地址的值並重新啟動系統來更改機器的IP地址。
/etc/hosts/:
211.101.149.11 sampdt
定義主機名在/etc/hostname.hme0及IP地址。
更改了網卡/增加了網卡,系統不能自動啟動該接口服務,這時需要手動創建網口服務:
#ifconfig hme0 plumb
即可以為接口le0創建網口服務
相應地,用ifconfig帶unplumb參數可以停止服務並關閉網絡