歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux命令大全----系統管理相關命令

一、安裝和登錄命令

login
1.作用
login 的作用是登錄系統,它的使用權限是所有用戶。
2.格式

login [name][-p ][-h 主機名稱]
3.主要參數
-p:通知login保持現在的環境參數。
-h:用來向遠程登錄的之間傳輸用戶名。
如果選擇用命令行模式登錄Linux的話,那麼看到的第一個Linux命令就是login:。
一般界面是這樣的:
Manddrake Linux release 9.1(Bamboo) for i586
renrel 2.4.21-0.13mdk on i686 / tty1
localhost login:root
password:
上面代碼中,第一行是Linux發行版本號,第二行是內核版本號和登錄的虛擬控制台,我們在第三行輸入登錄名,按“Enter”鍵在Password後輸入賬戶密碼,即可登錄系統。出於安全考慮,輸入賬戶密碼時字符不會在屏幕上回顯,光標也不移動。
登錄後會看到下面這個界面(以超級用戶為例):
[root@localhost root]#
last login:Tue ,Nov 18 10:00:55 on vc/1
上面顯示的是登錄星期、月、日、時間和使用的虛擬控制台。
4.應用技巧
Linux 是一個真正的多用戶操作系統,可以同時接受多個用戶登錄,還允許一個用戶進行多次登錄。這是因為Linux和許多版本的Unix一樣,提供了虛擬控制台的訪問方式,允許用戶在同一時間從控制台(系統的控制台是與系統直接相連的監視器和鍵盤)進行多次登錄。每個虛擬控制台可以看作是一個獨立的工作站,工作台之間可以切換。虛擬控制台的切換可以通過按下Alt鍵和一個功能鍵來實現,通常使用F1-F6 。
例如,用戶登錄後,按一下“Alt+ F2”鍵,用戶就可以看到上面出現的“login:”提示符,說明用戶看到了第二個虛擬控制台。然後只需按“Alt+ F1”鍵,就可以回到第一個虛擬控制台。一個新安裝的Linux系統允許用戶使用“Alt+F1”到“Alt+F6”鍵來訪問前六個虛擬控制台。虛擬控制台最有用的是,當一個程序出錯造成系統死鎖時,可以切換到其它虛擬控制台工作,關閉這個程序。

 

shutdown
1.作用
shutdown命令的作用是關閉計算機,它的使用權限是超級用戶。
2.格式

shutdown [-h][-i][-k][-m][-t]
3.重要參數

-t:在改變到其它運行級別之前,告訴init程序多久以後關機。 -k:並不真正關機,只是送警告信號給每位登錄者。 -h:關機後關閉電源。 -c:cancel current process取消目前正在執行的關機程序。所以這個選項當然沒有時間參數,但是可以輸入一個用來解釋的訊息,而這信息將會送到每位使用者。 -F:在重啟計算機時強迫fsck。 -time:設定關機前的時間。 -m: 將系統改為單用戶模式。 -i:關機時顯示系統信息。
4.命令說明
shutdown 命令可以安全地將系統關機。有些用戶會使用直接斷掉電源的方式來關閉Linux系統,這是十分危險的。因為Linux與Windows不同,其後台運行著許多進程,所以強制關機可能會導致進程的數據丟失,使系統處於不穩定的狀態,甚至在有的系統中會損壞硬件設備(硬盤)。在系統關機前使用 shutdown命令,系統管理員會通知所有登錄的用戶系統將要關閉,並且login指令會被凍結,即新的用戶不能再登錄。
本人最常用的關機命令如下:

 

 

shutdown now -h

 

reboot
1.作用
reboot命令的作用是重新啟動計算機,它的使用權限是系統管理者。
2.格式

reboot [-n] [-w] [-d] [-f] [-i]
3.主要參數
-n: 在重開機前不做將記憶體資料寫回硬盤的動作。
-w: 並不會真的重開機,只是把記錄寫到/var/log/wtmp文件裡。
-d: 不把記錄寫到/var/log/wtmp文件裡(-n這個參數包含了-d)。
-i: 在重開機之前先把所有與網絡相關的裝置停止。

 

mount
1.作用
mount命令的作用是加載文件系統,它的用權限是超級用戶或/etc/fstab中允許的使用者。
2.格式

mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir
3.主要參數
-h:顯示輔助信息。
-v:顯示信息,通常和-f用來除錯。
-a:將/etc/fstab中定義的所有文件系統掛上。
-F:這個命令通常和-a一起使用,它會為每一個mount的動作產生一個行程負責執行。在系統需要掛上大量NFS文件系統時可以加快加載的速度。
-f:通常用於除錯。它會使mount不執行實際掛上的動作,而是模擬整個掛上的過程,通常會和-v一起使用。
-t vfstype:顯示被加載文件系統的類型。
-n:一般而言,mount掛上後會在/etc/mtab中寫入一筆資料,在系統中沒有可寫入文件系統的情況下,可以用這個選項取消這個動作。
4.應用技巧
在Linux 和Unix系統上,所有文件都是作為一個大型樹(以/為根)的一部分訪問的。要訪問CD-ROM上的文件,需要將CD-ROM設備掛裝在文件樹中的某個掛裝點。如果發行版安裝了自動掛裝包,那麼這個步驟可自動進行。在Linux中,如果要使用硬盤、光驅等儲存設備,就得先將它加載,當儲存設備掛上了之後,就可以把它當成一個目錄來訪問。掛上一個設備使用mount命令。在使用mount這個指令時,至少要先知道下列三種信息:要加載對象的文件系統類型、要加載對象的設備名稱及要將設備加載到哪個目錄下。
(1)Linux可以識別的文件系統
◆ Windows 95/98常用的FAT 32文件系統:vfat ;
◆ Win NT/2000 的文件系統:ntfs ;
◆ OS/2用的文件系統:hpfs;
◆ Linux用的文件系統:ext2、ext3;
◆ CD-ROM光盤用的文件系統:iso9660。
雖然vfat是指FAT 32系統,但事實上它也兼容FAT 16的文件系統類型。
(2)確定設備的名稱
在Linux 中,設備名稱通常都存在/dev裡。這些設備名稱的命名都是有規則的,可以用“推理”的方式把設備名稱找出來。例如,/dev/hda1這個 IDE設備,hd是Hard Disk(硬盤)的,sd是SCSI Device,fd是Floppy Device(或是Floppy Disk?)。a代表第一個設備,通常IDE接口可以接上4個IDE設備(比如4塊硬盤)。所以要識別IDE硬盤的方法分別就是hda、hdb、hdc、 hdd。hda1中的“1”代表hda的第一個硬盤分區 (partition),hda2代表hda的第二主分區,第一個邏輯分區從hda5開始,依此類推。此外,可以直接檢查 /var/log/messages文件,在該文件中可以找到計算機開機後系統已辨認出來的設備代號。
(3)查找掛接點
在決定將設備掛接之前,先要查看一下計算機是不是有個/mnt的空目錄,該目錄就是專門用來當作掛載點(Mount Point)的目錄。建議在/mnt裡建幾個/mnt/cdrom、/mnt/floppy、/mnt/mo等目錄,當作目錄的專用掛載點。舉例而言,如要掛載下列5個設備,其執行指令可能如下 (假設都是Linux的ext2系統,如果是Windows XX請將ext2改成vfat):
軟盤 ===>mount -t ext2 /dev/fd0 /mnt/floppy
cdrom ===>mount -t iso9660 /dev/hdc /mnt/cdrom
SCSI cdrom ===>mount -t iso9660 /dev/sdb /mnt/scdrom
SCSI cdr ===>mount -t iso9660 /dev/sdc /mnt/scdr
不過目前大多數較新的Linux發行版本(包括紅旗 Linux、中軟Linux、Mandrake Linux等)都可以自動掛裝文件系統,但Red Hat Linux除外。

 

umount
1.作用
umount命令的作用是卸載一個文件系統,它的使用權限是超級用戶或/etc/fstab中允許的使用者。
2.格式

unmount -a [-fFnrsvw] [-t vfstype] [-n] [-rw] [-F] device dir
3.使用說明
umount 命令是mount命令的逆操作,它的參數和使用方法和mount命令是一樣的。Linux掛裝CD-ROM後,會鎖定CD—ROM,這樣就不能用CD- ROM面板上的Eject按鈕彈出它。但是,當不再需要光盤時,如果已將/cdrom作為符號鏈接,請使用umount/cdrom來卸裝它。僅當無用戶正在使用光盤時,該命令才會成功。該命令包括了將帶有當前工作目錄當作該光盤中的目錄的終端窗口。

 

 mount是Linux下的一個命令,它可以將分區作為Linux的一個“文件”掛接到Linux的一個空文件夾下,從而將分區和/mnt這個目錄聯系起來,因此我們只要訪問這個文件夾,就相當於訪問該分區了。目前mount已經不僅僅局限於Linux了,在Windows系統下的應用也越來越廣了,多用在虛擬光驅類軟件上,比如Clone CD,Daemon tool,WinMount等。
