做者:幻影快遞Linux小組 翻譯 2004-10-05 22:03:01 來自:Linux新手管理員指南(中文版)
html
5.1 Linux基本的鍵盤輸入快捷鍵和一些經常使用命令前端
5.2 幫助命令node
5.3 系統信息linux
5.4 基本操做git
5.5 文件管理程序員
5.6 查看和編輯文件shell
5.7 查找文件數據庫
5.8 X-windows基礎apache
5.9 網絡應用程序windows
5.10 文件壓縮和解壓縮
5.11 進程控制
5.12 一些管理命令
5.13 硬盤和軟盤實用工具
5.14 用戶賬戶和文件權限管理
5.15 程序安裝
5.16 訪問磁盤驅動器/分區
5.17 網絡管理工具
5.18 與音樂有關的命令
5.19 與圖形相關的命令
5.20 幾個小遊戲
簡介:
這是包含在Linux軟件包裏(RedHat或者Mandrake),咱們比較常用和比較有用的一些命令集合。在你當前路徑的命令提示行下按<TAB>鍵,就能夠看到有效的命令一覽。在個人小型家用系統上,在個人當前路徑下有3786個可執行命令。這些命令的大部分能夠在圖形用戶界面下使用鼠標的左鍵或者右鍵來訪問,所有均可以使用命令行來運行(除非你沒有安裝對應的軟件包,在個人CD裏均可以運行)。那些要求圖形用戶界面的程序必須在圖形用戶下才能運行,好比,你能夠經過在KDE或者GNOME的終端輸入命令來運行這些程序。一些更高級(對新手沒有用處?)的命令工具能夠參考第七部分的相關內容。
如下給那些對Linux沒有概念的新手:
Linux是大小寫敏感的系統,舉個例子,Mozilla, MOZILLA, mOzilla和 mozilla是四個不一樣的命令(可是隻有第四個mozilla是真正有效的命令)。還有,my_filE, my_file,和my_FILE是三個不一樣的文件。用戶的登陸名和祕密也是大小寫敏感的(這是由於UNIX系統和C語言的傳統一貫是大小寫敏感所致)。
文件名最多能夠有256個字符,能夠包含數字,點號」.」,下劃線」_」,橫杆」-」,加上其餘一些不被建議使用的字符。
文件名前面帶」.」的文件在輸入」ls」或者」dir」 命令時通常不顯示。能夠把這些文件看做是隱含文件,固然你也可使用命令」ls –a」來顯示這些文件。
「/」對等於DOS下的」\」(根目錄,意味着全部其餘目錄的父目錄,或者是在目錄之間和目錄和文件之間的一個間隔符號)。舉個例子,cd /usr/doc。
在Linux系統下,全部的目錄顯示在單一目錄樹下(有別於DOS系統的驅動器標識)。這意味着全部的物理設備上的全部文件和目錄都合併在單一的目錄樹下。
在配置文件裏,以#打頭的行是註釋行。在修改配置文件的時候儘可能不要刪除舊的設置――能夠把原來的設置加上」#」變成註釋行,老是在修改地方對應地加入一些關於修改的註釋,你會發覺在之後的管理中獲益多多。
Linux是繼承性的多用戶操做系統。你的我的設定(和其餘用戶的我的設定)放在你的主目錄下(通常是/home/your_user_login_name)。許多的配置文件的文件名都以」.」開頭,這樣用戶通常看不到這些文件。
整個系統範圍的設定通常放在目錄/etc下。
和其餘的多用戶操做系統相似,在Linux下,文件和目錄有本身的擁有者和訪問權限。通常來講,你只被容許文件到你的主目錄下(/home/your_user_login_name)。學習一些關於文件權限管理的相關知識,不然你確定會以爲Linux實在很麻煩。
命令參數選項通常由」-」引導,後面跟一個字符(或者」--「,當選項超過一個字符時)。這樣,」-」有點象DOS下的」/」。舉個例子,輸入命令 rm --help。
輸入command& (命令名後面加&符號)在背景模式下運行一個命令。這個通常用來在X窗口下啓動其餘的程序。
5.1 Linux基本的鍵盤輸入快捷鍵和一些經常使用命令
<Ctrl><Alt><F1>
切換到第一個文本終端。在Linux下你能夠有多達六個不一樣的終端。這個命令的意思是:「同時按住<Ctrl>鍵和<Alt>鍵,而後按<F1>鍵,再釋放全部的鍵」。
<Ctrl><Alt><Fn> (n=1..6)
切換到第n個文本終端。(你也可使用不是很常常用到的命令chvt n 來實現,n指的是第n個文本終端)。在文本終端下(不是在X窗口),你也能夠簡單使用<ALT><Fn>來實現切換,不須要<CTRL>鍵。
打印出你正在使用的終端名稱,若是你但願知道終端的名字,可使用命令fgconsole。
<Ctrl><Alt><F7>
切換到第一個圖形用戶界面(通常來講X-window在第七個終端)
<Ctrl><Alt><Fn> (n=7到12)
切換到第n個圖形用戶街面。根據缺省,第一個X-Window在第7個終端運行,從第8到第12什麼也沒有,固然你能夠逐個啓動這些圖形用戶界面。
<Tab>
(在文本終端下)可使用TAB自動完成命令,或者顯示全部的可選項。這個快捷鍵真的很是好用,常用你會發覺它能夠節約你不少的時間。
<ArrowUp>
(在文本終端或者X窗口下)滾動和編輯之前輸入的命令。按<ENTER>執行一個歷史命令
<ArrowDown>
回滾
<Shift><PgUp>
滾動終端輸出。對於登陸提示也起做用,因此你可使用它回滾啓動信息。你顯卡的內存大小決定你能夠回滾多少內容
<Shift><PgDown>
回滾終端輸出
<Ctrl><Alt><+>
(在X窗口下) 改變X服務器的屏幕解析率 (若是你設置X服務器有多個不一樣的屏幕解析率)。好比對於個人標準SVGA卡和顯示器,在文件/etc/X11/XF86Config有如下的設置行: (從缺省開始,到能夠支持的最大虛擬屏幕解析率)
Modes "1024x768" "800x600" "640x480" "512x384" "480x300" "400x300" "1152x864"Z
固然,首先我必須設置個人X服務器,可使用using Xconfigurator, xf86config, 也能夠手工編輯文件:/etc/X11/XF86Config。XFdrake (Mandrake使用圖形用戶界面進行配置 )。你也能夠參考命令xvidtune和xvidgen。
<Ctrl><Alt><->
(在X窗口下)把X服務器的屏幕解析率修改到上一次的設置。
<Ctrl><Alt><Esc>
(在X窗口,KDE下)關閉我鼠標將要指向的窗口(鼠標的光標形狀會有所改變)。一樣的效果也可使用命令xkill(在X終端上)來實現。當一個程序窗口被掛住的時候特別有用。
<Ctrl><Alt><BkSpc>
(在X窗口下) 終止當前的 X窗口服務。若是X窗口不能正常退出時可使用。
<Ctrl><Alt><Delete>
(適用於文本終端下)關機和從新啓動。這是一個在文本終端下的正常關機命令,千萬不要按計算機上的reset鍵來從新關機和從新啓動!
<Ctrl>c
終止當前進程(對於通常的小型文本模式的應用程序)
<Ctrl>d
(在一個空白的命令行上輸入)退出當前的終端。參加下一個命令。
<Ctrl>d
給當前的進程送文件結束符合。不要按兩次不然你會把本身退出系統。
<Ctrl>s
中止終端傳輸
<Ctrl>q
重新開始終端傳輸。若是你的終端忽然莫名其妙的中止響應,能夠參考上一條命令。
<Ctrl>z
把當前進程送到後臺處理。
exit
退出系統。我也可使用logout命令達到一樣效果。(若是你啓動了第二個shell程序,好比,使用bash,這條命令將使你退出第二個shell回到第一個shell,可是不會退出系統。固然,能夠再一次使用exit退出)
reset
恢復崩潰的終端(有些終端顯示一些奇怪的字符)到缺省的設置。當你使用cat命令準備顯示一個二進制文件時,你可能看不到你所輸入的命令,儘管命令仍然照常工做。
<鼠標的中間鍵>
粘貼當前選擇的文本。這是一個常規的Linux「複製-粘貼」操做。它是對被普遍採用的通訊用戶界面下「複製-粘貼」操做的一個很是有用的擴展(可是它不支持舊版本的NetScape,由於在舊版的NetScape只能使用MAC/Windows風格的「複製-粘貼」操做。若是你運行「setup」程序進行設置,你能夠在文本終端下使用這個功能。並且它在大多數的對話框裏也能很好的工做,真的很是方便!)若是你有一個「Linux-Ready」的鼠標(logitec或者其相似產品)或者你經過使用「模擬三鍵鼠標」,這個功能能夠獲得最大限度的發揮。通常來講,「第三鍵」的模擬是經過同時點擊左右兩個鼠標鍵來實現。
~
(水文符合) 個人主目錄(通常來書是/home/個人登陸名)。舉例,命令~/my_dir將修改個人工做目錄到個人主目錄的子目錄」my_dir」下。相對於輸入」cd ~」,你也能夠只輸入」cd」,我把個人全部文件都放在本身的主目錄下。
.
(點符號) 當前目錄。舉例:./my_program 將試圖執行當前目錄下的"my_program"文件
..
(兩個點)到當前的上一級目錄(也叫「父目錄」)。舉個例子,命令「cd..」將修改個人當前工做目錄到上一級目錄。
一些KDE的快捷鍵(頗有用,但不是非要不可的)
<Alt><Tab>
切換不一樣的程序窗口。往回切換,使用 <Alt><Shift><Tab>
<Ctrl><Tab>
切換不一樣的桌面。往回切換,使用 <Ctrl><Shift><Tab>
<Ctrl><Esc>
顯示我係統里正在運行的進程列表。容許我終止那些由我啓動的進程(或者送信號給這些進程)
<Alt><F1>
訪問K菜單 (對等於微軟Windows的的「開始」菜單).
<Alt><F12>
使用鍵盤上的箭號鍵模擬鼠標的操做
<Alt><鼠標左鍵>
拖曳並移動一個窗口。通常來講,我經過拖曳窗口的題目欄來移動一個窗口。有些時候,我用它把
一個窗口移動到屏幕以外。使用這個功能,我能夠把窗口移動到屏幕的任何位置。
<Alt><PrintScreen>
把當前屏幕的快照存到剪貼板
<Ctrl><Alt><PrintScreen>
把當前桌面的快照存到剪貼板
<Ctrl><Alt><l>
鎖定桌面
<Ctrl><Alt><d>
切換隱藏/顯示桌面的功能(當老闆走過來的時候迅速藏起你的紙牌接龍遊戲很是管用哦!)
<Alt><SysRq><command_key> (非必須掌握)
這是在Linux的內核(底層內核)上支持的一組組合鍵。它意味着這些組合鍵在大部分狀況下都是有效的。組合鍵主要是針對開發人員的程序調試目的或者在緊急場合下才使用;你也可使用其餘的辦法,安全第一。<SysRq>鍵在PC上指的是PrintScreen鍵。組合鍵的功能能夠經過設置相對應的內核參數來激活或者取消,好比: echo "1" > /proc/sys/kernel/sysrq
<Alt><SysRq><k>
終止在當前虛擬終端上運行的全部進程(包括X窗口)。這個組合鍵被稱爲「安全訪問鍵「(SAK).
<Alt><SysRq><e>
發送 TERM 信號(結束信號)到除了init進程之外的全部運行進程,要求其退出
<Alt><SysRq><i>
發送 KILL (終止信號)到除了init進程之外的全部運行進程, 這個組合鍵比上一個更加有效,可是也可能引發一些程序被異常終止。
<Alt><SysRq><l>
發送KILL命令到全部運行進程(包括init),系統將再也不可以使用
<Alt><SysRq><s>
在全部的掛載文件系統上運行緊急同步(緩存寫) 。這能夠保護數據丟失
<Alt><SysRq><u>
以只讀模式從新掛載全部已加載的文件系統。這和上面的同步組合鍵有相同的功能,可是另外有一個好處:若是操做順利完成,下一次硬件從新啓動時,fsck將不會從新檢查全部的文件系統。
<Alt><SysRq><r> 關閉鍵盤的原始模式。當你的X窗口程序掛住沒有響應時特別有用。使用這個組合鍵以後,你可能會接着使用<CTRL><ALT><DEL>程序啓動。
<Alt><SysRq><b>
不進行同步和卸載就馬上從新啓動系統。以後你可能會碰到一下錯誤信息。
<Alt><SysRq><o>
關機 (若是正確設置之後)
<Alt><SysRq><p>
導出當前的寄存器和標誌到控制檯
<Alt><SysRq><t>
導出當前任務和相關信息到控制檯
<Alt><SysRq><m>
導出內存的內容到控制檯
<Alt>SysRq><數字>
「數字」從0到9。設置控制檯記錄的級別,用於控制哪一些內核信息將被顯示在控制檯上。舉例,「0」意味着只有象PANIC和OOPS的之類的緊急信息才被顯示在控制檯上。
<Alt><SysRq><h>
顯示幫助信息。還有,任何其餘不被支持的 <Alt><SysRq><key> 組合鍵將顯示一樣的幫助。
5.2 幫助命令
命令名 –help | more
顯示一個簡略的命令幫助(對大部分命令有效)。舉個例子,試着使用 「cp –help | more」。「--help」和和DOS下的「/h」開關功能相似。當輸出超過一個屏幕時,加上「more」是頗有必要的。
man 命令名
顯示對應命令系統的幫助手冊。輸入「q」退出瀏覽器。若是你設置了高級選項,試着輸入「man man」。命令「info 命令名」 和命令「man 命令名」功能類似,可是包含更多的最新信息。幫助手冊對於新手可能有點難於讀懂——由於它們最初是寫來給UNIX程序員看的。使用「命令名 –help」能夠獲得一個簡略容易消化的命令幫助。有些程序自帶README文件或者其餘幫助信息文件----建議你能夠看看目錄/usr/share/doc。在指定的部分顯示命令幫助,可使用這樣的命令「man 3 exit」,這個命令只顯示exit命令幫助手冊的「第三部分」;或者使用命令「man –a exit」, 這個命令顯示exit命令幫助手冊的「全部部分」。exit命令幫助的全部部分是: 1-用戶命令;2-系統調用;3-子調用;4-設備;5-文件格式;6-遊戲;7-雜項;8-系統管理;9-新內容。打印完整的命令幫助,可使用命令「man 命令名 | col -b | lpr」(可選項col –b刪除全部的退格鍵和一些難以閱讀的特殊字符)。
info 命令名
顯示指定命令的幫助信息。info 命令是取代man 命令的一個好處是,它一般帶有最近更新的系統資料。多使用「空格鍵」和「退格鍵」,不然你可能會暈頭轉向。按「q」鍵退出。若是以爲用於翻閱的辦法不太好用――你也能夠試着使用pinfo命令,看你會不會更喜歡這個替代品。
apropos 命令名
對所輸入的命令名給出一個幫助一覽表。
whatis 命令名
給出匹配所輸入命令名的簡短清單。whatis命令有點象apropos――它們使用相同的數據庫。不一樣的是,whatis搜索的是關鍵字,apropos搜索的是關鍵字的具體描述。
help 命令名
顯示bash shell內置命令的簡單信息。使用 help 命令不帶任何參數將顯示bash shell全部內置的命令。最短的bash shell內置命令應該包括:alias, bg, cd, echo, exit, export, help, history, jobs, kill, logout, pwd, set, source, ulimit, umask, unalias, unset.
kdehelp
kdehelpcenter
(在X-終端下有效, 使用在你的系統上能夠工做的那一個命令). 使用圖形的瀏覽器顯示整個系統的幫助。通常來講,KDE幫助經過把對應的圖標放在KDE控制板上來實現。對等的GNOME幫助系統可使用gnome-help-browser命令。
5.3 系統信息
pwd
輸出工做目錄。舉例,在屏幕上顯示我當前所在的目錄
hostname
輸出本地主機的名稱(我正在使用的這一臺機器)。使用netconf修改機器的名稱(要求超級用戶權限)
whoami
輸出個人登陸名稱
id username
輸出用戶標識ID(UID)和其對應的用戶組標識ID(GID),有效的ID(若是不一樣於真正的用戶ID)和所屬的其餘用戶組
date
輸出操做系統的當前日期,時間和時區。若是要以ISO標準格式輸出,我必須使用命令「date –Iseconds」。
我能夠修改當前的日期和時間到2003-12-31 23:57,使用命令:date 123123572003。或者使用兩個命令(比較容易理解和記住):
date –-set 2003-12-31
date –set 23:57:00
若是要從新設置硬件時鐘(BIOS),可使用命令setclock,要求超級用戶權限。
time
偵測一個進程所須要的時間加上其餘處理的時間的總和。不要和上面提到的date命令混淆。好比,我可使用命令「time ls」來判斷顯示一個目錄須要多長時間;或者我可使用命令「time sleep 10」來測試time命令(睡眠10秒鐘,什麼也不作)。
clock
(兩個命令中的一個)從計算機的硬件(由電池供應的實時的硬件時鐘)得到日期/時間。你可使用這個命令來設置硬件時鐘,可是setclock可能簡單一些(看前面的兩個命令)。舉例:「hwclock –systohc –utc」命令把系統時鐘設置到硬件時鐘(以UTC格式)。
who
顯示登陸在系統裏的用戶
w
顯示登陸在系統裏的用戶,檢查他們正在作什麼以及他們的處理器使用情況。屬於經常使用的安全方面的命令。
rwho -a
(=remote who,遠端的who命令)。顯示網絡裏其餘計算機的用戶登陸情況。這個命令要求rwho服務必須在遠端機器上運行。若是沒有,以root用戶運行setup(RedHat特有)激活「rwho」。
finger 用戶名
顯示對於一個用戶的系統信息。能夠試一下命令:finger root。任何人均可以使用finger命令訪問任何一臺鏈接到因特網提供finger服務的計算機。好比:finger @finger.kernel.org
last
顯示最後一個登陸到系統的用戶。常常運行這個命令做爲系統安全檢測的手段之一是一個絕好的主意。
lastb
(「=last bad」,最後一個壞的)顯示最後一個不成功的登陸嘗試。可是這個命令在個人系統上不能工做,因此你可能要使用:touch /var/log/btmp
「/var/log/btmp在通常的系統安裝裏無效的主要緣由是由於:它是一個包含登陸的出錯信息的徹底可讀的文件。一個用戶登陸時最常常犯的錯誤是輸入用戶密碼做爲用戶名,這樣,文件/var/log/btmp對計算機黑客來講簡直是一個禮物」。(謝謝Bruce Richardson提供這個信息)。
若是要解決這個問題,修改該文件的文件訪問權限爲只有root用戶纔可使用命令「lastb」。命令:「chmod o-r /var/log/btmp」
history | more
顯示當前用戶在命令行模式下執行的最後(1000個)命令。參數「|more」在輸出滿屏時暫停。若是要檢查其餘用戶在你係統上都運行了什麼,以root用戶登陸,檢查在該用戶主目錄下的文件「.bash_history」(沒錯,該文件能夠被修改和刪除)。
uptime
顯示自從上一次啓動到如今機器運行的總時間。
ps
(= 「print status」或者 「process status」,打印狀態或者處理狀態)列出由當前用戶運行的進程一覽。
ps axu | more
列出當前運行的全部進程,包括那些不是來自控制終端的進程,在顯示用戶進程的同時顯示用戶名。
top
持續列出正在運行的全部進程,按CPU的佔用率排序(佔用率高的排在最前面)。按<CTRL>C退出。
PID = 用戶標識
USER = 啓動或者擁有該進程的用戶.
PRI = 進程的優先級別(值越大,優先級別越低,通常進程是0,最高的級別是-20,最低的級別是20。
NI = 優化級別(好比,進程試圖以預先給定的優先級別的數值來運行)。數值越高,進程的優化級別也越高(優先級別越低)
SIZE = 進程加載到內存的代碼+數據+堆棧的字節總數(以千字節計算)
RSS = 物理內存被佔用的大小(以千字節計算)
SHARE = 和其餘進程共享的內存(以千字節計算)
STAT = 進程的當前狀態 S-睡眠, R-運行,T-中止或者被跟蹤,D-不可中斷的睡眠,Z-不死的進程
%CPU = CPU佔用慮百分比(自從上一次屏幕更新以來)
%MEM = 共享物理內存的佔用率
TIME = 進程佔用的CPU時間 (自從進程啓動以來)
COMMAND=啓動該任務使用的命令行(當心命令行裏出現的密碼等信息,有權限運行top命令的用戶均可以看見它們!)
gtop
ktop
(X終端)在圖形用戶界面下的兩個top功能。我比較習慣使用gtop(在gnome自帶)。在KDE環境下,ktop在K菜單的「System」菜單下的「Task Manager」裏。
uname –a
(=「Unix Name」帶可選項「all」)顯示你本地計算機信息。也可使用通訊用戶界面的guname(X終端下)獲得更好的信息顯示。
XFree86 –version
顯示本地計算機的X-Windows的版本。
cat /etc/issue
檢查你的發行版本。你也能夠把你本身的信息放到文件/etc/issue裏――在用戶登陸的時候會顯示。若是你想要顯示更多的信息,還有一個比較常見的作法是把本地專有的登陸信息內容放在文件/etc/motd裏 (「motd」=「message of the day」,當天信息)
free
內存的信息(以千字節顯示)。「共享」內存是指能夠被多個進程共同享有的內存(好比,可執行代碼是「共享」的)。「緩衝」和「緩存」則是用來保留最近訪問的文件和數據――當其餘進程須要更多的內存時候這些內容能夠被減縮。
df -h
(=disk free 硬盤剩餘空間) 輸出全部文件系統的硬盤信息(以易讀的模式, h-human readable, 人類可讀)
du /-bh | more
(=disk usuage, 硬盤使用情況)輸出根目錄「/」下每一個子目錄具體的硬盤使用情況
cat /proc/cpuinfo
CPU信息――它顯示文件cpuinfo的內容。要注意的是文件在/proc目錄下不是真正的文件――它們只是在觀察內核信息時起鏈接的做用。
cat /proc/interrupts
顯示正在使用的中斷號。在配置一個新硬件的時候可能須要瀏覽一下。
cat /proc/version
Linux的版本和其餘信息
cat /proc/filesystems
顯示當前使用的文件系統的類型
cat /etc/printcap |more
顯示打印機的設置
lsmod
(= "list modules". 顯示模塊。必須是root用戶,若是不是,使用命令/sbin/lsmod執行)顯示當前已經加載的內核模塊 .
set|more
顯示當前的用戶環境(所有顯示)。通常來講東西太多了。
echo $PATH
顯示環境變量「PATH」的內容。這個命令也能夠用來顯示其餘的環境變量。使用set來察看全部的環境變量(和前一個命令功能相同)
dmesg | less
輸出內核信息(也就是常說的內核內部緩存信息)。按「q」退出「less」。也可使用 「less /var/log/dmesg」來直接檢查最近一次系統啓動時「dmesg」輸出到文件裏的內容。
chage -l my_login_name
查看個人密碼過時信息
quota
查看個人硬盤區間(硬盤使用的限制)
sysctl -a |more
顯示全部可設置的Linux內核參數
runlevel
輸出和前一個和當前的運行級別(runlevel)。輸出「N5」意味着:「沒有前一個運行級別」和「5是當前的運行級別」。要修改運行級別,使用「init」,舉例:「init 1」把當前的運行級別切換到「單用戶模式」。
運行級別是Linux的操做模式。運行級別可使用init命令進行快捷的修改。舉例,「init 3」將把模式切換到運行級別3,如下是運行級別的標準:
0-中斷 (不要把系統初始設置「initdeafult」設成這個值)
1-單用戶模式
2-多用戶模式,不帶NFS(若是你沒有網絡,和運行級別3相同)
3-全功能多用戶模式
4-目前沒有使用
5-X11 (圖形用戶界面)
6-從新啓動(不要把系統初始設置「initdeafult」設成這個值)
系統的初始運行級別設置在文件:/etc/inittab裏
sar
查看抽取系統活動記錄文件信息(/var/log/sarxx, 其中xx指的是當前的日期)。sar能夠抽取不少種系通通計信息,包括CPU的平均載荷,i/o的統計,當天的網絡流量統計或者是幾天之前的數據。
5.4 基本操做
ls
dir
列出當前目錄的內容。dir命令是ls命令的一個別名,因此這兩個命令在文件羅列時使用的顏色代碼是絕對一致的:
深藍色=目錄
淺灰色=通常文件
綠色=可執行文件
紫色=圖形文件
紅色=壓縮文件
淺藍色=連接文件
黃色=設備文件
棕色=FIFO文件(先進先出,命令管道)
ls -al |more
列出當前目錄的內容,全部文件(包括那些以「點號」開頭的隱含文件),並以「長格式」顯示。把全部輸出定向到管道more,在屏幕滿屏時能夠暫停。ls命令還有不少其餘的很是有用的可選項。還有一些快捷鍵能夠減小麻煩的命令輸入。試試ll(=長格式羅列,至關於ls –l)。另一個我常用的可選項是「ls –ad」(列出全部當前目錄下的子目錄可是不輸出它們的內容)。
cd 目錄
修改當前目錄。只輸入「cd」沒有指定目錄名將切換到你的主目錄。「cd –」將切換到上一次你訪問的目錄,這個命令在兩個不一樣的目錄之間切換時很是方便。「cd ..」將退到當前目錄的上一級目錄(父目錄)。
./程序名
在當前目錄下運行一個可執行程序。當可執行文件不在個人PATH下時,「./」是必須的。一個在個人PATH下的可執行文件能夠簡單的輸入程序名運行而不須要「./」。
shutdown -h now
(要求root用戶)關機。通常用於在遠程關閉計算機。在控制檯上可使用<CTRL><ALT><DEL>來關閉計算機(全部用戶均可以)
halt
reboot
init 6
(三個命令都要求root用戶)關機或者從新啓動計算機。主要用於遠程系統從新啓動,比上面的命令要簡單一些。若是計算機中止響應時很是有用,我通常經過網絡從其餘機器telnet到中止響應的計算機上而後從新啓動它。在本地計算機上,我則通常使用<CTRL><ALT><DEL>來從新啓動。
vlock
(舊版本的RedHat沒有這個功能)鎖住當前的文本終端。也可使用vlock –a鎖住全部的終端(可能不是什麼好主意)。最好的作法通常是使用logout命令退出系統。你不能在圖形用戶界面的終端上使用vlock命令――由於窗口管理器自帶一個屏幕保護程序和一個加鎖的工具(在KDE下一個小的鎖型標誌,鍵盤快捷鍵<CTRL><ALT><L>)。
5.5 文件管理
cp source destination
複製源文件source 到目標文件destination。舉例「cp /home/stan/existing_file_name .」將複製文件到個人當前工做目錄。使用「-R」可選項(表明「recursive」)複製整個目錄樹的內容,好比:「cp -R my_existing_dir/ ~」將複製我當前工做目錄的一個子目錄到個人主目錄裏。
mcopy source destination
從DOS文件系統複製一個文件或者複製一個文件到DOS的文件系統裏(不須要掛載DOS文件系統)。舉例:
「mcopy a:\autoexec.~/junk」。查看「man mtools」瞭解更多的相關命令,能夠不須要掛載DOS文件系統就能夠直接訪問DOS文件,好比命令:mdir, mcd, mren, mmove, mmd, mrd, mformat ...咱們不是很常用mtool的命令是由於――一般能夠把DOS/MS Windows的文件系統掛載到Linux裏,而後用Linux的常規命令來訪問這些文件。
mv source destination
移動文件和更改文件名。對於文件和目錄的移動和更名均可以使用這個命令。
rename 字符串 更新字符串 文件名
很好用的文件名修改工具。舉例:「rename .htm .html *.htm」把全部的以「htm」爲擴展名的文件名裏的「htm」所有換成「html」。
ln source destination
從叫作source的源文件建立一個叫作destination的目標文件的「硬連接」。這個文件看起來好像是一個源文件的複製文件,可是實際上只保留了一個文件的硬拷貝,只是兩個(或者多個)目錄的入口指到同一個文件上。任何對這個文件所做的修改在全部地方均可以看得見。當一個目錄得入口刪除後,其餘得目錄得入口保持不變。「硬連接」的侷限性是:文件必須在同一個文件系統裏,建立目錄或者一些特殊文件的硬連接是不可能的。
ln -s source destination
從叫作source的源文件建立一個叫作destination的目標文件的「標誌連接」(軟連接)。「標誌連接」只是指定到「真實文件」的訪問路由。和「硬連接」相比較,它的好處是源文件和目標文件能夠在不一樣的文件系統裏。「標誌連接」也有本身的不足之處:若是「真實文件」被移動或者刪除,「連接」就被破壞――不知道路徑指到什麼地方;「軟連接」能夠產生「循環參照」(就象數據庫或者電子表格,舉例:a指向b,b指向c,c指向a)。簡而言之,標誌連接很是有用並且也很經常使用(比「硬連接」要經常使用得多),可是同時可能帶來一些文件管理的複雜性。
rm files
刪除文件。你必須是擁有這些文件纔可以刪除它們(或者是root用戶)。在不少系統裏,你將會被提問是否確認刪除文件。若是你不想被提問,使用「-f」(=force,強制刪除)參數。舉例:rm –f * 將刪除全部當前工做目錄下的全部文件,並且沒有任何確認提示。
mkdir directory
建立新目錄。
rmdir directory
刪除一個空目錄
rm -r files
刪除文件,目錄和全部它們的子目錄。做爲root用戶,要當心使用這個命令――若是你在頂級目錄樹上執行這條命令,你將刪除系統裏全部的文件,到目前爲止在Linux裏尚未「取消刪除」的命令。若是你真的想要這麼作(再仔細想一想?),這裏告訴你該怎麼辦:使用命令 」rm –rf /*」。
rm -rf files
(強制)刪除文件,目錄和全部它們的子目錄如上所述,可是跳過確認信息提示。若是你是root用戶,絕對要當心使用這個命令。
mc
激活「Midnight Commander」文件管理器(看起來有點象Linux下的Norton Commander)。根據一些恐龍級的計算機用戶的反映,這是至今爲止最好的文件管理器。
konqueror &
(在X終端下)激活KDE文件管理器。也許這是文件管理器的極品。比微軟的文件瀏覽器要好得多。它集成了網頁瀏覽,PDF文件閱讀和其餘功能。真的很酷!
xwc
(在X終端下)另一個很出色的文件管理器,是X-Win-Commander的縮寫。比Konqueror的速度快,可是功能上稍微遜色。
nautilus &
(在X終端下)一個真正很酷的文件管理器。比Konqueror要慢,可是提供了一些有用的功能――好比圖標提供文件內容預覽!它甚至能夠預覽聲音文件!可是對CPU速度依賴較大,它在個人1.33GHZ的計算機上運行出色,可是我歷來不在個人133MHZ的老機器上使用它。
5.6 查看和編輯文件
cat filename | more
這個命令用於查看一個被稱爲 "filename"的文本文件的內容,每次一頁. "|"符號是"pipe" 符號(在不少美式鍵盤裏, 它與"\"共用一個鍵). more 使文本內容的輸出顯示中止在每一屏.對於長文件,有時能夠很方便地使用head 和tail 來顯示文件的開始和結尾部分或用less 使之能上下滾動. 若是你恰巧使用 cat顯示一個二進制文件,你的終端隨後顯示古怪的字符, 你能使用reset命令恢復它.
cat filename | less
less filename
(選用二條命令之一) 滾動一個文本文件的內容.退出按q . "less" 大體至關於 "more" , 該命令來自 DOS,但常常 "less"比 "more"更方便由於它可以使我能使用滾動條上下滾動.
head filename
顯示長文本文件的前10行.
tail filename
顯示長文本文件的最後10行. 使用tail -f filename讓文件的末尾持續讀取該文件的不斷出現的數據.
pico filename
使用簡單,標準的文本編輯器pico來編輯一個文本文件. 使用 <Ctrl>x推出. Linux有不少文本編輯器, 包括幾個基於圖形用戶界面的編輯器. 一個新的 pico 克隆版(GPLed) 是 nano.
pico -w filename
編輯文本文件, 沒有文本行長度的限制.對於編輯配置文件很方便, 如. /etc/fstab.
kwrite
(在X終端) 很不錯, "高級文本編輯器". 支持垂直文本選擇!
kate
kedit
gedit
(在X終端).簡單但很好的文本編輯器 (基於GUI).
gxedit
(在X終端)另外一多用途,具特點的文本編輯器. 它甚至於能定時備份.
latte
(在X終端) "代碼" 編輯器, 即, 用於寫程序的無格式文本編輯器.
nedit
(在X終端) 另外一種程序編輯器. 很好.
bluefish
(在X終端) html 編輯器 (源碼的句法高亮標註, 有不少工具和選項).
ispell filename
一個 ASCII 文本文件的拼寫檢查命令. AbiWord, WordPerfect, StarOffice 和其它文本處理器都使用鍵入就檢查的策略,因此除非須要,不然你不用擔憂簡單的 ispell 命令. Linux 新版本(如, RH7.0) 包含了功能加強的拼寫檢查模塊, 稱爲 aspell,但上面的命令仍然工做.
look thermo
在你的系統單詞目錄(/usr/share/dict/words)中查尋開始於"thermo"的單詞.
wvHtml ms_word_document.doc > filename.html
轉化MS Word 文件到 html文件.
5.7 查找文件
find / -name "filename"
在你的文件系統中從根目錄"/"開始搜索被稱爲"filename"的文件. "filename"文件名能夠包含通配符(*,?).
find命令功能強大.它有不少選項讓你以不一樣的方式搜索文件.例如, 經過日期, 文件大小, 權限,擁有者等等.但一些的搜索查詢要花上幾分鐘編寫. 查看info find. 這裏是一些使用 find 來完成一些有用的任務的複雜例子.
find $HOME -name core -exec rm -f {} \;
以上命令從你的$HOME目錄開始尋找, 發現名字是 "core"的文件. 對於每個這種被找到的文件,執行 "rm -f" (強制刪除文件). {} 表明了已發現的文件, "\"終止了該命令列表.
find /dev -user "peter" |more
以上命令顯示由用戶 "peter"所擁有的全部設備的文件.顯示文件名是 find命令的默認行爲,因此若是這就是我所要作的,無須特別指定.
find /home/peter -nouser -exec ls -l {} \; -ok chown peter.peter {} \;
在/home/peter目錄下找到非有效擁有者的文件.以長格式列出文件.而後將這些文件的全部權改成用戶"peter" 和 組 "peter". 要處理文件的全部權, 你可能必須是超級用戶.
locate filename
發現包含字符串"filename"的文件名.這比前面的命令更容易, 更快, 但基於數據庫(一般在夜間重建),因此你沒法找到剛剛存到文件系統的文件. 爲了強制當即更新數據庫, 做爲超級用戶可使用: updatedb&.
which executable_name
若是我在命令行鍵入可執行文件的名字, 顯示該可執行文件的全路徑.例如, 這條命令:
which mozilla。個人系統出現:
/usr/bin/mozilla
whereis command
顯示"command"命令的二進制文件, 源文件和手冊的位置.
rgrep -r 'celeste' . |more
grep -r 'celeste' . |more
(二條命令, 在你的系統中選用一條).在當前目錄和全部子目錄中搜索含有字符串"celeste"全部文件(選項"-r"表明遞歸). 顯示文件名和在文件中包含所尋找的字符串所在的行.
kfind &
(在X終端). 在一個GUI前端界面使用find and grep. 很不錯. 命令行末尾的& 使find運行在後臺以便使X終端保持可用狀態。
5.8 X-windows基礎
xinit &
啓動基本的X-windows服務器(沒有 windows管理器). "&"使命令運行在後臺.
startx &
啓動X-windows服務器和默認windows管理器.就象在帶有Win3.1的DOS下鍵入"win" .
startx -- :1 &
在顯示進程1中啓動另外一個X-windows(默認顯示進程爲0). 你可以同時運行幾個 GUI 終端.在這些界面之間使用<Ctrl><Alt><F7>, <Ctrl><Alt><F8>來轉換.
xterm
(在X終端) 運行一個簡單的 X-windows終端. 鍵入 exit將關閉它.對於Xwindows 有其它更高級的」虛擬」終端.我喜歡廣泛使用的 konsole 和kvt (兩者均來自 kde) 和gnome-terminal (來自 gnome). 若是你須要看起來更奇特的終端, 試試Eterm. 我還能夠選擇簡單, 運行快的rxvt.
startkde
gnome-session
xfce
afterstep
AnotherLevel
fvwm2
fvwm
(在X終端, 7 條不一樣的命令, 使用其中之一來啓動你喜歡的windows 管理器). 在X服務器上在一個X終端啓動你喜歡的windows 管理器.
5.9 網絡應用程序
mozilla &
(在X終端下) 運行mozilla網頁瀏覽器。如今的版本是Mozilla 1.01 (2002年10月),這個瀏覽器很是不錯。Mozilla是Netscape的一個衍生品(在老的Linux系統上通常使用NetScape)。還有其餘幾個不錯的替代品好比konqueror和galeon (在Linux的X終端上輸入konqueror和galeon直接運行)
mozilla –display host: 0.0 &
(在X終端下)在當前的計算機上運行Mozilla如何把輸出定向到叫作「host」的計算機的第0個顯示器的第0個窗口屏幕。你當前的計算機必須有權限在 「host」 計算機顯示內容(通常的作法是,在「host」計算機上的X終端輸入命令「xhost [當前的計算機名]」。其餘的X-Windows的程序也能夠經過一樣的辦法來運行)。
lynx file.html
以純文本方式來瀏覽html超文本文件。儘管lynx看起來不像基於圖形用戶界面的網頁瀏覽器那麼出色,可是它很小巧,幾乎沒有出差錯的時候,也不須要什麼特殊的設置,只要你的網絡是正常的。
konqueror &
(在X終端下) 集成了文件管理器和網頁瀏覽器的功能。很不錯,和Mozilla的不少功能能夠一比高低。KDE自帶的軟件。
pine
一個很不錯,老古董的文本郵件閱讀工具。還有另一個老古董是elm。你的Mozilla將會閱讀你因特網上的郵件,pine則讓你閱讀「本地」的郵件。好比,你兒子的郵件或者在你網絡裏的另一臺計算機的cron進程發送給你的信息。命令mail也能夠用來閱讀和寫郵件,可是沒有那麼方便使用。
mutt
一個很是基本可是及其有用的快速郵件閱讀工具。
給email使用的一個基本的操做系統工具。若是你只是要閱讀郵件,能夠參考上面的快速email閱讀命令。若是你要在shell腳本上發送郵件,mail卻是一個很好的選擇。
kmail &
(在x終端下)很好的圖形用戶界面的郵件程序。我使用kmail,由於它比Netscape的mail作得要出色的多。我能夠擁有多個電子郵件賬號,而後分別從本地的smtp服務器和ISP的pop3服務器上下載郵件到同一個收件箱。簡單易用,支持數字簽名。
licq &
(在x終端下)一個ICQ的客戶端程序。還有另一個不錯的選擇是kxicq。就的Linux發行版本不帶licq客戶端程序,你可能須要本身下載安裝。
knode &
(在x終端下)啓動我喜歡的新聞組閱讀器(usenet)。比Netscape內置的閱讀器要好。
talk username1
和另一個登陸在系統裏的用戶交談(也可使用「talk username1@machine_name」來和另一臺計算機上的用戶交談)。要接受會談請求,輸入命令「talk username2」。若是你正在忙着而有人想要和你交談,你可使用命令「mesg n」拒絕接受信息。你可使用命令who或者rwho來查看有哪些用戶當前登陸在系統裏。talk是一個老古董的UNIX標準工具,在某些場合下仍然很是有用。
telnet server
使用telnet協議鏈接到另一臺計算機。可使用計算機名或者IP地址。你會要求輸入用戶登陸名和密碼――你必須在遠端計算機上有有效的用戶賬號和密碼。telnet將讓你鏈接到另一臺計算機上好像你就在使用那一臺計算機的鍵盤(幾乎徹底同樣)。telnet不是很是安全――你輸入的任何東西在網絡上都是開放的文本模式,包括你的密碼!一個在「傳輸路徑」上稍微有點專業知識的系統管理員就能夠閱讀你所輸入的內容。若是你要加密的傳輸,使用ssh(須要一些系統設置)。
rlogin server
(=remote login,遠程登陸)。這將使用你在當前登陸系統上使用的用戶名和密碼,若是登陸失敗將會提醒你輸入密碼。
rsh server
(=remote server) 鏈接到遠程計算機的另一個辦法。這將使用你在當前登陸系統上使用的用戶名和密碼,若是登陸失敗將會提醒你輸入密碼。
ssh servername –l username
(=secure shell,安全的shell)使用安全鏈接遠處登陸到另一臺計算機。ssh是安全的,由於它使用一對RSA「公共-私有」鑰匙壓縮全部傳送的數據。若是你沒有指定用戶名,它假設你使用當前的用戶名。
ftp server
ftp到另一臺計算機(還有一個ncftp帶有一些附加的功能,另外還有基於圖形用戶界面的gftp)。ftp對於從一臺計算機上覆制文件到另一臺計算機上很是有用。能夠試着用「anonymous」(匿名)用戶若是你在遠程計算機上沒有有效賬號。創建鏈接以後,使用「?」查詢有效的ftp命令一覽。最基本的ftp命令有如下這些:
ls 查看遠程計算機上的文件
ASCII, binary 設置文件傳輸模式爲「文本模式」或者「二進制模式」,選擇正確的模式很是重要
get 從遠程計算機上覆制一個文件到本地計算機
mget 從遠程計算機上覆制多個文件到本地計算機
put 從本地計算機上覆制一個文件到遠端計算機
mput 從本地計算機上覆制多個文件到遠端計算機
bye 結束鏈接
若是你要使用腳本文件實現自動化,你能夠考慮ncftpput和ncftpget,舉例:
ncftpput –u my_user_name –p password –a remote.host.domain.remote_dir *local.html
若是你的計算機在防火牆後面,ncftpput可能會有一些問題-你須要配置文件/home/user_name/.ncftp/firewall。另一個選擇,你也可使用lftp來達到一樣目的:
lftp –e 「mput –a *local.html」 –u my_username, my_password ftp://remote.host.domain
若是要保留ftp目錄的鏡像,可使用命令fmirror:
wget -m --no-parent http://sunsite.dk/linux-newbie
從網站上覆制文件。以上這個例子使用可選項-m(mirror,鏡像)從主站上得到完整的文件集合。可選項「--no-parent」限制搜索子目錄裏的文件。
minicom
minicom是一個專門給串行口設計的「終端模擬器」。看起來和用起來都很象「procomm」或者「telix」。對於串行口通訊的故障診斷很是有用。
rx
使用Zmodem,Ymodem和Xmodem協議接收文件。Xmodem須要文件名。輸入rx –help獲得更多的信息。如今還有誰在使用這些協議?
5.10 文件壓縮和解壓縮
tar -zxvf filename.tar.gz
(=tape archiver,磁帶壓縮) 解壓一個你從因特網上下載的tarball文件 (*.tar.gz or *.tgz)。
tar -xvf filename.tar
拆解一個tarred(可是沒有壓縮)的文件。
tar czvpf /var/backups/mybackup.tar.gz /home
cd /; tar xzvpf /var/backups/mybackup.tar.gz '*/myfile.rtf'
做爲root用戶,建立一個/home目錄的備份壓縮文件。第二條命令顯示如何從備份恢復一個文件。在tarball文件裏將不包含「點」文件(指的是以「 .」開頭的文件或者目錄)。要把全部文件解包,可使用:tar cvzf filename.tgz * .[a-aA-Z]*
gunzip filename.gz
解壓一個壓縮文件(*.gz或者*.z)。若是你想把文件壓縮成這種格式,可使用 gzip(還有zip或者compress命令)。注意一下gunzip有趣的發音聽起來象「gun zip」(大炮壓縮)。
zcat filename.gz | more
(=zip cat)顯示一個壓縮文件的內容。還有其餘一些相關命令不須要預先解開壓縮文件就可使用:zless, zmore, zgrep…等等。
bunzip2 filename.bz2
(=big unzip)解壓一個由bzip2壓縮工具壓縮的文件(*.bz2)。通常用於很大的文件。
unzip filename.zip
解壓一個由DOS下的PKZIP壓縮工具壓縮的文件(*.zip)
zip filename.zip filename1 filename2
把兩個文件「filename1」和「filename2」壓縮到一個壓縮文件叫作 「filename.zip」。
unarj e filename.arj
解壓一個使用arj壓縮的文件(*.arj)
lha e filename.lha
解壓一個使用lha壓縮的文件(*.lha)
uudecode -o outputfile filename
解碼一個使用uuencode的文件。uu-encoded在使用email傳送非純文本文件的時候應用很是普遍(uuencoded把任何文件格式都變成文本文件)
cat filename | mimencode -o filename.mime
cat filename.mime | mimencode -u -o filname
(兩個命令)第一個命令把文件filename編碼成基於因特網郵件7bit數據傳送標準的文件filename.mime。第二個命令把基於因特網郵件7bit數據傳送標準的文件filename.mime解碼成通常文件filename。
ar -x my_archive.a file1 file2
(=壓縮存檔)。從壓縮文件my_archive.a解壓出文件file1和file2。ar壓縮工具更多的用於保存文件庫記錄。
ark &
(在X終端下)。一個圖形用戶界面的壓縮工具。也許是你管理壓縮文件所須要的方便工具。還有另一個選擇是gnozip。
5.11 進程控制
ps
(=「print status」or 「process status」)列表顯示當前正在運行的進程的進程標識號(PID)。用ps aux查看你的系統上下在運行的全部進程(也包括其餘用戶的進程和沒有終端控制的進程),每一個進程都顯示其全部者的名字。使用「top」命令持續顯示當前正在運行的進程列表。
any_command &
在後臺運行任務命令(符號「&」表示「在後臺運行前面的命令」)。任務號(Job_number)(譯者注:和進程號)將顯示在屏幕上,你可使用任務號將該任務調到前臺(見下面)。當我從一個X終端啓動一個GUI程序時,我常用「&」。
jobs
列表顯示後臺運行或是被中止了的進程並顯示它們的任務號。
fg job_number
將一個後臺運行的或是被中止了的進程調到前臺運行
bg job_number
將一個進程調至後臺運行,這與在命令行用「&」啓動後臺進程是徹底同樣的。這將從新啓動一個被中止了的後臺進程。通常能夠用<Ctrl>z來中止當前的前臺進程。若是你有被中止的或後臺運行的任務,你必須在命行輸入exit命令兩次,以從系統中註銷。
batch
at>updatedb<Ctrl>d
在系統負荷低的時候執行任何命令(常常昌須要長時間完成的任務)。你能夠從系統中註銷,但進程將繼續運行。當命令完成後,一封包含輸出信息的電子郵件將發送給你。在以上示例中,「at>」是一個提示符,將要執行的命令是updatedb,而後按<Ctrl><d>來結束命令的輸入(你能夠輸入不少命令提交執行,用<Enter>來分隔它們)。
at 17:00
在指定時間執行命令。你將被提示輸入要執行的命令,直到你按<Ctrl>d。相關的命令有atq(顯示由at啓動的進程隊列)和(從「at 隊列」中刪除一個進程)
kill PID
強制一個進程終止。首先要用ps肯定終止的進程的進程標識號(PID)。
killall program_name
經過程序名終止一個(組)程序。例如:killall pppd將斷開你的撥號網絡。
Nohup program_name
(=no hangup)。運行程序program_name,並使它在你註銷時不被中斷。輸出結果被重定向到你的用戶的主目錄下的nohup.out文件。在你確信不想運行一個交互程序的時候,使用nohup。
Xkill
(在X終端中)用鼠標終止一個基於GUI的程序。(用你的鼠標指到你要終止的進程的窗口並點擊)
kpm
(在X終端中)KDE進程管理程序
lpc
(由root用戶執行)檢查和控制打印機。輸入「?」能夠查看命令列表。
lpq
顯示打印機隊列的內容。在你可從「K」菜單-實用程序(「K」menu-Utilities)中調用基於GUI的「打印機隊列」(「Printer Queue」)
lprm job_number
從打印隊列中刪除一個打印任務。
nice program_name
執行一個程序並調整及優先級。由於在本例中沒有指定優先級,將從缺省優先級(一般是0)增長10(進程將運行較慢)。較小的值,表明較高的優先級。優先級的取值範圍爲-20到19。只有root用戶能指定負值。用top可顯示正在運行的進程的優先級。
renice –18 PID
(以root用戶運行)將一個正在運行的進行的優先級調整爲-18。普通用戶只能調整他們本身的進程,並且只能從當前值向上調(即便其運行變慢)。可使用renice +10 –u peter來減小用戶peter對CPU資源的佔用,這樣當他運行高強度運算任務時,使其餘用戶不受到損害。
<Ctrl>c,<Ctrl>z,<Ctrl>s和<Ctrl>q也屬於本章內容,但它們在前面已經描述過了。簡單地說,它們表示中止當前命令,調度當前命令到後臺運行,中止數據傳輸,恢復數據傳輸。
lsof
列表顯示已經打開的文件。若是你是root用戶,全部的打開的文件都將被顯示。使用lsof /dev/tty1你能夠指定顯示由第一控制檯全部的進程打開的全部文件。要想只顯示網絡文件(對安全審計很是有用),你可使用lsof –I(以root用戶執行)。
Watch –n 60 my_command
以60秒爲間隔反覆執行my_command命令(缺省間隔爲2秒)
5.12 一些管理命令
su
(=substitute user id)採用超級用戶(=root)的身份(將提示你輸入口令)。輸入「exit」返回你先前的註冊。不要習慣於用身份在你的機器上工做。root賬戶是用於管理的,當你須要訪問管理賬戶時,su命令可使你輕鬆進入。你也可使用su命令去採用其餘任何用戶的身份,例如:su barbara將你變成「barbara」(除非你是超級用戶,不然須要口令)。
Alias ls=」ls –color=tty」
爲命令產生一個別名,用增長一個關於顏色的格式。在這個例子中,別名也叫「ls」,只有當輸出被指向一個終端(而不是文件)時,color選項才被執行。若是你想讓系統上的全部用戶始終能使用這個別名,就把它寫到/etc/bashrc文件中。別名是定製你的系統的一種方便的方法。只輸入「alias」能夠查看你的賬戶可以使用的別名的列表。使用unalias alias_name能夠刪除一個別名。
cat /var/log/httpd/access_log
顯示自從上第二天志文件被「轉動」(通常天天在cron程序運行時轉動一次)後,誰鏈接過你的http(apache)服務器。前一次的日誌文件爲access_log.1,再前一次的日誌文件access_log.2,依此類推。
cat /var/log/secure
(以root用戶運行)檢查重要系統日誌。若是你使用Internet訪問的話,定時檢查的一個很好的主意。
ftpwho
(以root用戶運行)檢查當前誰鏈接在你的ftp服務器。
printtool
(在X終端上以root用戶運行)打印機配置工具。設置文件存放在/etc/printcap和/var/spool/lpd目錄下。
setup
(以root用戶運行)配置鼠標、聲卡、鍵盤、和系統服務。許多發行套裝都有本身特定的配置實用程序,setup是Redhat的缺省配置程序。Mandrake 7.0提供很是好用的DrakConf。
linuxconf
(以root用戶運行,在文本模式或是在X終端上)。在這裏你能夠訪問和更改上百種網絡設置。功能很是強大――一次不要改動太多東西,改動你所不清楚的項目時必定要當心。Redhat網絡配置工具netconf是linuxconf的一個子集,所以它比較簡單並且不少時候容易使用。
mouseconf
(以root用戶運行)。一個配置鼠標的簡單工具(在完成初始安裝後)。Mandrake也有一個相似的工具mousedrake。
kudzu
(以root用戶運行)。自動檢測和配置硬件。若是你的鼠標(或是其餘串行設備)有問題,你可能想要停用kudzu,這樣它在系統啓動過程當中就不會運行(kudzu弄亂了個人系統,使個人鼠標不能工做)。你能夠在你須要時手動運行它。
timeconfig
(以root用戶運行)爲你的系統設置時區。個人計算機的硬件時鐘保存的時間是UTC(協調世界時,也稱GMT或格林威治時間)。這樣,我避免了任何在轉換時區時(由夏時制、經過網絡跨洲傳送文件或是旅行外出引發的)可能發生的問題。時慣上在服務器上使用UTC時間來避免時間「倒流」(有時會引起一些問題)。文件的時間戳老是保持使用UTC時間,並使用時區信息來顯示當地時間。例如,許多應用程序(如編譯器,數據庫)是依靠比較文件的時間戳來區分新的文件與舊的文件的。保證時區信息正確是很重要的。我將當地時間做爲BIOS時間來避免發生問題的惟一緣由是,當個人從一臺計算機上進行雙重啓動,而其它操做系統(MS Windows?)不知道如何處理UTC。而後,我經過選擇「Hardware clock set to GMT」來告訴Linux服務器,這Linux樣在須要UTC時,能夠計算出來。
setclock
(以root用戶運行)。從當前linux系統時間設置計算機硬件時鐘。首先,使用「date」命令設置Linux系統時間。例如,我能夠將日期和時間改成2000-12-31-23:57,使用命令:
date 123123572000
而後將時間寫到硬件時鐘,使用命令:
setclock
dateconfig&
(在X終端上,以root用戶運行,不然將提示你輸入root用戶口令)。一個很是棒的GUI實用工具,用於設置操做系統時間、硬件時鐘和時區信息,告之BIOS使用UTC時間,而不須要前面的兩個命令。
Xvidtune
(在X終端上)調整全部分辯率下的顯示器設置,以消除黑帶,上下左右調整顯示,等等。(首先使用顯示器自身的調整按鈕,使得文本模式在屏幕上正確顯示)。而後用xvidtune針對每種分辯率調整顯示頻率,使其在屏幕上正確顯示。爲了使改動保持下去,在屏幕上顯示頻率,而後將它們傳送到/etc/X11/XF86Config設置文件中。在較新型的顯示器上,你可能更願意使用顯示器的內建設置來調整你的顯示器,xvditune主要是給那些沒有記憶設置參數的功能的老式顯示器用的。
Kvideogen
(在X終端上)爲定義你的屏幕分辯率產生「模式行」。在產生設置文本(「模式行」)後,你能夠將其複製-粘貼到的設置文件/etc/X11/XF86Config中(或是/etc/X11/XF86Config-4,若是你使用X-sever 4.00版本)。另見快捷鍵<Ctrl><Alt><+>。
SVGATextMode 80x25x9
SVGATextMode 80x29x9
(以root用戶運行)修改文本終端的文本分辯率。在示例中(第二行)我我將文本屏幕改成80列x29行,字符高度爲9像素。第一行定義的是一個經常使用的分辯率,這樣第二行命令在系統上不能工做,我能經過按兩次<ArrowUP>(譯者注:上箭頭)和<Enter>來從新控制屏幕。可使用哪些模式取決於你的顯示卡和你的顯示器的刷新頻率――須要編輯文件/etc/TextConfig(以root用戶運行),去掉相應行前面的註釋符,使SVGATextMode知道系統支持哪些模式。
SuperProbe
(以root用戶運行)一個檢測顯示卡類型和內存數量的實用工具。
cat /var/log/Xfree86.0.log
一個對檢測X-window設置過程當中的錯誤很是有用的日誌文件。文件名中的「0」表示「顯示方式0」-若是你須要「顯示方式1或2等」的日誌文件,你須要相應地修改文件名。
lspci
顯示主板信息和PCI擴展槽內都插了哪些卡。個人舊的計算機有ISA(或EISA)插槽,沒有PCI。
lsdev
顯示硬件信息(DMA,IRQ,IO端口)
lsof|more
顯示系統上打開的文件。
kernelcfg
(在X終端上以root用戶運行)增長、刪除核心模塊的GUI工具。每一個模塊就象一個設備驅動程序―Linux內核中支持一個設備或功能的一段程序。你在命令行使用insmod命令也能夠完成一樣的工做。
lsmod
(=list modules)顯示當前加載的核心模塊。一個模塊就象一個設備驅動程序-它對一個硬件或一個特性提供操做系統核心支持。
modprobe –l|more
列出系統內核的全部可用模塊。哪些模塊可用是由如何編譯Linux核心決定的。幾乎每一種可能的模塊特性均可以被編譯到內核中,以「硬鏈接」(可能會快一點,但不能刪除)或「模塊」(可能會慢一點,但能夠根據須要裝載/刪除),或「無「(根本不支持這個特性)等方式。系統核心所支持的模塊(編譯過的)都以文件的形式存在/lib/modules(及其子目錄)下,當你丟失模塊時,你能夠流覽這些目錄,能夠找到線索。若是系統核心不支持你所須要的模塊,你能夠啓用該模塊並從新編譯系統核心(這是由於原裝的核心都只包括經常使用的模塊,沒有預編譯一些試驗性的模塊。還有,若是你有一些該死的邊緣硬件…)。
modprobe sb
裝載soundblaster(sb)模塊。使用前面的命令來查找已經加載的核心模塊。
insmod parport
insmod ppa
(以root用戶運行)向內核中插入模塊(一個模塊大體至關於一個DOS設備驅動程序)。日常,我用「modprobe」(見前面的命令)來插入模塊 。這個例子展現如何爲支持一個外置並口100MB ZIP驅動器來插入模塊(好像在RH6.0和6.1下,外部ZIP驅動器以其餘方式工做都會有問題)。對於250MB外置ZIP,可用imm模塊來代替ppa模塊。
rmmod module_name
(以root用戶運行,但不是必須)從系統核刪除module_name模塊。
depmod –a
(以root用戶運行)爲核心創建模塊依賴關係表。除非你想/etc/modules而不想從新啓動系統,不然沒必要要。
setserial /dev/cua0 port 0x03f8 irq 4
(以root用戶運行)將一個串行接口設置爲非標準設置。這個例子顯示第一個串口的標準設置(cua0或ttyS0)。第二個串口(cua1ttyS1)的PC標準設置爲:端口地址0x02f8,中斷3。第三個串口(cua2或ttyS2)爲:0x03e8,中斷4。第四個串口(cua3或ttyS3)爲:0x02e8,中斷3,。若是你要它們在啓動時即被設置,將這些設置加到文件中。詳見man setserial。
Tunelp
(以root用戶運行,不多用到)調整並行端口。
/sbin/chkconfig –level 123456 kudzu off
(以root用戶運行)用來檢查/啓用/禁用在各個運行級下自動啓動的系統服務的工具。通常狀況下,若是我須要在當前運行級下啓用/禁用一個服務,我只用Redhat ntsysv實用程序,但chkconfig給了我更多的靈活性。另一個可用的工具是(基於X界面)。這個例子展現如何禁用kudzu服務,使它在任何運行級都不啓動(它弄亂了個人一臺機器上的鼠標設置)。顯示在全部運行級下啓動/中止的服務,我使用:
chkconfig –list|more
檢查服務的當前狀態,我使用:
service –status –all
當即啓動一個服務,我可使用一些東西,像(啓動一個ftp服務器):
service su-ftpd start
從新啓動網絡服務(如:在我修改了它的配置後),我能夠用:
service smb restart
symlinks –r –cds /
(以root用戶運行)檢查和修改系統上的符號連接。從根開始,遍歷全部的子目錄(選項 –r=「rescuer」)修改絕對路徑連接雜亂連接爲相對連接,刪除空懸連接,縮短超長連接(選項 -cds)。若是你的文件系統覆蓋幾個不一樣的硬盤分區,你須要爲每一個分區從新運行這個命令(如:symlinks –r –cds /usr)。
cd /usr/src/linux-2.4.7-20
make xconfig
(在X終端上以root用戶運行)一個漂亮的GUI前端工具,可在編譯自定義內核的準備過程當中配置內核選項。(例子中的目錄名中包含個人的版本號,若是你的內核版本號不是本例中的,你須要修改你的目錄名。你須要「Tk」解釋器來地,而且安裝了核心的源代碼)。「make xconfig」的其餘實現方法是「make config」(在文本模式下運行一個腳本,並回答一些問題)和「make menuconfig」(運行一個基於文本菜單驅動的配置工具)。
更多信息;Less /usr/share/doc/HOWTO/Kernel-HOWTO
在使用「」完成新內核的配置選擇後,你要執行如下命令來編譯新的內核;
make clean(這是一個可選的命令;它清除舊的目標文件,它可能會延長編譯過程,但在一些狀況下它能夠阻止一些問題的發生)
make dep
make bzImage
最後的命令須要一些時間來完成(多是10分鐘或是2個小時,這取決於你的硬件)。它產生文件arch/386/boot/bzImage, 便是你的新內核。接下來:
make modules
make modules_install
如今新內核安裝在/lib/modules/KernelName
若是你想運行多個內核的時候,不要改動模塊目錄的名字-內核必須可以找到與其匹配的模塊。若是你想改變內核的名字,你必須編輯主內核makefile文件(如:/usr/src/linux-2.2.14/Makefile),修改最開始的幾行。個人文件(缺省TH 7.2)是:
VERSION = 2
PATCHLEVEL = 4
SUBLEVEL = 7
EXTRAVERSION = -10custom
能夠用來顯示當前運行的內核的名字。個人是。
我「原裝」的RedHat內核配置在/boot/config-2.4.28-24(RedHat 8.0)文件中,同時一些附加的「custom」內核設置在目錄/usr/src/linux-x.x.x./configs中。我能夠從命令的對話框中加載它們中的任何一部分。
如今我能安裝新內核。安裝過程涉及到將新內核複製(同時更名)到目錄中:
cp arch/386/boot/bzImage /boot/vmlinuz-2.4.7-10custom
cp System.map /boot/System.map-2.4.7-10custom
並修改/etc/lilo.conf或/boot/grub/grub.conf,這樣在啓動時我能夠選擇用哪個內核(新的或舊的)引導。強烈建議保存舊內核作爲一個引導的選項(萬一新內核拒絕引導)。
若是你使用initrd(initial ram disk)作兩階段引導,你還須要生成一個包含在啓動過程當中內核用到的模塊的映像:
mkinitrd /boot/initrd-2.4.7-10custom.img 2.4.7-custom
看一下如何給內核打補釘,快速參考:
cd /usr/src/linux-2.4.7-10
patch –E –p1 < /home/download/the_patch_to_apply
閱讀/usr/doc/HOWTO/Kernel_HOWTO也會有所幫助,man depmod也行。配置、編譯和安裝一個新內核很是簡單,但它也能致使許多問題。編譯內核也是檢測你的硬件的一個好方法,由於它涉及到至關大量的計算。若是你的硬件整合得很差的話,你會收到「signal 11」錯誤(請閱讀/usr/doc/FAQ/txt/GCC_SIG11/FAQ)。
ldconfig
(以root用戶運行)爲動態連接庫的加載程序(「ld」)從新產生聯接和緩存區。當你在系統上安裝一個新的動態連接庫的後,你也許想要運行ldconfig。(每次當你引導計算機的時,它都會從新運行一遍,因此若是你從新啓動,就沒必要再人爲運行一遍了)。
mknod /dev/fd0 b 2 0
(=make node,以root用戶運行)手動建立一個設備文件。這個例子展現的是建立一個與你的第一個軟驅設備相關聯的設備文件,當你意外地刪除了該設備的時候,它會十分有用。選項是:b=塊設備,c=字符設備,p=FIFO設備,u=無緩衝字符設備。兩個整數指定了主設備號和次設備號。平時我也不知道mknod須要哪些參數。要建立設備時,我先閱讀man MAKEDEV來找出設備的名字,而後運行/dev/MAKEDEV腳本文件,這個腳本文件可根據名字知道是何種設備――見下一個命令。若是提到的手冊沒有幫助的話,我推薦包含內核源代碼的最終文檔:
less /usr/src/linux/Documentation/devices.txt
cd /dev
./MAKEDEV audio
(以root用戶運行)恢復「audio」設備,我恰好把它搞得有點不靈了。也可見前面的命令。
5.13 硬盤和軟盤實用工具
fdisk /dev/had
(=「fixed disk」,以root用戶運行)Linux硬盤驅動器分區工具(DOS有一個同名的工具)。在上面的例子中,我指定要對第一個IDE接口上的第一個硬盤進行分區,所以是「hda」。若是我是你,我會在對任何分區使用以前備份全部重要數據。我不知道有誰喜歡用fdisk(不管是Linux,仍是DOS版本)――我更喜歡簡單易用的cfdisk,見下一個命令。
cfdisk /dev/had
(以root用戶運行)基於菜單的硬盤驅動器分區工具。比更容易使用(見前一個命令)。物理驅動器包括基本分區(每一個硬盤上最多4個),和邏輯分區(數量上沒有限制)。一個基本分區是能夠引導的。邏輯分區必須包含在「擴展分區」中;擴展分區不能使用其自己,它們只是邏輯分區的一個容器。當對一個硬盤進行分區時,通常我會:(1)建立一個基本分區,(2)使這個基本分區能夠引導,(3)建立一個擴展分區,(4)在擴展分區中建立邏輯分區。
sfdisk –l –x |more
(以root用戶運行)列出你的系統上的全部驅動器的分區表(包括擴展分區)。
parted /dev/had
Linux(ext2)和DOS(FAT和FAT32)硬盤分區的處理工具。它能夠建立、刪除、移動、複製、壓縮和擴展分區。你在使用它以前應該備份你的數據並仔細閱讀info parted。
fdformat /dev/fd0H1440
mkfs –c –t ext2 /dev/fd0
(=floppy disk format, 兩個命令,以root用戶運行)對第一個軟驅(dev/fd0)中的高密度軟盤(1440KB)執行低級格式化。而後創建一個文件系統(-t ext2),檢查/標出壞塊(-c)。創建文件系統至關於高級格式化。你還能夠將軟件盤格式化成不一樣的密度(非標準的);試一下 ls /dev/fd0<Tab>。你可以使用fdformat /dev/fd0格式化成缺省密度(通常是1440K)。
badblocks /dev/fd01440 1440
(以root用戶運行)對一張高密度軟盤進行壞塊檢查並將結果顯示到屏幕上。參數「1440」指定了要檢查1440塊。這個命令不修改軟盤。bakblocks也可對用來對硬盤表表進行檢查,可是在我進行全面讀-寫檢查以前,我必須先將文件系統卸下:
mount [查出哪一個設備包含我要進行壞塊檢查的磁盤分區]
umount /dev/hda8 [卸下選定的分區]
badblocks –n /dev/hda8 [以非破壞讀-寫方式檢查選定的分區,這樣個人數據就不會被刪除了]
mount /dev/hda8 [若是沒有壞塊信息顯示出來,將該分區安裝回去]
若是發現壞塊,它們可以被在硬盤上標記出來,這用它們就不會再被使用了:
e2fsck –c /dev/hda8
fdck –t ext2 /dev/hda2
(=file system check,以root用戶運行)檢查和修復文件系統,例如在因爲電源故障致使的「不乾淨」關機以後。上面的這個例子執行對分區hda2的檢查,文件系統型爲ext2。你必須卸下分區或以「單用戶模式」(在LILO提示符處輸入「linux single」或以用戶使用 init 1 來進入單用戶模式)引導來執行這個命令。若是在文件系統檢查過程當中發現錯誤,我選擇缺省設置來修復。
Tune2fs –j /dev/hda2
(以root用戶運行, 只用於支持ext3的內核—RH7.2)調整文件系統的可調參數。上面的這個例子展現如何一個磁盤分區(本例爲hda2)增長日誌,成功地將文件系統轉爲ext3(日誌)文件系統。要完成這個轉換,你還須編輯/etc/fstab文件,將文件系統類型由ext2改成ext3,不然你將遇到問題――ext2不能安裝一個非正常關閉的日誌文件系統。要檢查文件系統的類型,使用mount(無參數)或cat /etc/mtab。若是你須要關於的更多信息,試一下:
http://www.symonds.net/~rajesh/howto/ext3/ext3-6.html
tune2fs的其它參數可讓你添加一個卷標籤,調整安裝文件系統(被檢查過)的數量(最大安裝數),或激活定時文件系統檢查(不多用到)。
dd if=/dev/fd0H1440 of=floppy_image
dd if=floppy_image of=/dev/fd0H1440
(兩個命令,dd=」data duplicator」)在當前目錄下建立一個軟盤的映像文件,名爲「floppy_image」。而後將floppy_image(文件)複製到另外一張軟盤。功能像DOS中的「DISKCOPY」。
mkbootdisk –device /dev/fd0 2.4.2-3
製做一張應急引導軟盤。在系統安裝過程當中你會被問到是否要製做一張引導盤。以上命令展現在安裝後如何製做啓動盤,使用第一個軟盤驅動器(/dev/fd0)。你能夠運行uname -a或ls /lib/modules來知道內核名字(命令中須要,這裏是2.4.2-3)。
5.14 用戶賬戶和文件權限管理
useradd user_name
passwd user_name
(以root用戶運行)建立一個新賬戶(你必須是root用戶)。例如: useradd Barbara。在接下來的一步別忘了爲新用戶設置口令。用戶的主目錄(被建立的)是 /home/user_name。 你也能夠用一個等價的命令adduser user_name
ls –l /home/peter
useradd peter –u 503 –g 503
(以root用戶運行)建立一個用戶來匹配一個已有目錄(多是之前安裝中的)。若是用戶ID和組ID(每一個文件顯示出來的)之前都是503,那麼我用匹配的用戶名,用戶ID(UID)和組ID(GID)來建立用戶。這樣在系統升級後能夠避免因爲改變用戶文件的全部權而引發的混亂。
userdel user_name
刪除一個賬戶(你必須是root用戶)。用戶主目錄和未發送郵件必須單獨處理(人工處理,由於你必須決定如何處理這些文件)。還有一個命令groupdel來刪除組。
groupadd group_name
(以root用戶運行)在你的系統上建立一個新組。在一個家用計算機上不是必須的,但對於有少許用戶的家用計算機是十分方便的。
例如,我可以建立一個「friends」組,使用:
groupadd friends
而後編輯文件,將個人名字和朋友的名字加到組的列表中的一行,最後一行看起來像這樣:
friends:x:502:stan,pete,marie
而後,我改變一個指定文件的權限,這樣這個文件就屬於我和組「friends」。
chgrp friends my_file
這樣,這個組的成員就有訪問這個文件的特殊權限,而其餘人則沒有,改變讀和寫權限的例子以下:
chmod g=rw o= my_file
另一種作法是將寫的權限賦予全部用戶,即便是在家庭電腦上絕對是不安全的。
groups
列出當前用戶所屬的的組。我還可使用groups john來找出用戶john所屬的組。
usermod
groupmod
(以root用戶運行)兩個命令行工具,用於修改用戶賬戶和組,而不用修改相關文件:/etc/passwd, /etc/shadow, etc/group /etc/gshadow。通常是沒必要要的。
userconf
(以root用戶運行)菜單驅動的用戶配置工具(口令政策、組信息更改、增長用戶等)。它是linuxconf包的一部分,但能夠單獨運行。
passwd
修改當前賬戶的口令。若是你是root用戶,你能爲任何用戶修改口令,使用命令:passwd user_name
chfn
(=」change full name」)修改你的信息(全名,辦公室房間號,電話號碼,等等)。用finger命令運行於你的login_name,便會顯示這些信息。
change –M 100 login_name
(=」change age」)將用戶的口令有效期設爲100天。
quota username
setquota username
quotaon /dev/had
quotaoff /dev/had
管理用戶磁盤限額的一組命令。通常在家中電腦上不用。「Disk quota」意思是每一個用戶使用磁盤空間的限制。這些命令分別是顯示用戶限額,設置用戶限額,在一個給定的文件系統(本例是/dev/hda)上啓用限額系統,關閉限額系統。我所見過的典型的發行套裝的缺省設置:對全部用戶沒有限制,全部文件系統上的限額系統都關閉。
kuser
(以root用戶運行,在X終端上)使用一個GUI程序管理用戶和組。好用且基本包括你日常管理用戶賬戶的命令。
chmod perm filename
(=change mode)修改你的文件的訪問權限(除非你是root用戶,你能夠修改任何文件)。你可以以三種方式(讀()、寫()、執行())訪問三個級別(全部者()、文件全部者同組成員()、系統上其餘人())的用戶的文件。檢查當前訪問權限,使用:
ls –l filename
若是這個文件能夠爲全部用戶以全部方式訪問,其權限顯示爲:rwxrwxrwx
第一個三位表示文件全部者的權限,第二個表示擁有這個文件的組的權限,第三個表示其餘人的權限。沒有權限顯示爲「-」。
當設置權限時,如下符號被用到:「u」(=用戶或文件全部者),「g」(擁有文件的組),「o」(其餘人),「a」(全部人,如全部者,組和其餘人),「=」(設置權限爲),「+」(增長權限),「-」(取消權限),「r」(讀文件的權限),「w」(寫文件的權限,表明修改文件的權限),「x」(執行文件的權限)。
例如,這個命令爲全部的用戶增長讀文件的權限:
chmod a+r junk
這個命令將取消全部用戶執行文件的權限:
chmod o-x junk
你也能夠去這裏,有更多的信息。
你能夠用命令umask(參閱man umask)爲你建立的新文件設置缺省權限。
Chown new_ownername filename
Chgrp new_groupname filename
改變文件的全部者和組。在你複製一個文件供其餘人使用時,你應當使用以上兩個命令。只有文件的全部者才能刪除它。
lsattr files
列表文件屬性。不經常使用到,由於不少最有趣的屬性尚未實現。屬性能夠用命令來修改。這些屬性是:A(=修改文件時不要更新時間),S=(同步更新),a(=此文件只能追加),c(=在內核級上壓縮文件,還沒有實現),i(=不變的文件), d(=不可轉儲),s(=安全刪除)和u(不可刪除,還沒有實現)。一個有趣的用法是使一個文件不可刪除,即便root用戶也不行(除非設置者清除該屬性)。
Sudo /sbin/shutdown –h now
(做爲一個普通用戶,會被提示輸入用戶口令)運行「shutdown」命令(或另一個系統管理員受權你能夠運行的命令)。使用,系統管理員可能受權指定用戶執行指定命令,而不用出示root用戶口令。/etc/sudoers文件必須被置爲相似以下內容:
my_login_name my_host_computer_name=/sbin/shutdown
pwck
grpck
(以root用戶運行,兩個命令)驗證口令文件和組文件的完整性。
pwconv
grpconv
(以root用戶運行)可能你不須要這些命令。它們將舊格式的口令和組文件轉換成更安全的「shadow」文件。
5.15 程序安裝
rpm –ivg package_name-version.platform.rpm
(以root用戶運行)安裝一個軟件包(選項「i」,必須是破折號(dash)後面的第一個字母),採用交互方式(選項「v」=verbose)並以數值方式顯示安全進程(選項「h」)。rpm表明「RedHat軟件包管理器」
rpm –Uvh package_name-version.platform.rpm
(以root用戶運行)升級(選項「U」,必須是破折號(dash)後面的第一個字母)一個軟件包,採用交互方式(選項「v」)並以數值方式顯示安全進程(選項「h」)。
rpm –ivh –force –nodep package_name-version.platform.rpm
(以root用戶運行)安裝一個軟件包,忽略任何可能的沖沖和包依存關係問題。
rpm –e package_name
(以root用戶運行)卸載(選項「e」=刪除(erase))軟件包package_name。請注意在軟件包名稱最後沒有「-version.platform.rpm」(軟件包名稱與用來安裝它的*.rpm文件名同樣,只是沒有了破折號、版本、平臺和「rpm」)。
rpm –qpi package_name-version.platform.rpm
查詢(選項「」,必須是破折號(dash)後面的第一個字母)尚未安裝的軟件包(選項「p」),顯示軟件包包含的信息(選項「i」)。
rpm –qpl package_name-version.platform.rpm
查詢(選項「」,必須是破折號(dash)後面的第一個字母)尚未安裝的軟件包(選項「p」),顯示軟件包包含的所有文件的列表(選項「l」)。
rpm –qf a_file
查找文件「a_file」所屬的已安裝的軟件包。若是你偶然刪除了一個文件,如今須要找到正確的軟件包來從新安裝,這個命令頗有用。
rpm –qi package_name
查詢已安裝的軟件包,顯示其自身的信息。請注意,請注意在軟件包名稱最後沒有「-version.platform.rpm」
rpm –qai | more
查詢並顯示系統上安裝的全部的軟件包的信息。在個人簡單的系統上,我安裝了大約600多個軟件包,很顯然,我必須花不少時間來閱讀它們的信息。要查一下你的軟件包的數量,試試:
rpm –qa | grep –c ‘’
要找出一個指定的軟件包,試:
rpm –qa | grep –I the_string_to_find
(選項 –i 使grep命令忽略了字符的大小寫,因此不管是大寫,仍是小寫,都會匹配的)
rpm –Va
檢驗(選項「V」)個人系統上全部的(選項「a」)軟件包。它列出自安裝後被改動過的全部文件。下面是一些關於輸出的解釋:
. 測試經過
C 這是一個配置文件
5 MD5 校驗實敗
S 文件大小不一樣
L 符號連接已經改變
T 文件修改時間已經改變
D 設備文件被修改
U 擁有文件的用戶已經改變
G 擁有文件的組已經改變
M 文件模式(權限和/或文件類型)已經被修改
kpackage
gnorpm
glint
(在X終端上,若是你想可以安裝軟件包,以root用戶運行,3個命令)Redhat軟件包管理器(rpm)的GUI前端。RH5.2中glint的如今看來太舊了。gnorpm是「正式的」GUI軟件包安裝程序,老的版本很是慢而且很難懂,可是新的版本(RH7.0中的)有了很大的改善。kpackage是「正式的」KDE程序,且一直都很是好用。用它們中的任何一個都以查看系統上安裝了哪些軟件包,不有哪些Redhat CD上有但還沒安裝,顯示軟件包的信息,若是你想的話還能夠安裝它們(安裝必須由root用戶來進行)。
5.16 訪問磁盤驅動器/分區
mount
關於裝載驅動器的細節見這裏。如下的命令展現一些例子。
mount –t auto /dev/fd0 /mnt/floppy
(以root用戶運行)裝載軟驅。/mnt/floppy目錄必須存在,並且是空,並不能是你的當前目錄。在/etc/fstab中沒必要有設置,由於你是root用戶並且在命令行提供了全部須要的信息。文件系統的類型將被自動檢測。
mount –t auto /dev/cdrom /mnt/cdrom
(以root用戶運行)裝載CD。你可能須要建立或修改/dev/cdrom文件,它取決於你的CDROM在哪兒。/mnt/cdrom目錄必須存在,並且是空,並不能是你的當前目錄。
mount /mnt/floppy
(以普通用戶或root用戶運行)以用戶的身份裝載軟驅。在/etc/fstab中必須設置。/mnt/floppy目錄不能是你的當前目錄
mount /mnt/cdrom
(以普通用戶或root用戶運行)以用戶的身份裝載CD。在/etc/fstab中必須設置。/mnt/cdrom目錄不能是你的當前目錄
umount /mnt/floppy
卸載軟驅。目錄/mnt/floppy不能是你(或其餘任何人)的當前工做目錄。取決於你的設置,你可能不能卸載一個別人裝載的驅動器。
Mount /mnt/hda1 /mnt/dos_drive1
從本機硬盤裝載一個DOS(MS Windows)分區。
5.17 網絡管理工具
netconf
(以root用戶運行)一個很是好的菜單驅動的網絡設置工具。
ping machine_name
檢驗你是否能和其餘機器相連(給出機器名或IP),當結束的時候按<Ctrl>C(若是不按<Ctrl>C,命令將一直執行)象全部的Linux命令同樣,ping有許多選項,包括「ping of death」攻擊,看起來你能夠ping許多服務器,致使它們死機――試一下選項 -f 和 -s。
route –n
顯示內核路由表。
host host_to_find
nslooup host_to_find
dig ip_to_find
(三個命令,用任意一個)在缺省域名服務器(DNS)上查詢一個Internet名字(或IP地址)host_to_find。用這個方法你能夠檢查你的DNS是否工做。若是你只知道一個主機的IP地址,你還能夠查出它的名字。
traceroute host_to_trace
查看你的信息到達host_to_trace的線路。(能夠是主機名字或IP地址)
mtr host_to_trace
(以root用戶運行)一個強大而好用的工具,結合了舊的ping和traceroute的功能(RH 7.0)。
nmblookup –A ip_address
查看一個聯網的MS Windows主機(用NetBIOS名字)的狀態。這個命令與Windows的nbtstat命令是等價的。
ipfwadm –F –p m
(RH 5.2命令,RH6.0見下一個命令)爲保護本機設置防火牆IP轉發策略。(不是很安全,可是簡單)。目的:你的家庭網絡的全部機器在外界看起來是一臺十分繁忙的機器,並且如你被容許從全部的計算機上同時瀏覽Internet。
echo 1 > /proc/sys/net/ipv4/ip__forward
ipfwadm-wrapper –F –p deny
ipfwadm-wrapper –F –a –m –S xxx.xxx.xxx.0/24 –D 0.0.0.0/0
(三個命令,RH 6.0)。與前一個命令相同, 用你的家庭網絡分配給你的機器的「C」類地址替換那些x。更多的詳細信息見這裏。
ipchains –P forward DENY
ipchains –A forward –s xxx.xxx.xxx.0/24 –d 0.0.0.0/0 –j MASQ
(兩個命令,RH 7.0)與前面的命令一個,可是在RH 7.0下工做。
ipchains –L
列出全部的防火牆規則。用來檢查你的防火牆設置是否工做。
iptables –L
Linux內核2.4.x使用新的防火牆」iptables」(IP列表)。上面的例子列出防火牆規則。
firewall-config
(以root用戶運行,在X終端上)創建你的自定義防火牆的GUI工具。
ifconfig
(以root用戶運行)顯示當前激活的網絡接口(ethernet,ppp,等等)。你的第一塊網卡顯示爲
eth0,第二塊網卡爲eth1,等。經過調制解調器的第一個端口爲ppp0,第二個端口爲ppp1,等等。「lo」是「loopback only」接口,它老是處於激活狀態。使用選項(詳見ifconfig --help)來設置接口。
ifup interface_name
(以普通用戶運行/sbin/ifup)啓動一個網絡接口,例如:
ifup eth0
ifup ppp0
ifup ppp1
只有當在ppp設置中授予權限(使用netconfig)時,用戶才能啓動或關閉ppp接口。要啓動一個ppp接口(撥號鏈接),我通常使用KDE「K」菜單中的kppp(或在X終端上輸入 kppp)。
/etc/rc.d/init.d/network restart
使用正常初始化腳本從新啓動網絡(與系統引導過程當中的同樣)。這對於你只是手工修改了網絡設置是頗有用的。Init.d中列出的其餘的服務也能夠類似方法中止、啓動或重啓動(用stop,start或restart選項調用腳本)。
ifdown interface_name
(以普通用戶運行/sbin/ifdown)。關閉網絡接口,如:ifdown ppp0。也可參見前面的命令。
顯示關於你的網絡狀態的信息。
(以用戶運行,若是你但願在X終端上使用基於的界面)。結合了traceroute和ping的功能的網絡診斷工具。在RH 7.0版本中。
nmap ip_number
顯示ip_number機器上的端口映射。對於創建你的網絡設置的安全真的十分有用,由於你能夠看到開放的端口。nmap包括在RH7.0「Linux PowerTools」CD上,是一個很是方便的GUI前端,「nmapfe」。namp還能作操做系統的「指紋」。通常狀況下,人們(和他們的ISPs)不喜歡他們的計算機端口被掃描(他們視它爲多是攻擊前的搜索)。因此他們一發覺就會抱怨,若是你在你本身的計算機上練習怎樣使用nmap,你的ISP(通常都找他們抱怨)可能很快就會找你的。我是怎麼知道的?
ethereal
(在X終端上,以root用戶運行)網絡分析工具――查看經過你的計算機的網絡流量。包括在RH7.0「Linux PowerTools」CD上,在某些場合使用ethereal多是違反規定的,在工做場合非受權使用可能會致使被解僱。
tcpdump –i ppp0 –a -x
(以root用戶運行)以ASCII碼和十六進制顯示全部經過第一個電話撥號接口的網絡流量。可能會顯示不少。是一個至關原始的工具,但它很實用,能夠用來建造你所須要的自定義的監聽和日誌工具。
5.18 與音樂有關的命令
cdplay play 1
播放音頻CD的第一首曲目。使用cdplay播放整個CD。當你聽夠了的時候,使用cdplay stop。
eject
獲得一個免費的咖啡杯托盤。:)))。(彈出CDROM托架)。這個命令對是缺省的,但也能用來從指定的安裝點或設備來彈出可移除的介質。如:我能夠從一個並口(外置)的zipdrive彈出
zipdisk(以root用戶運行),使用:eject /dev/sda4
play my_file.wav
播放一個wav音頻文件。
rec my_file.wav
從麥克風錄製一個wav音頻文件。
mpg123 myfile.mp3
播放一個mp3文件。
mpg123 –w my_file.wav my_file.mp3
從一個mp3音頻文件生成一個wave音頻文件。若是你想把一些mp3文件寫到一個正常的音頻CD上,這個命令很是有用――你首先要把mp3文件轉爲 *.wav格式。不要驚訝轉換速很是之慢――解壓mp3文件是須要高強度的CPU運算的。
xmms &
(在X終端上)很是好的GUI mp3播放器。
freeamp &
(在X終端上)另外一個很是好的GUI mp3播放器。
lame input_file output_file
MP3 編碼器。你可能須要本身下載和安裝這個程序(Linux標準發行版本不提供這個程序,是由於有關MP3壓縮技術的專利的無妨爭議)。
knapster
(在X終端上)啓動程序下載MP3文件,這些文件是其餘napster用戶共享出以供下載的。你能夠將你的MP3文件共享出來。當使用它時,感受至關cool。Gnutella和FreeNet將很快取代它們->那種感受更cool。
cdparanoia –B 「1-「
(CD抓軌工具)讀出一個音頻CD的內容,將其轉存成當前目錄的wave音頻文件,每一個文件一首曲目。「1-」選項表明「從第一首曲目到最後一首」。-B選項強制將每首曲目放到一個單獨的文件。
grip&
(在X終端上)一個GUI界面的抓軌工具(見前面一個命令)。
playmidi my_file.mid
播放一個MIDI文件。playmidi –r my_file.mid將在屏幕上顯示文本模式的效果。
sox audio_file another_format_audio_file
=Sound exchange man sox sox
kscd
(在X終端上)CD播放器。
kmidi
(在X終端上)MIDI播放器。
kmid
(在X終端上)MIDI/卡拉OK播放器。
kmix
(在X終端上)聲音混響器。
studio&
(在X終端上)音效工做室――編輯聲音文件,增長效果,等等。你能夠從RH 7.x的PowerTools CD上獲得。
extace&
(在X終端上)聲音可視化工具。
festival –tts my_file.txt
讀文件my_file.txt的內容(ASCII碼文本)。「festival」是一個語音合成器,發行在RedHat 7.0 「Linux PowerTools」 CD中。要從命令行讀出一些東西,你須要啓動「festival」,而後在「festival>」提示符處,輸入適當的命令(「scheme」語言解釋器),如在這個例子中(黑體表明提示符):
festival
festival>(SayText 「good dog, really good dog」)
festival>(quit)
5.19 與圖形相關的命令
kghostview my_file.ps
(在X終端上)在屏幕上顯示一個postscript(或pdf)文件。我也能用看起來比較舊的ghostview 或gv來達到一樣的效果。我也可以從視窗中打印postscript文件。
xpdf my_file.pdf
(在X終端上)查看一個pdf文件。要查看pdf文件,我更願意使用Adobe Acrobat Reader的Linux版本(會快一些)。
acroread my_file.pdf
你能夠從http://www.adobe.com/products/acrobat/readstep2.html下載它。
enscript my_file.txt –U 2
將一個文本文件轉換爲postscript格式並在缺省打印機上打印出來。我還能將輸出發送到一個postscript文件。
enscript my_file.txt –U 2 –o my_file.ps
選項-U 2使enscript在一張紙當打印2頁邏輯頁面,這樣能夠節省紙張,並帶來方便,壓縮打印輸出。你還能夠選擇每頁紙4頁邏輯頁,一頁紙上打印得越多,就越難認。 Enscript真的很靈活,詳見man enscript,在許多格式選項中進行選擇。
ps2pdf my_file.ps my_file.pdf
從一個postscript文件生成一個pdf(Adobe portable document format)文件。
mpage –2 my_file.ps > new_file.ps
打印postscript文件my_file.ps,在一個物理頁上輸出兩個邏輯頁。將輸出結果保存在文件new_file.ps中。
ps2ps file.ps new_file.ps
psnup –nup 2 –pletter new_file.ps new_file2.ps
生成一個物理頁上包含兩個邏輯頁的文件的另外一種方法。首先,我用「postscript distiller」將一個postscript文件簡化(代價是文件變得大一點)。而後,我用psnup工具產生new_file2.ps文件,它每個物理頁包含兩個邏輯頁。我也能夠將四或八個邏輯頁放到一個物理頁上。
gimp
(在X終端上)一個看起來不怎麼樣但功能很是強大的圖像處理器。要學習一段時間才能使用,但它對藝術家來講真是太好了,幾乎沒有什麼不能處理的。用你的鼠標右鍵調出本地菜單,學習怎樣使用圖層。將你的文件保存爲本地的gimp文件格式*.xcf(保存圖層,供之後編輯),只有將其平面化(flatten)並保存爲png格式(或其餘什麼格式),你纔可使用。「學會如何作出正確的選擇是關鍵。」
gphoto
(在X終端上)強大的照片編輯器和相機圖像檢測程序。
kpaint
(在X終端上)簡單的位圖畫圖程序(「畫筆」類型)。
xfig
(在X終端上)一個簡單的畫圖程序。對於製做基本的草圖或流程圖很是有用。
dia
(在X終端上)一個用預製組件畫流程圖的工具。
display my_picture
(在X終端上)顯示一幅圖片,只能瀏覽。你還能夠輸入display &,而後從菜單中選擇文件睞查看圖像,旋轉,改變顏色,採用特定效果,等等。 Display是ImageMagick軟件包的一部分,在一塊兒的還有下面描述的幾個實用工具。
identify –verbose my_picture
給出關於圖像文件my_picture的描述:格式、類型、分類、大小(以像素爲單位)、顏色數量、大小(以字節爲單位)、等等。
convert –geometry 60x80 mypicture.gif out_small_picture.gif
將一個圖片轉換爲60x80像素尺寸。下面有一個關於如何在不一樣圖形文件格式進行轉換的例子。
animate –delay 6x5 pic1 pic2 pic3
連續顯示兩個或多個圖片。在示例中,圖片文件名爲pic1,pic2,pic3,圖片的間隔時間爲0.06秒,整個展現過程在5秒中以內反覆進行。
combin pic1 pic2 combined_pic.miff
將兩個或多個圖像加到另外一個圖像中。例如你能夠將一個圖標加到每一個圖像中。
montage –geometry 800x600+0+0 my_picture montage.niff
從my_picture文件生成一個平鋪的圖像上,尺寸爲800x600,邊框爲0x0。輸出結果送到montage.miff。
zgv my_picture
在一個vga屏幕上顯示一個圖片以供瀏覽。
giftopnm my_file.giff > my_file.pnm
pnmtopng my_file.pnm > my_file.png
將一個有版權的圖形文件轉換爲一個原始的、方便的pnm文件。而後將pnm文件轉換爲png文件,png文件是Internet圖片的更新更好的標準(技術上更好,再加上沒有被giff專利擁有者控告的危險)。
xwd –out my_cupture_screen_file.xwd
(在X終端上)捕捉X-windows屏幕上的內容,並保存到X-windows「轉存」圖像文件(*.xwd)。之後你可使用轉換工具將xwd文件轉換爲你喜歡的格式。在KDE環境下,你可使用鍵盤快捷鍵<Alt><PrintScreen>或<Ctrl><Alt><PrintScreen>來複制當前窗口工將整個桌面送到剪貼板。
convert my_capture_screen_file.xwd my_capture_screen.jpg
將X-windows屏幕轉存文件*.xwd轉換爲*.jpg格式文件。這個轉換工具可以對不少文件格式進行轉換。
import –display 192.5.100.10:0 –window root my_file.jpeg
從192.5.100.10服務器上顯示端口0上運行的X-windows上捕捉root屏幕的內容。輸出文件是my_file.jpeg(能夠根據所給出的文件擴展名改變文件格式)。爲了可以捕捉屏幕的內容,你必須有對屏幕寫的權限(在X-終端上運行命令xhost + 能夠將這一權限賦予任何用戶)。選項見man important。
ksnapshot
(在X終端上)基於GUI的捕捉屏幕內容的工具。
xine Frankenstein.avi &
(在X終端上)。從文件「frankenstein.avi」看電影。看起來你電視。
5.20 幾個小遊戲
你的系統上極可能安裝了許多小遊戲。這個只是從個人標準Linux發行版CD上的一個例子。
kpat
(在X終端上)單人紙牌遊戲。sol(快)和pysol(慢可是?)是另外的兩個選擇。我喜歡:sol –variation=freecell&
xboing
(在X終端上)很是好的彈球遊戲。
xboard
(在X終端上)國際象棋。對於我來講很好玩。
koquest &
(在X終端上)和你的兒子進行一場權力的角逐。很是好的板上游戲。
kmines
(在X終端上)掃雷。
civserver
civclient
(在X終端上)(在X終端上)爲FreeCivization遊戲啓動一個服務器(第一個命令)。而後,當服務器運行正常後,啓動一個客戶端(第二個命令)。有些人也啓動其餘的客戶端程序和你玩。FreeCiv在RH7.0 CD上。
fgfs
「Flight Gear」飛行模擬器。
(編輯:admin)
【Linux論壇】【評論】【關閉】
Linux文檔搜索
關鍵詞
相關文章
Copyright © 2001-2018 ChinaUnix.net All Rights Reserved感謝全部關心和支持過ChinaUnix的朋友們