linux下必看的60個命令

Linux提供了大量的命令,利用它能夠有效地完成大量的工做,如磁盤操做、文件存取、 目錄操做、進程管理、文件權限設定等。因此,在Linux系統上工做離不開使用系統提供的命令。要想真正理解Linux系統,就必須從Linux命令學 起,經過基礎的命令學習能夠進一步理解Linux系統。 不一樣Linux發行版的命令數量不同,但Linux發行版本最少的命令也有200多個。這裏筆者把比較重要和使用頻率最多的命令,按照它們在系統中的做用分紅下面六個部分一一介紹。 ◆ 安裝和登陸命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last; ◆ 文件處理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln; ◆ 系統管理相關命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab; ◆ 網絡操做命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup; ◆ 系統安全相關命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who; ◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。 本文以Mandrake Linux 9.1(Kenrel 2.4.21)爲例,介紹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 / tty1localhost login:rootpassword:上面代碼中,第一行是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指令會被凍結,即新的用戶不能再登陸。 halt 1.做用 halt命令的做用是關閉系統,它的使用權限是超級用戶。 2.格式 halt [-n] [-w] [-d] [-f] [-i] [-p]3.主要參數說明 -n:防止sync系統調用,它用在用fsck修補根分區以後,以阻止內核用老版本的超級塊覆蓋修補過的超級塊。 -w:並非真正的重啓或關機,只是寫wtmp(/var/log/wtmp)紀錄。 -f:沒有調用shutdown,而強制關機或重啓。 -i:關機(或重啓)前,關掉全部的網絡接口。 -f:強迫關機,不呼叫shutdown這個指令。 -p: 當關機的時候順便作關閉電源的動做。 -d:關閉系統,但不留下紀錄。  4.命令說明 halt 就是調用shutdown -h。halt執行時,殺死應用進程,執行sync(將存於buffer中的資料強制寫入硬盤中)系統調用,文件系統寫操做完成後就會中止內核。若系統的 運行級別爲0或6,則關閉系統;不然以shutdown指令(加上-h參數)來取代。  reboot 1.做用 reboot命令的做用是從新啓動計算機,它的使用權限是系統管理者。 2.格式 reboot [-n] [-w] [-d] [-f] [-i]3.主要參數 -n: 在重開機前不作將記憶體資料寫回硬盤的動做。 -w: 並不會真的重開機,只是把記錄寫到/var/log/wtmp文件裏。 -d: 不把記錄寫到/var/log/wtmp文件裏(-n這個參數包含了-d)。 -i: 在重開機以前先把全部與網絡相關的裝置中止。 install 1.做用 install命令的做用是安裝或升級軟件或備份數據,它的使用權限是全部用戶。 2.格式 (1)install [選項]... 來源 目的地 (2)install [選項]... 來源... 目錄 (3)install -d [選項]... 目錄... 在 前兩種格式中,會將<來源>複製至<目的地>或將多個<來源>文件複製至已存在的<目錄>,同時設定權 限模式及全部者/所屬組。在第三種格式中,會建立全部指定的目錄及它們的主目錄。長選項必須用的參數在使用短選項時也是必須的。 3.主要參數 --backup[=CONTROL]:爲每一個已存在的目的地文件進行備份。 -b:相似 --backup,但不接受任何參數。 -c:(此選項不做處理)。 -d,--directory:全部參數都做爲目錄處理,並且會建立指定目錄的全部主目錄。 -D:建立<目的地>前的全部主目錄,而後將<來源>複製至 <目的地>;在第一種使用格式中有用。 -g,--group=組:自行設定所屬組,而不是進程目前的所屬組。 -m,--mode=模式:自行設定權限模式 (像chmod),而不是rwxr-xr-x。 -o,--owner=全部者:自行設定全部者 (只適用於超級用戶)。 -p,--preserve-timestamps:以<來源>文件的訪問/修改時間做爲相應的目的地文件的時間屬性。 -s,--strip:用strip命令刪除symbol table,只適用於第一及第二種使用格式。 -S,--suffix=後綴:自行指定備份文件的<後綴>。 -v,--verbose:處理每一個文件/目錄時印出名稱。 --help:顯示此幫助信息並離開。 --version:顯示版本信息並離開。 mount 1.做用 mount命令的做用是加載文件系統,它的用權限是超級用戶或/etc/fstab中容許的使用者。 2.格式 mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir3.主要參數 -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用的文件系統:ext二、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 dir3.使用說明 umount 命令是mount命令的逆操做,它的參數和使用方法和mount命令是同樣的。Linux掛裝CD-ROM後,會鎖定CD—ROM,這樣就不能用CD- ROM面板上的Eject按鈕彈出它。可是,當再也不須要光盤時,若是已將/cdrom做爲符號連接,請使用umount/cdrom來卸裝它。僅當無用戶 正在使用光盤時,該命令纔會成功。該命令包括了將帶有當前工做目錄看成該光盤中的目錄的終端窗口。 chsh 1.做用 chsh命令的做用是更改使用者shell設定,它的使用權限是全部使用者。 2.格式 chsh [ -s ] [ -list] [ --help ] [ -v ] [ username ]3.主要參數 -l:顯示系統全部Shell類型。 -v:顯示Shell版本號。 4.應用技巧 前面介紹了Linux下有多種Shell,通常缺省的是Bash,若是想更換Shell類型可使用chsh命令。先輸入帳戶密碼,而後輸入新Shell類型,若是操做正確系統會顯示「Shell change」。其界面通常以下: Changing fihanging shell for caoPassword: New shell [/bin/bash]: /bin/tcsh上面代碼中,[ ]內是目前使用的Shell。普通用戶只能修改本身的Shell,超級用戶能夠修改全體用戶的Shell。要想查詢系統提供哪些Shell,可使用chsh -l 命令,見圖1所示。 圖1 系統可使用的Shell類型 從圖1中能夠看到,筆者系統中可使用的Shell有bash(缺省)、csh、sh、tcsh四種。 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:顯示系統關閉、用戶登陸和退出的歷史。 動手練習 上面介紹了Linux安裝和登陸命令,下面介紹幾個實例,動手練習一下剛纔講過的命令。 1.一次運行多個命令 在一個命令行中能夠執行多個命令,用分號將各個命令隔開便可,例如: #last -x;halt上面代碼表示在顯示系統關閉、用戶登陸和退出的歷史後關閉計算機。 2.利用mount掛裝文件系統訪問Windows系統 許多Linux發行版本如今均可以自動加載Vfat分區來訪問Windows系統,而Red Hat各個版本都沒有自動加載Vfat分區,所以還須要進行手工操做。 mount 能夠將Windows分區做爲Linux的一個「文件」掛接到Linux的一個空文件夾下,從而將Windows的分區和/mnt這個目錄聯繫起來。因 此,只要訪問這個文件夾就至關於訪問該分區了。首先要在/mnt下創建winc文件夾,在命令提示符下輸入下面命令: #mount -t vfat /dev/hda1 /mnt/winc即 表示將Windows的C分區掛到Liunx的/mnt/winc目錄下。這時,在/mnt/winc目錄下就能夠看到Windows中C盤的內容了。使 用相似的方法能夠訪問Windows系統的D、E盤。在Linux系統顯示Windows的分區通常順序這樣的:hda1爲C盤、hda5爲D盤、 hda6爲E盤……以此類推。上述方法能夠查看Windows系統有一個很大的問題,就是Windows中的全部中文文件名或文件夾名所有顯示爲問號 「?」,而英文卻能夠正常顯示。咱們能夠經過加入一些參數讓它顯示中文。還以上面的操做爲例,此時輸入命令: #mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/winc如今它就能夠正常顯示中文了。 3.使用mount加掛閃盤上的文件系統 在Linux下使用閃盤很是簡單。Linux對USB設備有很好的支持,當插入閃盤後,閃盤被識別爲一個SCSI盤,一般輸入如下命令: # mount /dev/sda1 /usb就可以加掛閃盤上的文件系統。 小知識 Linux命令與Shell 所 謂Shell,就是命令解釋程序,它提供了程序設計接口,可使用程序來編程。學習Shell對於Linux初學者理解Linux系統是很是重要的。 Linux系統的Shell做爲操做系統的外殼,爲用戶提供了使用操做系統的接口。Shell是命令語言、命令解釋程序及程序設計語言的統稱,是用戶和 Linux內核之間的接口程序。若是把Linux內核想象成一個球體的中心,Shell就是圍繞內核的外層。當從Shell或其它程序向Linux傳遞命 令時,內核會作出相應的反應。Shell在Linux系統的做用和MS DOS下的COMMAND.COM和Windows 95/98 的 explorer.exe類似。Shell雖然不是系統核心的一部分,只是系統核心的一個外延,但它可以調用系統內核的大部分功能。所以,能夠說 Shell是Unux/Linux最重要的實用程序。 Linux中的Shell有多種類型,其中最經常使用的是Bourne Shell(sh)、C Shell(csh)和Korn Shell(ksh)。大多數Linux發行版本缺省的Shell是Bourne Again Shell,它是Bourne Shell的擴展,簡稱bash,與Bourne Shell徹底向後兼容,而且在Bourne Shell的基礎上增長了不少特性。bash放在/bin/bash中,能夠提供如命令補全、命令編輯和命令歷史表等功能。它還包含了不少C Shell和Korn Shell中的優勢,有靈活和強大的編程接口,同時又有很友好的用戶界面。Linux系統中200多個命令中有40個是bash的內部命令,主要包括 exit、less、lp、kill、 cd、pwd、fc、fg等。
相關文章
相關標籤/搜索