注意事項
  1、必須將光盤、U盤等放入驅動器在實施掛載操作
  2、不能在掛載目錄下實施掛載操作,至少在上一級
  3、不能在同一目錄下掛載兩個以上的文件系統
  4、Linux預留掛載目錄為/mnt
  5、不能在掛載目錄下實施卸載操作
  6、掛載目錄必須事先存在
  掛載光盤
  #mount -t iso9660 /dev/cdrom /mnt/cdrom
  卸載光盤
  #umount /mnt/cdrom或#umount /dev/cdrom或#cd;eject
  掛載U盤
  #mount /dev/sdb1 /mnt/usb
  掛載iso鏡像
  #mount -t iso9660 -o loop iso鏡像文件 /mnt/cdrom

exit

1.作用
exit命令的作用是退出幼終端系統,它的使用權限是所有用戶。
2.格式
exit
3.參數
exit命令沒有參數,運行後退出系統進入登錄界面。


last
1.作用
last命令的作用是顯示近期用戶或終端的登錄情況,它的使用權限是所有用戶。通過last命令查看該程序的log,管理員可以獲知誰曾經或企圖連接系統。
2.格式

1ast[—n][-f file][-t tty] [—h 節點][-I —IP][—1][-y][1D]
3.主要參數
-n:指定輸出記錄的條數。
-f file:指定用文件file作為查詢用的log文件。
-t tty:只顯示指定的虛擬控制台上登錄情況。
-h 節點:只顯示指定的節點上的登錄情況。
-i IP:只顯示指定的IP上登錄的情況。
-1:用IP來顯示遠端地址。
-y:顯示記錄的年、月、日。
-ID:知道查詢的用戶名。
-x:顯示系統關閉、用戶登錄和退出的歷史。

\

 

二、系統管理相關命令

History

使用history命令可以調出歷史曾經用過的命令列表

\
如果你想重新執行top 那就可以直接這樣調出歷史: !878

 

\

使用 Ctrl+R 搜索歷史
Ctrl+R 是我經常使用的一個快捷鍵。此快捷鍵讓你對命令歷史進行搜索,對於想要重復執行某個命令的時候非常有用。當找到命令後,通常再按回車鍵就可以執行該命令。如果想對找到的命令進行調整後再執行,則可以按一下左或右方向鍵。

\快速重復執行上一條命令
有 4 種方法可以重復執行上一條命令:
使用上方向鍵,並回車執行。
按 !! 並回車執行。
輸入 !-1 並回車執行。
按 Ctrl+P 並回車執行。
從命令歷史中執行一個指定的命令
在下面的例子中,如果你想重復執行第 4 條命令,那麼可以執行 !4:
\通過指定關鍵字來執行以前的命令
在下面的例子,輸入 !ps 並回車,將執行以 ps 打頭的命令:

\

 

ps

1、作用

顯示瞬間行程 (process) 的動態

2、使用

 

ps [options] [--help] 

 

3、參數

 

 

-A :所有的進程均顯示出來,與 -e 具有同樣的效用;
-a : 顯示現行終端機下的所有進程,包括其他用戶的進程;
-u :以用戶為主的進程狀態 ;
x :通常與 a 這個參數一起使用,可列出較完整信息
-e 顯示所有進程,環境變量
-au 顯示較詳細的資訊
-aux 顯示所有包含其他使用者的進程
輸出格式規劃:
l :較長、較詳細的將該 PID 的的信息列出;
j :工作的格式 (jobs format)
-f :全格式

 

au(x) 輸出格式 :

 

\
USER: 行程擁有者 
PID: pid 
%CPU: 占用的 CPU 使用率 
%MEM: 占用的記憶體使用率 
VSZ: 占用的虛擬記憶體大小 
RSS: 占用的記憶體大小 
TTY: 終端的次要裝置號碼 (minor device number of tty) 
STAT: 該行程的狀態: 
D: 不可中斷的靜止 
R: 正在執行中 
S: 靜止狀態 
T: 暫停執行 
Z: 不存在但暫時無法消除 
W: 沒有足夠的記憶體分頁可分配 
<: 高優先序的行程 
N: 低優先序的行程 
L: 有記憶體分頁分配並鎖在記憶體內 (即時系統或捱A I/O) 
START: 行程開始時間 
TIME: 執行的時間 
COMMAND:所執行的指令

范例:

具體命令解釋如下:
1)ps a 顯示現行終端機下的所有程序,包括其他用戶的程序。

2)ps -A 顯示所有程序。

3)ps c 列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務的標示。

4)ps -e 此參數的效果和指定”A”參數相同。

5)ps e 列出程序時,顯示每個程序所使用的環境變量。

6)ps f 用ASCII字符顯示樹狀結構,表達程序間的相互關系。

7)ps -H 顯示樹狀結構,表示程序間的相互關系。

8)ps -N 顯示所有的程序,除了執行ps指令終端機下的程序之外。

9)ps s 采用程序信號的格式顯示程序狀況。

10)ps S 列出程序時,包括已中斷的子程序資料。

11)ps -t<終端機編號>

指定終端機編號,並列出屬於該終端機的程序的狀況。

12)ps u

以用戶為主的格式來顯示程序狀況。

13)ps x

顯示所有程序,不以終端機來區分。

最常用的方法是ps -aux,然後再利用一個管道符號導向到grep去查找特定的進程,然後再對特定的進程進行操作。

 

如,顯示init命名相關的進程

\

top
1.作用
top命令用來顯示執行中的程序進程,使用權限是所有用戶。

2.格式

top [-] [d delay] [q] [c] [S] [s] [i] [n]
3.主要參數
d:指定更新的間隔,以秒計算。
q:沒有任何延遲的更新。如果使用者有超級用戶,則top命令將會以最高的優先序執行。
c:顯示進程完整的路徑與名稱。
S:累積模式,會將己完成或消失的子行程的CPU時間累積起來。
s:安全模式。
i:不顯示任何閒置(Idle)或無用(Zombie)的行程。
n:顯示更新的次數,完成後將會退出top。

4.說明
top命令是Linux系統管理的一個主要命令,通過它可以獲得許多信息。這裡我們結合下圖來說明它給出的信息。
圖 top命令的顯示

 

\

在上圖中,第一行表示的項目依次為當前時間、系統啟動時間、當前系統登錄用戶數目、平均負載。

第二行顯示的是所有啟動的進程、目前運行的、掛起 (Sleeping)的和無用(Zombie)的進程。第三行顯示的是目前CPU的使用情況,包括系統占用的比例、用戶使用比例、閒置(Idle)比例。第四行顯示物理內存的使用情況,包括總的可以使用的內存、已用內存、空閒內存、緩沖區占用的內存。第五行顯示交換分區使用情況,包括總的交換分區、使用的、空閒的和用於高速緩存的大小。第六行顯示的項目最多,下面列出了詳細解釋。

PID(Process ID):進程標示號。
USER:進程所有者的用戶名。
PR:進程的優先級別。
NI:進程的優先級別數值。
VIRT:進程占用的虛擬內存值。
RES:進程占用的物理內存值。
SHR:進程使用的共享內存值。
S:進程的狀態,其中S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值是負數。
%CPU:該進程占用的CPU使用率。
%MEM:該進程占用的物理內存和總內存的百分比。
TIME+:該進程啟動後占用的總的CPU時間。
Command:進程啟動的啟動命令名稱,如果這一行顯示不下,進程會有一個完整的命令行。
top命令使用過程中,還可以使用一些交互的命令來完成其它參數的功能。這些命令是通過快捷鍵啟動的。
<空格>:立刻刷新。
P:根據CPU使用大小進行排序。
T:根據時間、累計時間排序。
q:退出top命令。
m:切換顯示內存信息。
t:切換顯示進程和CPU狀態信息。
c:切換顯示命令名稱和完整命令行。
M:根據使用內存大小進行排序。
W:將當前設置寫入~/.toprc文件中。這是寫top配置文件的推薦方法。
可以看到,top命令是一個功能十分強大的監控系統的工具,對於系統管理員而言尤其重要。但是,它的缺點是會消耗很多系統資源。

 

要對系統中進程進行監測控制,查看狀態,內存,CPU的使用情況
(1) ps :是顯示瞬間進程的狀態,並不動態連續;
(2) top:如果想對進程運行時間監控,應該用 top 命令;
(3) kill 用於殺死進程或者給進程發送信號;

free
1.作用
free命令用來顯示內存的使用情況,使用權限是所有用戶。
2.格式

free [-b|-k|-m] [-o] [-s delay] [-t] [-V]
3.主要參數
-b -k -m:分別以字節(KB、MB)為單位顯示內存使用情況。
-s delay:顯示每隔多少秒數來顯示一次內存使用情況。
-t:顯示內存總和列。
-o:不顯示緩沖區調節列。

4.應用實例
free命令是用來查看內存使用情況的主要命令。和top命令相比,它的優點是使用簡單,並且只占用很少的系統資源。通過-S參數可以使用free命令不間斷地監視有多少內存在使用,這樣可以把它當作一個方便實時監控器。
#free -b -s 1

 

 

\使用這個命令後終端會連續不斷地報告內存使用情況(以字節為單位),每5秒更新一次。
quota
1.作用
quota命令用來顯示磁盤使用情況和限制情況,使用權限超級用戶。
2.格式
quota [-g][-u][-v][-p] 用戶名 組名
3.參數
-g:顯示用戶所在組的磁盤使用限制。
-u:顯示用戶的磁盤使用限制。
-v:顯示沒有分配空間的文件系統的分配情況。
-p:顯示簡化信息。
4.應用實例
在企業應用中磁盤配額非常重要,普通用戶要學會看懂自己的磁盤使用情況。如果沒有以下命名,可用如下方法安裝

 

\

 

kill
1.作用
kill命令用來中止一個進程。
2.格式

kill [ -s signal | -p ] [ -a ] pid ...
kill -l [ signal ]
3.參數
-s:指定發送的信號。
-p:模擬發送信號。
-l:指定信號的名稱列表。
pid:要中止進程的ID號。
Signal:表示信號。
4.說明
Linux 操作系統包括三種不同類型的進程,每種進程都有自己的特點和屬性。交互進程是由一個Shell啟動的進程。交互進程既可以在前台運行,也可以在後台運行。批處理進程和終端沒有聯系,是一個進程序列。監控進程(也稱系統守護進程)時Linux系統啟動時啟動的進程,並在後台運行。例如,httpd是著名的 Apache服務器的監控進程。
kill命令的工作原理是,向Linux系統的內核發送一個系統操作信號和某個程序的進程標識號,然後系統內核就可以對進程標識號指定的進程進行操作。比如在top命令中,我們看到系統運行許多進程,有時就需要使用kill中止某些進程來提高系統資源。在講解安裝和登陸命令時,曾提到系統多個虛擬控制台的作用是當一個程序出錯造成系統死鎖時,可以切換到其它虛擬控制台工作關閉這個程序。此時使用的命令就是kill,因為kill是大多數Shell內部命令可以直接調用的。
5.應用實例
(1)強行中止(經常使用殺掉)一個進程標識號為4413的進程:先找到firefox的進程ID,再強制kill
\(2)解除Linux系統的死鎖
在Linux 中有時會發生這樣一種情況:一個程序崩潰,並且處於死鎖的狀態。此時一般不用重新啟動計算機,只需要中止(或者說是關閉)這個有問題的程序即可。當 kill處於X-Window界面時,主要的程序(除了崩潰的程序之外)一般都已經正常啟動了。此時打開一個終端,在那裡中止有問題的程序。比如,如果 Mozilla浏覽器程序出現了鎖死的情況,可以使用kill命令來中止所有包含有Mozolla浏覽器的程序。首先用top命令查處該程序的PID,然後使用kill命令停止這個程序:
#kill -SIGKILL XXX
其中,XXX是包含有Mozolla浏覽器的程序的進程標識號。
(3)使用命令回收內存
我們知道內存對於系統是非常重要的,回收內存可以提高系統資源。kill命令可以及時地中止一些“越軌”的程序或很長時間沒有相應的程序。例如,使用top命令發現一個無用 (Zombie) 的進程,此時可以使用下面命令:
#kill -9 XXX
其中,XXX是無用的進程標識號。
然後使用下面命令:
#free
此時會發現可用內存容量增加了。
(4)killall命令
Linux下還提供了一個killall命令,可以直接使用進程的名字而不是進程標識號,例如:
# killall -HUP inetd
Copyright © Linux教程網 All Rights Reserved