linux命令大全
netstat命令
netstat命令的功能是顯示網絡連接、路由表和網絡接口信息,可以讓用戶得知目前都有哪些網絡連接正在運作。
該命令的一般格式為:
netstat [選項]
命令中各選項的含義如下:
-a 顯示所有socket,包括正在監聽的。
-c 每隔1秒就重新顯示一遍,直到用戶中斷它。
-i 顯示所有網絡接口的信息,格式同“ifconfig -e”。
-n 以網絡IP地址代替名稱,顯示出網絡連接情形。
-r 顯示核心路由表,格式同“route -e”。
-t 顯示TCP協議的連接情況。
-u 顯示UDP協議的連接情況。
-v 顯示正在進行的工作。
[例]在本地機上使用netstat命令。
$ netstat
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 1 [ ] STREAM CONNECTED 270 @00000008
unix 1 [ ] STREAM CONNECTED 150 @00000002
unix 1 [ ] STREAM CONNECTED 104 @00000001
unix 1 [ ] STREAM CONNECTED 222 @00000004
unix 1 [ ] STREAM CONNECTED 171 @00000003
unix 1 [ ] STREAM CONNECTED 271 /dev/log
unix 1 [ ] STREAM CONNECTED 225 /dev/log
unix 1 [ ] STREAM CONNECTED 223 /dev/log
unix 1 [ ] STREAM CONNECTED 203 /dev/log
unix 1 [ ] STREAM CONNECTED 105 /dev/log
……
■ nslookup命令
nslookup命令的功能是查詢一臺機器的IP地址和其對應的域名。它通常需要一臺域名服務器來提供域名服務。如果用戶已經設置好域名服務器,就可以用這個命令查看不同主機的IP地址對應的域名。
該命令的一般格式為:
nslookup [IP地址/域名]
[例]在本地機上使用nslookup命令。
$ nslookup
Default Server: name.tlc.com.cn
Address: 192.168.1.99
>
在符號“>”后面輸入要查詢的IP地址或域名并回車即可。如果要退出該命令,輸入exit并回車即可。
■ finger命令
finger命令的功能是查詢用戶的信息,通常會顯示系統中某個用戶的用戶名、主目錄、停滯時間、登錄時間、登錄shell等信息。如果要查詢遠程機上
的用戶信息,需要在用戶名后面接“@主機名”,采用[用戶名@主機名]的格式,不過要查詢的網絡主機需要運行finger守護進程。
該命令的一般格式為:
finger [選項] [使用者] [用戶@主機]
命令中各選項的含義如下:
-s 顯示用戶的注冊名、實際姓名、終端名稱、寫狀態、停滯時間、登錄時間等信息。
-l 除了用-s選項顯示的信息外,還顯示用戶主目錄、登錄shell、郵件狀態等信息,以及用戶主目錄下的.plan、.project和.forward文件的內容。
-p 除了不顯示.plan文件和.project文件以外,與-l選項相同。
[例]在本地機上使用finger命令。
$ finger xxq
Login: xxq Name:
Directory: /home/xxq Shell: /bin/bash
Last login Thu Jan 1 21:43 (CST) on tty1
No mail.
No Plan.
$ finger
Login Name Tty Idle Login Time Office Office Phone
root root *1 28 Nov 25 09:17
……
■ ping命令
ping命令用于查看網絡上的主機是否在工作,它向該主機發送ICMP ECHO_REQUEST包。有時我們想從網絡上的某臺主機上下載文件,可是又不知道那臺主機是否開著,就需要使用ping命令查看。
該命令的一般格式為:
ping [選項] 主機名/IP地址
命令中各選項的含義如下:
-c 數目 在發送指定數目的包后停止。
-d 設定SO_DEBUG的選項。
-f 大量且快速地送網絡封包給一臺機器,看它的回應。
-I 秒數 設定間隔幾秒送一個網絡封包給一臺機器,預設值是一秒送一次。
-l 次數 在指定次數內,以最快的方式送封包數據到指定機器(只有超級用戶可以使用此選項)。
-q 不顯示任何傳送封包的信息,只顯示最后的結果。
-r 不經由網關而直接送封包到一臺機器,通常是查看本機的網絡接口是否有問題。
-s 字節數 指定發送的數據字節數,預設值是56,加上8字節的ICMP頭,一共是64ICMP數據字節。
網絡通信
ytalk
功能說明:與其他用戶交談。
語 法:ytalk [-isxY][-h<主機名稱IP地址>][用戶名稱...]
補充說明:通過ytalk指令,你可以和其他用戶線上交談,如果想和其他主機的用戶交談,在用戶名稱后加上其主機名稱或IP地址即可。
參 數:
-h<主機名稱IP地址> 指定交談對象所在的遠端主機。
-i 用提醒聲響代替顯示信息。
-s 在指令提示符號先開啟ytalk交談窗。
-x 關閉圖形界面。
-Y 所有必須回應yes或no的問題,都必須用大寫英文字母"Y"或"N"回答。
write
功能說明:傳送信息。
語 法:write [用戶名稱][終端機編號]
補充說明:通過write指令可傳遞信息給另一位登入系統的用戶,當輸入完畢后,鍵入EOF表示信息結束,write指令就會將信息傳給對方。如果接收信息的用戶不只登入本地主機一次,你可以指定接收信息的終端機編號。
wall(write all)
功能說明:傳送信息。
語 法:wall [公告信息]
補充說明:通過wall指令可將信息發送給每位同意接收公眾信息的終端機用戶,若不給予其信息內容,則wall指令會從標準輸入設備讀取數據,然后再把所得到的數據傳送給所有終端機用戶。
uux
功能說明:在遠端的UUCP主機上執行指令。
語 法:uux [-bcCIjlnrvz][-a<地址>][-g<等級>][-s<文件>][-x<層級>][--help][指令]
補充說明:uux可在遠端的UUCP主機上執行指令或是執行本機上的指令,但在執行時會使用遠端電腦的文件。
參 數:
-或-p或--stdin 直接從鍵盤讀取要執行的指令。
-a<地址>或--requestor<地址> 執行郵件地址,以便寄送狀態信息。
-b或--erturn-stdin 在屏幕上顯示狀態信息。
-c或--nocopy 不用將文件復制到緩沖區。
-C或--copy 將文件復制到緩沖區。
-g<等級>或--grade<等級> 指定文件傳送作業的優先順序。
-I或--config file 指定uux配置文件。
-j或--jobid 顯示作業編號。
-l或--link 將本機上的文件連接到緩沖區。
-n或--notification=no 無論發生任何狀態,都不寄郵件通知用戶。
-r或--nouucico 不要立即啟動uucico服務程序,僅將作業送到隊列中,然后再執行。
-s<文件>或--status<文件> 將完成狀態保存為指定的文件。
-v或--version 顯示版本信息。
-x<層級>或--debug<層級> 指定排錯層級。
-z或--notification=error 若發生錯誤,則以郵件來通知用戶。
--help 顯示幫助。
uustat
功能說明:顯示UUCP目前的狀況。
語 法:uustat
[-aeiKmMNpqQRv][-B<行數>][-c<指令>][-C<指令>][-I<配置文件
>][-k<工作>][-o<小時>][-r<工作>][-s<主機>][-S<主機
>][-u<用戶>][-U<用戶>][-W<附注>][-y<小時>][-x<層級
>][--help]
補充說明:執行uucp與uux指令后,會先將工作送到隊列,再由uucico來執行工作。uustat可顯示,刪除或啟動隊列中等待執行的工作。
參 數:
-a或-all 顯示全部的UUCP工作。
-B<行數>或--mail-lines<行數> 與-M或-N參數一并使用,用來指定郵件中要包含多少行的信息。
-c<指令>或--command<指令> 顯示與<指令>有關的工作。
-C<指令>或--not-command<指令> 顯示與<指令>無關的工作。
-e或--executions 僅顯示待執行的工作。
-i或--prompt 針對隊列中的每項工作,詢問使用是否要刪除工作。
-I<配置文件>或--config<配置文件> 指定配置文件。
-k<工作>或--kill<工作> 刪除指定的工作。
-m或--status 刪除全部的工作。
-M或-mail 將狀態信息郵寄給UUCP管理員。
-N或--notify 將狀態信息分別郵寄給提出該項工作的用戶。
-o<小時>或--older-than<小時> 顯示超過指定時數的工作。
-p或--ps 顯示負責UUCP鎖定的程序。
-q或--list 顯示每臺遠端主機上所要執行工作的狀態。
-Q或--no-list 不顯示工作。
-r<工作>或--rejuvenate<工作> 重新啟動指定的工作。
-R或--rejuvenate-all 重新啟動全部的工作。
-s<主機>或--system<主機> 顯示與<主機>有關的工作。
-S<主機>或--not-system<主機> 顯示與<主機>無關的工作。
-v或--version 顯示版本信息。
-u<用戶>或--user<用戶> 顯示與<用戶>有關的工作。
-U<用戶>或--not-user<用戶> 顯示與<用戶>無關的工作。
-W<附注>或--comment<附注> 要放在郵件信息中的附注。
-y<小時>或--younger-than<小時> 顯示低于指定時數的工作。
-x<層級>或--debug<層級> 指定排錯層級。
--help 顯示幫助。
uuname
功能說明:顯示全部的UUCP遠端主機。
語 法:uuname [-alv][-I<配置文件>][--help]
補充說明:uuname可顯示UUCP遠端主機。
參 數:
-a或--aliases 顯示別名。
-I<配置文件>或--config<配置文件> 指定程序的配置文件。
-l或--local 顯示本機名稱。
-v或--version 顯示版本信息。
--help 顯示幫助。
uulog
功能說明:顯示UUCP記錄文件。
語 法:uulog [-DFISv][-<行數>][-f<主機>][-I<配置文件>][-n<行數>][-s<主機>][-u<用戶>][-X<層級>][--help]
補充說明:uulog可用來顯示UUCP記錄文件中記錄。
參 數:
-D或--debuglog 顯示排錯記錄。
-f<主機>或--follow<主機> 與-F參數類似,但僅顯示與指定主機相關的記錄。
-I<配置文件>或--config<配置文件> 指定程序的配置文件。
-<行數>,-n<行數>或--lines<行數> 顯示記錄文件中,從最后算起指定行數的數值。
-s<主機> 僅顯示記錄文件中,與指定文件相關的記錄。
-S或--statslog 顯示統計記錄。
-u<用戶>或--suer<用戶> 僅顯示記錄文件中,與指定用戶相關的記錄。
-v或--version 顯示版本信息。
-X<層級>或--debug<層級> 設定排錯層級。
--help 顯示幫助。
tty(teletypewriter)
功能說明:顯示終端機連接標準輸入設備的文件名稱。
語 法:tty [-s][--help][--version]
補充說明:在Linux操作系統中,所有外圍設備都有其名稱與代號,這些名稱代號以特殊文件的類型存放于/dev目錄下。你可以執行tty指令查詢目前使用的終端機的文件名稱。
參 數:
-s或--silent或--quiet 不顯示任何信息,只回傳狀態代碼。
--help 在線幫助。
--version 顯示版本信息。
traceroute
功能說明:顯示數據包到主機間的路徑。
語 法:traceroute
[-dFlnrvx][-f<存活數值>][-g<網關>...][-i<網絡界面>][-m<存活數值
>][-p<通信端口>][-s<來源地址>][-t<服務類型>][-w<超時秒數>][主機
名稱或IP地址][數據包大小]
補充說明:traceroute指令讓你追蹤網絡數據包的路由途徑,預設數據包大小是40Bytes,用戶可另行設置。
參 數:
-d 使用Socket層級的排錯功能。
-f<存活數值> 設置第一個檢測數據包的存活數值TTL的大小。
-F 設置勿離斷位。
-g<網關> 設置來源路由網關,最多可設置8個。
-i<網絡界面> 使用指定的網絡界面送出數據包。
-I 使用ICMP回應取代UDP資料信息。
-m<存活數值> 設置檢測數據包的最大存活數值TTL的大小。
-n 直接使用IP地址而非主機名稱。
-p<通信端口> 設置UDP傳輸協議的通信端口。
-r 忽略普通的Routing Table,直接將數據包送到遠端主機上。
-s<來源地址> 設置本地主機送出數據包的IP地址。
-t<服務類型> 設置檢測數據包的TOS數值。
-v 詳細顯示指令的執行過程。
-w<超時秒數> 設置等待遠端主機回報的時間。
-x 開啟或關閉數據包的正確性檢驗。
testparm(test parameter)
功能說明:測試Samba的設置是否正確無誤。
語 法:testparm [-s][配置文件][<主機名稱> ]
補充說明:執行testparm指令可以簡單測試Samba的配置文件,假如測試結果無誤,Samba常駐服務就能正確載入該設置值,但并不保證其后的操作如預期般一切正常。
參 數:
-s 不顯示提示符號等待用戶按下Enter鍵,就直接列出Samba服務定義信息。
telnet
功能說明:遠端登入。
語 法:telnet
[-8acdEfFKLrx][-b<主機別名>][-e<脫離字符>][-k<域名>][-l<用戶名稱
>][-n<記錄文件>][-S<服務類型>][-X<認證形態>][主機名稱或IP地址<通信端口
>]
補充說明:執行telnet指令開啟終端機階段作業,并登入遠端主機。
參 數:
-8 允許使用8位字符資料,包括輸入與輸出。
-a 嘗試自動登入遠端系統。
-b<主機別名> 使用別名指定遠端主機名稱。
-c 不讀取用戶專屬目錄里的.telnetrc文件。
-d 啟動排錯模式。
-e<脫離字符> 設置脫離字符。
-E 濾除脫離字符。
-f 此參數的效果和指定"-F"參數相同。
-F 使用Kerberos V5認證時,加上此參數可把本地主機的認證數據上傳到遠端主機。
-k<域名> 使用Kerberos認證時,加
其他命令
echo命令
echo命令的功能是在顯示器上顯示一段文字,一般起到一個提示的作用。該命令的一般格式為:
echo [ -n ] 字符串
其中選項n表示輸出文字后不換行;字符串可以加引號,也可以不加引號。用echo命令輸出加引號的字符串時,將字符串原樣輸出;用echo命令輸出不加引號的字符串時,將字符串中的各個單詞作為字符串輸出,各字符串之間用一個空格分割。
例1:
$ echo ‘Thank you !’
Thank you !
例2:
$ echo Thank you !
Thank you !
cal命令
cal命令的功能是顯示某年某月的日歷。該命令的一般格式為:
cal [選項] [月 [年]]
命令中各選項的含義為:
- j 顯示出給定月中的每一天是一年中的第幾天(從1月1日算起)。
- y 顯示出整年的日歷。
例1 顯示1999年11月的日歷。
$ cal 11 1999
November 1999
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
例2 顯示1999年11月的每一天是一年中的第幾天。
$ cal – j 11 1999
November 1999
Sun Mon Tue Wed Thu Fri Sat
305 306 307 308 309 310
311 312 313 314 315 316 317
318 319 320 321 322 323 324
325 326 327 328 329 330 331
332 333 334
date命令
date命令的功能是顯示和設置系統日期和時間。該命令的一般格式為:
date [選項] 顯示時間格式(以+開頭,后面接格式)
date 設置時間格式
命令中各選項的含義分別為:
-d datestr, --date datestr 顯示由datestr描述的日期
-s datestr, --set datestr 設置datestr 描述的日期
-u, --universal 顯示或設置通用時間
時間域
% H 小時(00..23)
% I 小時(01..12)
% k 小時(0..23)
% l 小時(1..12)
% M 分(00..59)
% p 顯示出AM或PM
% r 時間(hh:mm:ss AM或PM),12小時
% s 從1970年1月1日00:00:00到目前經歷的秒數
% S 秒(00..59)
% T 時間(24小時制)(hh:mm:ss)
% X 顯示時間的格式(%H:%M:%S)
% Z 時區
日期域
% a 星期幾的簡稱( Sun..Sat)
% A 星期幾的全稱( Sunday..Saturday)
% b 月的簡稱(Jan..Dec)
% B 月的全稱(January..December)
% c 日期和時間( Mon Nov 8 14:12:46 CST 1999)
% d 一個月的第幾天(01..31)
% D 日期(mm/dd/yy)
% h 和%b選項相同
% j 一年的第幾天(001..366)
% m 月(01..12)
% w 一個星期的第幾天(0代表星期天)
% W 一年的第幾個星期(00..53,星期一為第一天)
% x 顯示日期的格式(mm/dd/yy)
% y 年的最后兩個數字( 1999則是99)
% Y 年(例如:1970,1996等)
需要特別說明的是,只有超級用戶才能用date命令設置時間,一般用戶只能用date命令顯示時間。
例1:用指定的格式顯示時間。
$ date ‘+This date now is =>%x ,time is now =>%X ,thank you !’
This date now is =>11/12/99 ,time is now =>17:53:01 ,thank you !
例2:用預定的格式顯示當前的時間。
# date
Fri Nov 26 15:20:18 CST 1999
例3:設置時間為下午14點36分。
# date -s 14:36:00
Fri Nov 26 14:15:00 CST 1999
例4:設置時間為1999年11月28號。
# date -s 991128
Sun Nov 28 00:00:00 CST 1999
clear命令
clear命令的功能是清除屏幕上的信息,它類似于DOS中的 cls命令。清屏后,提示符移動到屏幕左上角。
例如:$ clear
與用戶有關的命令
passwd命令
出于系統安全考慮,Linux系統中的每一個用戶除了有其用戶名外,還有其對應的用戶口令。因此使用useradd命令增加時,還需使用passwd命令為每一位新增加的用戶設置口令;用戶以后還可以隨時用passwd命令改變自己的口令。該命令的一般格式為:
passwd [用戶名]
其中用戶名為需要修改口令的用戶名。只有超級用戶可以使用“passwd 用戶名”修改其他用戶的口令,普通用戶只能用不帶參數的passwd命令修改自己的口令。該命令的使用方法如下:
輸入passwd< Enter>;
在(current) UNIX passwd:下輸入當前的口令
在new password:提示下輸入新的口令(在屏幕上看不到這個口令):
系統提示再次輸入這個新口令。
輸入正確后,這個新口令被加密并放入/etc/shdow文件。選取一個不易被破譯的口令是很重要的。選取口令應遵守如下規則:
口令應該至少有六位(最好是八位)字符;
口令應該是大小寫字母、標點符號和數字混雜的。
超級用戶修改其他用戶(xxq)的口令的過程如下,
# passwd xxq
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully
#
su命令
這個命令非常重要。它可以讓一個普通用戶擁有超級用戶或其他用戶的權限,也可以讓超級用戶以普通用戶的身份做一些事情。普通用戶使用這個命令時必須有超級用戶或其他用戶的口令。如要離開當前用戶的身份,可以打exit。
該命令的一般形式為:
su [選項] [? ] [使用者帳號]
說明:若沒有指定使用者帳號,則系統預設值為超級用戶root。
該命令中各選項的含義分別為:
? c 執行一個命令后就結束。
? 加了這個減號的目的是使環境變量和欲轉換的用戶相同。
? m 保留環境變量不變。
例1: 變成root用戶
$ su ?
password: 【輸入超級用戶的密碼】
例2: 變成xu使用者,并執行一個命令就結束。
$ su -xu ? c “rmdir cat1”
與系統管理有關的命令
wall命令
這個命令的功能是對全部已登錄的用戶發送信息,用戶可以先把要發送的信息寫好存入一個文件中,然后輸入:
# wall < 文件名
這樣就能對所有的用戶發送信息了。
在上面的例子中符號“<”表示輸入重定向,有關它的含義和用法請參閱第十章的有關內容。
例如:
# wall ‘Thank you!’
Broadcast message from root (tty1) Fri Nov 26 14:15:07 1999…
Thank you!
#
執行以上命令后,用戶的屏幕上顯示出“Thank you!”信息后,并不出現系統提示符$(#),再次按回車鍵后,屏幕出現系統提示符。
write命令
write命令的功能是向系統中某一個用戶發送信息。
該命令的一般格式為:
write 用戶帳號 [終端名稱]
例如:
$ write xxq
hello
此時系統進入發送信息狀態,用戶可以輸入要發送的信息,輸入完畢,希望退出發送狀態時,按組合鍵即可。
上述命令執行的結果是,用戶xxq的屏幕上會顯示:
message from test@test.tlc.com.cn tty1 at 15:51…
hello
EOF
mesg指令
mesg命令設定是否允許其他用戶用write命令給自己發送信息。如果允許別人給自己發送信息,輸入命令:
# mesg y
否則,輸入:
# mesg n
對于超級用戶,系統的默認值為 n;而對于一般用戶系統的默認值為y。
如果mesg后不帶任何參數,則顯示當前的狀態是y還是n,如:
$ mesg
is y
或:
# mesg
is n
sync命令
sync命令是在關閉Linux系統時使用的。
用戶需要注意的是,不能用簡單的關閉電源的方法關閉系統,因為Linux象其他Unix系統一樣,在內存中緩存了許多數據,在關閉系統時需要進行內存數
據與硬盤數據的同步校驗,保證硬盤數據在關閉系統時是最新的,只有這樣才能確保數據不會丟失。一般正常的關閉系統的過程是自動進行這些工作的,在系統運行
過程中也會定時做這些工作,不需要用戶干預。
sync命令是強制把內存中的數據寫回硬盤,以免數據的丟失。用戶可以在需要的時候使用此命令。該命令的一般格式為:
sync
shutdown命令
shutdown
命令可以安全地關閉或重啟Linux系統,它在系統關閉之前給系統上的所有登錄用戶提示一條警告信息。該命令還允許用戶指定一個時間參數,可以是一個精確
的時間,也可以是從現在開始的一個時間段。精確時間的格式是hh:mm,表示小時和分鐘;時間段由“+”和分鐘數表示。系統執行該命令后,會自動進行數據
同步的工作。該命令的一般格式為:
shutdown [選項] [時間] [警告信息]
命令中各選項的含義為:
- k 并不真正關機,而只是發出警告信息給所有用戶。
- r 關機后立即重新啟動。
- h 關機后不重新啟動。
- f 快速關機,重啟動時跳過fsck。
- n 快速關機,不經過init程序。
- c 取消一個已經運行的shutdown。
需要特別說明的是,該命令只能由超級用戶使用。
例1:系統在十分鐘后關機,并且馬上重新啟動。
# shutdown – r +10
例2:系統馬上關機,并且不重新啟動。
# shutdown – h now
free命令
free命令的功能是查看當前系統內存的使用情況,它顯示系統中剩余及已用的物理內存和交換內存,以及共享內存和被核心使用的緩沖區。該命令的一般格式為:
free [-b | -k | -m]
命令中各選項的含義如下:
-b 以字節為單位顯示。
-k 以K字節為單位顯示。
-m 以兆字節為單位顯示。
例:
$ free
total used free shared buffers cached
Mem: 63076 32020 31056 8204 16360 6048
-/+ buffers/cache: 9612 53464
Swap: 64476 2240 62236
uptime命令
uptime命令顯示系統已經運行了多長時間,它依次顯示下列信息:現在時間、系統已經運行了多長時間、目前有多少登錄用戶、系統在過去的1分鐘、5分鐘和15分鐘內的平均負載。該命令的一般格式為:
uptime
例:
# uptime
4:43pm up 1 day, 5:51, 2 user, load average: 0.01, 0.01, 0.00
系統備份與恢復常用命令
1. fbackup & frecover
A. 系統備份命令: fbackup
1) fbackup的常用方式一:
(1) 進入單用戶:
# shutdown -y 0
# /etc/mount -a
(2) 系統全備份
# fbackup -f /dev/rmt/0m -0v -i / -I /tmp/sysbk.index
-f : 設備文件名 ( such as DDS tape driver)
-i : 要包含的目錄
-e: 不包含的目錄
- I: 備份內容檢索目錄
- v: 備份內容詳細列表
- 0 :零級備份
# fbackup -f /dev/rmt/0m -i / -e /home
備份除了目錄 /home的所有目錄
(3) 說明
? 該命令方式對系統當前"mounted"的文件系統進行備份
? 備份級別說明
備份級別有0~9 個級別,如果當前系統采用零級備份,當下一次采用5 級備份時,系統僅將會對有變化的文件進行備份
2) fbackup的常用方式二:
(1) # mkdir -p /tmp/fbackupfiles/index
# mkdir -p /tmp/fbackupfiles/log
(2) # touch /tmp/fbackupfiles/index/full.`date +%y%m%d.%H:%M`
(3) 進入單用戶
# shutdown -y 0
# /etc/mount -a
(4) 對系統進行全備份
# fbackup -0vi / -f /dev/rmt/0m -I /tmp/fbackupfiles/index/full.`date
+%y%m%d.%H:%M` 2 > /tmp/fbackupfiles/log/ full.`date +%y%m%d.%H:%M`
(5) 說明
通過該方式可以知到系統備份需要的時間
3) fbackup的常用方式三:
(1) 進入單用戶
# shutdown -y 0
# /etc/mount -a
(2) 對系統進行全備份
# fbackup -0uv / -f /dev/rmt/0m -g /tmp/fbackupfiles/mygraph -I
/tmp/fbackupfiles/index/full.`date +%y%m%d.%H:%M` 2 >
/tmp/fbackupfiles/log/ full.`date +%y%m%d.%H:%M`
(3) 說明
? 文件 mygraph: 包含需要備份的目錄,格式如下:
i /users/data
i /home/app
e /oracle/sql
? 參數 u :
當備份系統成功時,系統將更新 /var/adm/fbackupfiles/dates.
4) fbackup的常用方式四:
備份遠程系統
(1) 登錄在本地系統時
# remsh backup_sysname " fbackup -f DDS_sysname: /dev/rmt/0m -0v -i / "
(2) 登錄在遠程系統時
# fbackup -f DDS_sysname: /dev/rmt/0m -0v -i /
5) fbackup的常用方式五:
壓縮方式備份( 不建議使用、影響系統性能)
(1) 壓縮方式備份
# fbackup -0vi /dir -f - | compress | dd of=/dev/rmt/0m obs=10k
"-" : 指向標準輸出
(2) 查看備份內容
# dd if=/dev/rmt/0m ibs=10k | uncompress | frecover -I - -f -
B. 系統恢復命令: frecover
1) 恢復磁帶機上所有內容:
(1) 進入單用戶:
# shutdown -y 0
# /etc/mount -a
(2) 恢復數據
# frecover -rf /dev/rmt/0m
恢復磁帶上的所有數據
-f: 設備文件名
-r: 恢復磁帶上的所有數據
-I: 將磁帶上文件索引存到指定的文件中
# frecover -I /tmp/index.txt -f /dev/rmt/0m
2) 恢復某一目錄:
# frecover -xi /directory
# frecover -x -i /dir1 -i /dir2
# frecover -xoi /dir
-o: 覆蓋/dir下已有的、相同名稱的文件
# frecover -xvXi /dir
-X: 相對與當前目錄恢復數據,而不是按絕對路徑恢復數據
# cd /tmp/local; frecover -xvFi /dir
-F: 僅恢復文件,而不恢復到文件的路徑
例如:
# cd /tmp/local
# frecover -xvF -i /home/filename
[恢復結果] /tmp/local/filename 不是 /home/filename
3) 從遠程磁帶機上恢復數據到本地:
# frecover -xi /dir -f remote_name : /dev/rmt/0m
4) 從本地磁帶機上恢復數據到遠地系統:
# remsh remote_name "frecover -xi /dir -f local_name:
/dev/rmt/0m"
2. tar 命令
A. 對系統全備份
# tar cvf /dev/rmt/0m /
B. 備份某目錄
# tar cvf /dev/rmt/0m /tmp
C. 改變文件的備份路徑
# tar cvf /dev/rmt/0m -C /tmp .
[Note] : 路徑 /tmp 在磁帶上的備份路徑變為 ./
# cd /tmp
# tar cvf /dev/rmt/0m ./*
D. 恢復數據
# tar xvf /dev/rmt/0m (磁帶上所有數據)
# tar xvf /dev/rmt/0m /tmp ( 恢復目錄 /tmp )
E. 查看磁帶上的數據
# tar tvf /dev/rmt/0m
3. SAM
1) 備份數據
# sam
----> Select " Backup and Recovery "
---- >Select " Interactive Backup and Recovery "
---- >Select " Backup Device "
---- > Select " Backup Files Interactively " ( From [ Action ] menus )
----- > Select Backup Scope
----- > Select Local File Systems Only ( no NFS )
-----> Select"OK"
2. 檢查備份的數據
(1) 檢查文件 /var/sam/log/br_log
Notes: if Exit code=2, there is problem on backup procedure.
(2) 查看磁帶上有那些文件
# frecover -rNsv -f /dev/rmt/0m
4. Copyutil
如何啟動" Copyutil "
(1) 從CD boot , 進入ISL
BOOT_ADMIN>boot scsi.n.m ( path of CDROM drive----such as scsi.4.0)
(2) ISL>ode copyutil
Type help for command information
(3) ISL_CMD>copyutil
please wait while scan device bussess…
TY Indx Path Product ID Bus Size Rev
D 0 16/5.6.0 SEAGATEST31230N disk drive SCSI 1.0 GB HPM4
D 1 16/5.5.0 SEAGATEST31230N disk drive SCSI 1.0 GB HPM4
T 2 16/5.0.0 HPC1504[X]/HPC1521B DDS tape SCSI n/a 1009
a. 備份系統硬盤上的所有數據
COPYUTIL>backup
Enter the disk index ([q]/?): 0
Enter the Tape index ([q]/?): 2
Use data compression? (y/[n])? n
When backup finished, system will show: DONE!
COPYUTIL> exit
恢復數據到指定的系統硬盤上
COPYUTIL> restore
Enter the Tape index ([q]/?): 2
Enter the disk index ([q]/?): 0
Use data compression? (y/[n])? Y
After system display: Restored Successful, that means restore is finished!
COPYUTIL> exit
b. 注意:
當用copyutil備份RootDisk到相應的磁帶時,該磁帶可以作為bootable 磁帶使用。
5. make_recovery
1) 安裝 " Ignite-UX application"
(1) 從 " HP-UX Application CD-ROM"上安裝
a. # swinstall
b. " Mark" [A. 1.53 HP-UX Installation Utility( Ignite-ux for 10.20)]
c. " Analysis"
d. " Install"
(2) 從 WebSite 下載并安裝:
http://www.software.hp.com/
Select : " Network & System administration "
Download: " ignite-ux_10.20.tar"(10.20 為 OS 版本)
(3)從硬盤上安裝:
# cd /tmp
# tar xvf /dev/rmt/0m ./ignite-ux_10.20.tar
# swinstall -s /tmp/ignite-ux_10.20.tar
(4)從磁帶上安裝:
# dd if=/tmp/ignite-ux_10.20.tar of=/dev/rmt/0m bk=2
# swinstall -s /dev/rmt/0m
2)make_recovery:
/opt/ignite/bin/make_recovery [ -AprvC] [-d destination] [-b boot_destination]
-A : 指定要備份整個Root disk / Volume Group
-p : 預覽備份過程,并不創建 Bootable DDS Tape
a. 確認 /var/opt/ignite/recovery/mkrec.append 文件
b. 創建 /var/opt/ignite/recovery/arch.include 文件
-r : 使用 -p 選項后,可以用該選項創建 Bootable DDS Tape
a. 該選項可以識別 /var/opt/ignite/recovery/arch.include 文件
-v : 用于顯示備份過程的提示信息
-d : 指定DDS的設備文件名 ( default: /dev/rmt/0mn )
-b :指定系統備份過程中,用到的臨時文件 ( default)
備份與壓縮命令
用戶經常需要備份計算機系統中的數據,為了節省存儲空間,常常將備份文件進行壓縮。下面分別介紹備份與壓縮的命令。
tar命令
tar可以為文件和目錄創建檔案。利用tar,用戶可以為某一特定文件創建檔案(備份文件),也可以在檔案中改變文件,或者向檔案中加入新的文件。
tar最初被用來在磁帶上創建檔案,現在,用戶可以在任何設備上創建檔案,如軟盤。利用tar命令,可以把一大堆的文件和目錄全部打包成一個文件,這對于
備份文件或將幾個文件組合成為一個文件以便于網絡傳輸是非常有用的。Linux上的tar是GNU版本的。
語法:tar [主選項+輔選項] 文件或者目錄
使用該命令時,主選項是必須要有的,它告訴tar要做什么事情,輔選項是輔助使用的,可以選用。
主選項:
c 創建新的檔案文件。如果用戶想備份一個目錄或是一些文件,就要選擇這個選項。
r 把要存檔的文件追加到檔案文件的未尾。例如用戶已經作好備份文件,又發現還有一個目錄或是一些文件忘記備份了,這時可以使用該選項,將忘記的目錄或文件追加到備份文件中。
t 列出檔案文件的內容,查看已經備份了哪些文件。
u 更新文件。就是說,用新增的文件取代原備份文件,如果在備份文件中找不到要更新的文件,則把它追加到備份文件的最后。
x 從檔案文件中釋放文件。
輔助選項:
b 該選項是為磁帶機設定的。其后跟一數字,用來說明區塊的大小,系統預設值為20(20*512 bytes)。
f 使用檔案文件或設備,這個選項通常是必選的。
k 保存已經存在的文件。例如我們把某個文件還原,在還原的過程中,遇到相同的文件,不會進行覆蓋。
m 在還原文件時,把所有文件的修改時間設定為現在。
M 創建多卷的檔案文件,以便在幾個磁盤中存放。
v 詳細報告tar處理的文件信息。如無此選項,tar不報告文件信息。
w 每一步都要求確認。
z 用gzip來壓縮/解壓縮文件,加上該選項后可以將檔案文件進行壓縮,但還原時也一定要使用該選項進行解壓縮。
例1:把/home目錄下包括它的子目錄全部做備份文件,備份文件名為usr.tar。
$ tar cvf usr.tar /home
例2:把/home目錄下包括它的子目錄全部做備份文件,并進行壓縮,備份文件名為usr.tar.gz 。
$ tar czvf usr.tar.gz /home
例3:把usr.tar.gz這個備份文件還原并解壓縮。
$ tar xzvf usr.tar.gz
例4:查看usr.tar備份文件的內容,并以分屏方式顯示在顯示器上。
$ tar tvf usr.tar | more
要將文件備份到一個特定的設備,只需把設備名作為備份文件名。
例5:用戶在/dev/fd0設備的軟盤中創建一個備份文件,并將/home 目錄中所有的文件都拷貝到備份文件中。
$ tar cf /dev/fd0 /home
要恢復設備磁盤中的文件,可使用xf選項:
$ tar xf /dev/fd0
如果用戶備份的文件大小超過設備可用的存貯空間,如軟盤,您可以創建一個多卷的tar備份文件。M選項指示tar命令提示您使用一個新的存貯設備,當使
用M選項向一個軟驅進行存檔時,tar命令在一張軟盤已滿的時候會提醒您再放入一張新的軟盤。這樣您就可以把tar檔案存入幾張磁盤中。
$ tar cMf /dev/fd0 /home
要恢復幾張盤中的檔案,只要將第一張放入軟驅,然后輸入有x和M選項的tar命令。在必要時您會被提醒放入另外一張軟盤。
$ tar xMf /dev/fd0
gzip命令
減少文件大小有兩個明顯的好處,一是可以減少存儲空間,二是通過網絡傳輸文件時,可以減少傳輸的時間。gzip是在Linux系統中經常使用的一個對文件進行壓縮和解壓縮的命令,既方便又好用。
語法:gzip [選項] 壓縮(解壓縮)的文件名
各選項的含義:
-c 將輸出寫到標準輸出上,并保留原有文件。
-d 將壓縮文件解壓。
-l 對每個壓縮文件,顯示下列字段:
壓縮文件的大小
未壓縮文件的大小
壓縮比
未壓縮文件的名字
-r 遞歸式地查找指定目錄并壓縮其中的所有文件或者是解壓縮。
-t 測試,檢查壓縮文件是否完整。
-v 對每一個壓縮和解壓的文件,顯示文件名和壓縮比。
-num 用指定的數字num調整壓縮的速度,-1或--fast表示最快壓縮方法(低壓縮比),-9或--best表示最慢壓縮方法(高壓縮比)。系統缺省值為6。
假設一個目錄/home下有文件mm.txt、sort.txt、xx.com。
例1:把/home目錄下的每個文件壓縮成.gz文件。
$ cd /home
$ gzip *
$ ls
m.txt.gz sort.txt.gz xx.com.gz
例2:把例1中每個壓縮的文件解壓,并列出詳細的信息。
$ gzip -dv *
mm.txt.gz 43.1%-----replaced with mm.txt
sort.txt.gz 43.1%-----replaced with sort.txt
xx.com.gz 43.1%-----replaced with xx.com
$ ls
mm.txt sort.txt xx.com
例3:詳細顯示例1中每個壓縮的文件的信息,并不解壓。
$ gzip -l *
compressed uncompr. ratio uncompressed_name
277 445 43.1% mm.txt
278 445 43.1% sort.txt
277 445 43.1% xx.com
$ ls
mm.txt.gz sort.txt.gz xx.com.gz
例4:壓縮一個tar備份文件,如usr.tar,此時壓縮文件的擴展名為.tar.gz
$ gzip usr.tar
$ ls
usr.tar.gz
unzip命令
用MS Windows下的壓縮軟件winzip壓縮的文件如何在Linux系統下展開呢?可以用unzip命令,該命令用于解擴展名為.zip的壓縮文件。
語法:unzip [選項] 壓縮文件名.zip
各選項的含義分別為:
-x 文件列表 解壓縮文件,但不包括指定的file文件。
-v 查看壓縮文件目錄,但不解壓。
-t 測試文件有無損壞,但不解壓。
-d 目錄 把壓縮文件解到指定目錄下。
-z 只顯示壓縮文件的注解。
-n 不覆蓋已經存在的文件。
-o 覆蓋已存在的文件且不要求用戶確認。
-j 不重建文檔的目錄結構,把所有文件解壓到同一目錄下。
例1:將壓縮文件text.zip在當前目錄下解壓縮。
$ unzip text.zip
例2:將壓縮文件text.zip在指定目錄/tmp下解壓縮,如果已有相同的文件存在,要求unzip命令不覆蓋原先的文件。
$ unzip -n text.zip -d /tmp
例3:查看壓縮文件目錄,但不解壓。
$ unzip -v text.zip
zgrep命令
這個命令的功能是在壓縮文件中尋找匹配的正則表達式,用法和grep命令一樣,只不過操作的對象是壓縮文件。如果用戶想看看在某個壓縮文件中有沒有某一句話,便可用zgrep命令。
shell命令
命令行
用戶登錄到Linux系統時,可以看到一個shell提示符,標識了命令行的開始。用戶可以在提示符后面輸入任何命令及參數。例如:
$ date
二 11 23 01:34:58 CST 1999
$
用戶登錄時,實際進入了shell,它遵循一定的語法將輸入的命令加以解釋并傳給系統。命令行中輸入的第一個字必須是一個命令的名字,第二個字是命令的選項或參數,命令行中的每個字必須由空格或TAB隔開,格式如下:
$ Command Option Arguments
■ 選項和參數
選項是包括一個或多個字母的代碼,它前面有一個減號(減號是必要的,Linux用它來區別選項和參數),選項可用于改變命令執行的動作的類型。例如:
$ ls
motd passwd
$
這是沒有選項的ls命令,可列出當前目錄中所有文件,只列出各個文件的名字,而不顯示其他更多的信息。
$ ls -l
total 2
-rw-r--r-- 2 wzh book 22 Apr 20 20:37 motd
-rw-r--r-- 2 wzh book 796 Apr 20 20:37 passwd
$
加入-l選項,將會為每個文件列出一行信息,諸如數據大小和數據最后被修改的時間。
大多數命令都被設計為可以接納參數。參數是在命令行中的選項之后鍵入的一個或多個單詞,例如:
$ ls -l text
-rw-r--r-- 2 wzh book 22 Apr 20 20:37 motd
-rw-r--r-- 2 wzh book 796 Apr 20 20:37 passwd
$
將顯示text目錄下的所有文件及其信息。
有些命令,如ls可以帶參數,而有一些命令可能需要一些最小數目的參數。例如,cp命令至少需要兩個參數,如果參數的數目與命令要求不符,shell將會給出出錯信息。例如:
$ cp -i mydata newdata
注意:命令行中選項先于參數輸入。
■ 命令行特征
命令行實際上是可以編輯的一個文本緩沖區,在按回車之前,可以對輸入的文本進行編輯。比如利用BACKSPACE鍵可以刪除剛鍵入的字符,可以進行整行
刪除,還可以插入字符,使得用戶在輸入命令,尤其是復雜命令時,若出現鍵入錯誤,無須重新輸入整個命令,只要利用編輯操作,即可改正錯誤。
利用上箭頭可以重新顯示剛執行的命令,利用這一功能可以重復執行以前執行過的命令,而無須重新鍵入該命令。
bash保存著以前鍵入過的命令的列表,這一列表被稱為命令歷史表。按動上箭頭,便可以在命令行上逐次顯示各條命令。同樣,按動下箭頭可以在命令列表中
向下移動,這樣可以將以前的各條命令顯示在命令行上,用戶可以修改并執行這些命令。這一特征將在10.4節中進行詳細的論述。
在一個命令行中還可以置入多個命令,用分號將各個命令隔開。例如:
$ ls -F;cp -i mydata newdata
也可以在幾個命令行中輸入一個命令,用反斜杠將一個命令行持續到下一行。
$ cp -i \
mydata \
newdata
上面的cp命令是在三行中輸入的,開始的兩行以反斜杠結束,把三行作為一個命令行。
shell中的特殊字符
shell中除使用普通字符外,還可以使用一些具有特殊含義和功能的特殊字符。在使用它們時應注意其特殊的含義和作用范圍。下面分別對這些特殊字符加以介紹。
■ 通配符
通配符用于模式匹配,如文件名匹配、路經名搜索、字符串查找等。常用的通配符有*、?和括在方括號[ ]中的字符序列。用戶可以在作為命令參數的文件名中包含這些通配符,構成一個所謂的“模式串”,在執行過程中進行模式匹配。
* 代表任何字符串(長度可以不等),例如:“f*”匹配以f打頭的任意字符串。但應注意,文件名前的圓點(.)和路經名中的斜線(/)必須顯式匹配。例如“*”不能匹配.file,而“.*”才可以匹配.file。
? 代表任何單個字符。
[ ] 代表指定的一個字符范圍,只要文件名中[ ]位置處的字符在[
]中指定的范圍之內,那么這個文件名就與這個模式串匹配。方括號中的字符范圍可以由直接給出的字符組成,也可以由表示限定范圍的起始字符、終止字符及中間
的連字符(-)組成。例如,f [a- d] 與f
[abcd]的作用相同。Shell將把與命令行中指定的模式串相匹配的所有文件名都作為命令的參數,形成最終的命令,然后再執行這個命令。
下面我們給出的表說明這些通配符的具體含義。
■ 模式串
意 義
*
當前目錄下所有文件的名稱。
*Text*
當前目錄下所有文件名中包含有Text的文件的名稱。
[ab-dm]*
當前目錄下所有以a、b、c、d、m開頭的文件的名稱。
[ab-dm]?
當前目錄下所有以a、b、c、d、m開頭且后面只跟有一個字符的文件的名稱。
/usr/bin/??
目錄/usr/bin下所有名稱為兩個字符的文件的名稱。
特別需要注意的是,連字符“-”僅在方括號內有效,表示字符范圍,如在方括號外面就成為普通字符了。而*和?只在方括號外面是通配符,若出現在方括號之
內,它們也失去通配符的能力,成為普通字符了。例如,模式“-
a[*?]abc”中只有一對方括號是通配符,*和?均為普通字符,因此,它匹配的字符串只能是- a*abc和- a?abc。
最后說明一下使用通配符時需要注意的一些問題。由于*、?和[
]對于shell來說具有比較特殊的意義,因此在正常的文件名中不應出現這些字符。特別是在目錄名中不要出現它們,否則Shell匹配起來可能會無窮的遞
歸下去。另外要注意的一點是:如果目錄中沒有與指定的模式串相匹配的文件名,那么Shell將使用此模式串本身作為參數傳給有關命令。這可能就是命令中出
現特殊字符的原因所在。
■ 引號
在shell中引號分為三種:單引號,雙引號和反引號。
■ 單引號 ‘
由單引號括起來的字符都作為普通字符出現。特殊字符用單引號括起來以后,也會失去原有意義,而只作為普通字符解釋。例如:
$ string=’$PATH’
$ echo $string
$PATH
$
可見$保持了其本身的含義,作為普通字符出現。
■ 雙引號 “
由雙引號括起來的字符,除$、\、’、和”這幾個字符仍是特殊字符并保留其特殊功能外,其余字符仍作為普通字符對待。對于$來說,就是用其后指定的變量
的值來代替這個變量和$;對于\而言,是轉義字符,它告訴shell不要對其后面的那個字符進行特殊處理,只當作普通字符即可。可以想見,在雙引號中需要
在前面加上\的只有四個字符$,\,’和”本身。而對”號,若其前面沒有加\,則Shell會將它同前一個”號匹配。
例如,我們假定PATH的值為.:/usr/bin:/bin,輸入如下命令:
$ TestString=”$PATH\\\”\$PATH”
$ echo $TestString
.:/usr/bin:/ bin\”$PATH
$
讀者可以自己試一下在第二個雙引號之前不加\會產生什么結果。
■ 反引號 `
反引號(`)這個字符所對應的鍵一般位于鍵盤的左上角,不要將其同單引號(’)混淆。反引號括起來的字符串被shell解釋為命令行,在執行時,shell首先執行該命令行,并以它的標準輸出結果取代整個反引號(包括兩個反引號)部分。例如:
$ pwd
/home/xyz
$ string=”current directory is `pwd`”
$ echo $string
current directour is /home/xyz
$
shell執行echo命令時,首先執行`pwd`中的命令pwd,并將輸出結果/home/xyz取代`pwd`這部分,最后輸出替換后的整個結果。
利用反引號的這種功能可以進行命令置換,即把反引號括起來的執行結果賦值給指定變量。例如:
$ today=`date`
$ echo Today is $today
Today is Mon Apr 15 16:20:13 CST 1999
$
反引號還可以嵌套使用。但需注意,嵌套使用時內層的反引號必須用反斜線(\)將其轉義。例如:
$ abc=`echo The number of users is \`who| wc-l\``
$ echo $abc
The number of users is 5
$
在反引號之間的命令行中也可以使用shell的特殊字符。Shell為得到``中命令的結果,它實際上要去執行``中指定的命令。執行時,命令中的特殊字符,如$,”,?等又將具有特殊含義,并且``所包含的可以是任何一個合法的Shell命令,如:
$ ls
note readme.txt Notice Unix.dir
$ TestString=”`echo $HOME ` ` ls [nN]*`”
$ echo $TestString
/home/yxz note Notice
$
常用網路偵錯指令
一. ifconfig 指令.
ifconfig 指令用來設定網路介面, 并可查詢目前網路介面的設定情形.
語法:
1. ifconfig [介面]
介面可以不寫, 若不寫, 則顯示目前使用中的介面.
介面可以填入: eth0, eth1 等.
若是下
2. ifconfig -a
則會列出所有的網路介面情形.
[root@ols3-note /root]# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:80:C8:8F:B8:F4
inet addr:192.168.54.51 Bcast:192.168.54.63 Mask:255.255.255.240
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:234 errors:0 dropped:0 overruns:0 frame:0
TX packets:65 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:3 Base address:0x320
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
其中 :
eth0 表示第一張網路卡
lo 表示 loopback , 即沒有連接到真實網路時的網路介面, 可用來測試網路的應用軟體, 并且提供區域性的 TCP/IP 服務.
HWaddr 是網路卡的硬體位址
inet addr 是網路卡的 IP,
Bcast 是廣播(broadcast) 的位址
Mask 是網路遮罩.
MTU 是 Maximum Trasmission Unit 最大傳輸單元(位元組), 即此介面一次所能傳輸的最大封包.
Metric 是權值之意, 路由權值, 或所需的花費, 目前尚未使用, 將來會 implement.
RX 是接收情形.
TX 是傳送情形.
collisions 是網路訊號碰撞的意思
txqueuelen 是傳輸緩區長度大小意思
Interrupt 是 IRQ 中斷位址
Base address 是 I/O 位址
3. ifconfig 介面 [aftype] 選項 | 位址
aftype 是位址家族之意, 預設值是 inet (TCP/IP)
其它還有 ddp(AppleTalk) ipx(Novell)
詳細情形, 請自行 man ifconfig
不建議各位用 ifconfig 手動修改, 請用 linuxconf 較佳.
不過, 在查驗為何網路不通時, 經常會遇到的問題是 netmask 設錯了, 這時, 手動設 netmask 倒是十分方便的方法.
假設 netmask 應為 255.255.255.128, 但你的網路卡卻是 255.255.255.0
那麼下:
ifconfig eth0 netmask 255.255.255.128
即可改正過來.
ifconfig eth0 down 可將網路卡關閉, 此時下 ifconfig 將只看到 lo.
[root@ols3-note /root]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
ifconfig eth0 up 可將網路卡打開, 下 ifcofnig 又可看到 eth0 及 lo 了.
[root@ols3-note /root]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:80:C8:8F:B8:F4
inet addr:192.168.54.51 Bcast:192.168.54.63 Mask:255.255.255.240
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:234 errors:0 dropped:0 overruns:0 frame:0
TX packets:65 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:3 Base address:0x320
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
二. ping 指令.
ping 指令用來偵測某一主機是否存活, 或者網路是否可以正常連線.
指令:
ping IP
ping HOSTNAME
例: ping 192.168.54.49
[root@ols3-note /root]# ping 192.168.54.49
PING 192.168.54.49 (192.168.54.49): 56 data bytes
64 bytes from 192.168.54.49: icmp_seq=0 ttl=128 time=0.8 ms
64 bytes from 192.168.54.49: icmp_seq=1 ttl=128 time=0.7 ms
64 bytes from 192.168.54.49: icmp_seq=2 ttl=128 time=0.7 ms
64 bytes from 192.168.54.49: icmp_seq=3 ttl=128 time=0.7 ms
64 bytes from 192.168.54.49: icmp_seq=4 ttl=128 time=0.7 ms
^C
--- 192.168.54.49 ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 0.7/0.7/0.8 ms
上面表示: 傳遞5個封包, 5個封包都接收到了, 沒有任可 loss 的情形.
icmp 是 ICMP 協定的意思, seq 是序列之意.
TTL 是 Time To Live , 每當經過一個 gateway, TTL 就會減 1, 若某一站的 gateway 收到時, TTL 為 0, 就會送回一個 TimeOut 的訊號回來.
為何只傳了5個封包? 因為我中間有按了 ^C, 將 ping 中斷了.
若你不想麻煩, 按 ^C, 可以在 ping 執行時加 -c 選項, 用以設定 ping 的次數.
如下:
ping -c 10 192.168.54.49
則只 ping 10 次.
三. netstat 指令.
netstat 指令用來查看網路介面的使用狀況及 routing table.
指令:
netstat -i
顯示網路卡的運作情形:
[root@ols3-note /root]# netstat -i
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 0 682 0 0 0 179 0 0 0 BRU
lo 3924 0 0 0 0 0 0 0 0 0 LRU
Iface 是指網路介面
MTU 前面有介紹過!
Met 是 Metric 路由權值
RX 是接收情形
TX 是傳送情形
OK 表示正常
ERR 表示錯誤
DRP 表示被丟掉的封包數
OVR 表示 TimeOut 或其它因素
Flg 是旗標的意思, 其定義如下:
A 接收 multicast
B 接收 broadcast
D 除錯功能已啟動
L Loopback
M 處於不選擇狀態
N 沒有處理封包尾端部份
O ARP 已關閉
P 此介面是做為 point to point 用
R 此介面正在運作
U 此介面已經啟動
記住上面標有顏色的這四個即可.
指令:
netstat -r (等同於 route -e)
查看主機的 routing table.
[root@ols3-note /root]# netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.54.48 * 255.255.255.240 U 0 0 0 eth0
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default 192.168.54.62 0.0.0.0 UG 0 0 0 eth0
Gateway 若是打 *, 表示 ip 位址由 Iface 所指定的介面傳出去.
default 表示 default gateway 之意.
Flags :
U 是啟動之意
G 是 Gateway
MSS : TCP Maximum Segment Size 之意
Window : TCP window size for connections over this route.
irtt : initial round trip time for TCP connections over this route to
? milliseconds (1-12000). This is typically only used on AX.25 network.
四. route 指令.
route 指令用來顯示及設定 IP routing table.
語法如下:
route [-CFvnee]
route [-v] [-A family] add [-net|-host] target [netmask
Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I]
[reject] [mod] [dyn] [reinstate] [[dev] If]
route [-v] [-A
常用的tar和rpm命令參數列表
常用的tar和rpm命令參數列表
一. tar
1.壓縮一組文件為tar.gz后綴。
# tar cvf backup.tar /etc
#gzip -q backup.tar
或
# tar cvfz backup.tar.gz /etc/
2.釋放一個后綴為tar.gz的文件。
#gunzip backup.tar.gz
#tar xvf backup.tar
或
# tar xvfz backup.tar.gz
3.用一個命令完成壓縮
#tar cvf - /etc/ | gzip -qc > backup.tar.gz
4.用一個命令完成釋放
# gunzip -c backup.tar.gz | tar xvf -
5.如何解開tar.Z的文件?
# tar xvfz backup.tar.Z
或
# uncompress backup.tar.Z
#tar xvf backup.tar
6.如何解開.tgz文件?
#gunzip backup.tgz
7.如何壓縮和解壓縮.bz2的包?
#bzip2 /etc/smb.conf
這將壓縮文件smb.conf成smb.conf.bz2
#bunzip2 /etc/smb.conf.bz2
這將在當前目錄下還原smb.conf.bz2為smb.conf
注: .bz2壓縮格式不是很常用,你可以man bzip2
二. rpm
1.安裝一個包
# rpm -ivh
2.升級一個包
# rpm -Uvh
3.移走一個包
# rpm -e
4.安裝參數
--force 即使覆蓋屬于其它包的文件也強迫安裝
--nodeps 如果該RPM包的安裝依賴其它包,即使其它包沒裝,也強迫
安裝。
5.查詢一個包是否被安裝
# rpm -q < rpm package name>
6.得到被安裝的包的信息
# rpm -qi < rpm package name>
7.列出該包中有哪些文件
# rpm -ql < rpm package name>
8.列出服務器上的一個文件屬于哪一個RPM包
#rpm -qf
9.可綜合好幾個參數一起用
# rpm -qil < rpm package name>
10.列出所有被安裝的rpm package
# rpm -qa
11.列出一個未被安裝進系統的RPM包文件中包含有哪些文件?
# rpm -qilp < rpm package name>
Linux Shell 裡一些很少用到卻很有用的指令
責任編輯:NicaLiu 你是不是已經忘記可以使用命令列來完成工作,還是你從來不知道他可以為你節省許多的時間與煩惱?
有個叫 80/20 法則的觀念可以聯想到軟件系統上,觀查發現, 80% 的使用者族群,固定會去使用的只有 20%
的系統功能。不需要去大費周章的證實這樣的統計值,我二十年以上建立軟件架構及使用軟件系統的經驗告訴我,這樣的假定,極有可能是正確的。一堆的
Linux 命令列程序皆無一例外于這樣的普遍現象。 Linux 提供許多 Shell
層級的命令,可能只有十個能普遍被了解并使用之,而剩下的極大部份,幾乎是被忽略的。
這些在 Linux Shell
里不起眼的小東西有哪些是具有被提出來討論的價值的呢? 我在這將簡短的介紹幾個不常用,但卻相當好用的 Linux Shell
命令,這些程序是我用了好幾年,經得起時間考驗的。特別是,我選擇將重點放在語法解析及格式化文字內容的命令上。
在這些例子里,我假定大家對命令列的語法有基本的熟悉度,并具簡單的 Shell 概念還有一些并不是那么普遍的Linux命令。即使如此,命令列的范例仍附上適當的批注而且它是很直接的。在每一個應用上,各個命令列的執行底下都會有一個使用范例給大家看。
下列便是這些語法、格式及文字內容的展現,雖然并非每個范例皆提供具體的說明,不過必須知道的一點是,下列命令若是沒有指定檔案參數,則它會讀取標準輸入。
Head/Tail
head 與 tail 就像它的名字一樣的淺顯易懂,它是用來顯示開頭或結尾某個數量的文字區塊,head 用來顯示檔案的開頭至標準輸出中,而 tail 想當然爾就是看檔案的結尾啰~,看看下面的范例:
## (1) displays the first 6 lines of a file
head -6 readme.txt
## (2) displays the last 25 lines of a file
tail -25 mail.txt
范例一是顯示檔案的前 6 行,范例二則是顯示檔案最后的 25 行。
而下面的范別,結合了 head 與 tail 的指令,顯示檔案的第 11 行到第 20 行:
# (3)
head -20 file | tail -10
在 tail 的使用手冊頁中顯示了比 head 還多的可用參數,其中有一個很好用的參數 " -f ",使用此參數時,tail
不會回傳結束信號,除非我們去自行去中斷它;相反的,它會一直等待一段時間,一直到他發現資料自它最后一次被讀取后,又被加入新的一行時:
## (4) display ongoing updates to the given
## log file
tail -f /usr/tmp/logs/daemon_log.txt
上述范例可以動態顯示該 log 文件的動態更新。
假設該服務程序是一直不斷的加入動態資料到 /usr/adm/logs/daemon_log.txt 的 log 文件里,在命令列控制窗口中使用 tail -f,它將會以一定的時間實時追蹤該檔的所有更新。 ( -f 的只有在其輸入為檔案時才能使用 )。
假如你在 tail 后下了多個檔案參數,你便能在同一個窗口內一次追蹤數個 log 檔:
## track the mail log and the server error log
## at the same time.
tail -f /var/log/mail.log /var/log/apache/error_log
tac -- 反過來串連?!
cat 倒過來怎么拼 ? 對啦 !! 這就是 tac 的功能啰 ~ 它是把檔案的順序內容反過來串連用的,那么 ~ 它都用在什么狀況下呢 ?
任何須要以后進先出的順序重新排列組件的工作都用得上它 ! 以下面的指令來說,便是以自最后建立的到最先建立的順序,列出三個最新建的使用者帳號:
# (5) last 3 /etc/passwd records - in reverse
$ tail -3 /etc/passwd | tac
curly:x:1003:100:3rd Stooge:/homes/curly:/bin/ksh
larry:x:1002:100:2nd Stooge:/homes/larry:/bin/ksh
moe:x:1001:100:1st Stooge:/homes/moe:/bin/ksh
nl -- 為輸出列加上編號
nl 是一個簡單但很好用的編號過濾工具,我在輸入的地方下了參數,讓所有行列的編碼皆靠左,nl 是供了非常多的參數使用,可以定義到很細很細的程序來制定它下好編號的輸出,下面是一些參數使用的范例說明:
# (6) Display the first 4 entries of the password
# file - numbers to be three columns wide and
# padded by zeros.
$ head -4 /etc/passwd | nl -nrz -w3
001 root:x:0:1:Super-User:/:/bin/ksh
002 daemon:x:1:1::/:
003 bin:x:2:2::/usr/bin:
004 sys:x:3:3::/:
#
# (7) Prepend ordered line numbers followed by an
# '=' sign to each line -- start at 101.
$ nl -s= -v101 Data.txt
101=1st Line ...
102=2nd Line ...
103=3rd Line ...
104=4th Line ...
105=5th Line ...
.......
fmt -- 格式化
fmt
是一個簡單的文字格式化工具,它重點是在讓文字的資料與最大所能支持的寬度一致,它是利用結合及截斷行列的空白所完成的。前提是你需要維護的是一個由文書
處理器所產生的文字內容,它所輸出的文字可能含括了各種不同長度的行列,若這樣的文字是由文字編輯器 ( 像是 vi ) 作的,fmt
便能夠將此原始文字轉化成更好維護的格式。下面的第一個例子,顯示的是下 fmt 指令來重新制作檔案格式,讓它一行不要超過 80 個字符:
# (8) No more than 60 char lines
$ fmt -w 60 README.txt > NEW_README.txt
#
# (9) Force uniform spacing:
# 1 space between words, 2 between sentences
$ echo "Hello World. Hello Universe." |
fmt -u -w80
Hello World. Hello Universe.
fold -- 將輸入分段
fold 跟 fmt 很像,但他通常是用來格式化與非增加文字可讀性的資料,下面有個簡單的例子:
# (10) Format text in 3 column width lines
$ echo oxoxoxoxo | fold -w3
oxo
xox
oxo
# (11) Parse by triplet-char strings -
# search for 'xox'
$ echo oxoxoxoxo | fold -w3 | grep "xox"
xox
# (12) One way to iterate through a string of chars
$ for i in $(echo 12345 | fold -w1)
> do
> ### perform some task ...
> print $i
> done
1
2
3
4
5
tr
tr 為一個簡單的字組轉換器,它的實際應用與一些較復雜的程序有點重復,像是 sed 和 awk [ 更大型的二進制程序代碼 ]。tr
在文字的置換、刪從及增加上很好用。它的指令模式是 " 從 ( 放在第一個參數 ) …到 ( 第二個參數 )… "
的模式;下面為它一般的使用語法:
# (13) tr usage
tr [options] "set1" ["set2"]
定制精彩的命令提示行
提示行魔術--增強系統提示行
Daniel Robbins
Gentoo Technologies 公司總載兼首席執行官
內容:
提示行基礎
彩色化
Xterm 中的樂趣
參考資源
作者簡介
如果您很容易使 shell 提示行變得色彩絢爛斕且帶有更多信息, 為什么還要堅持用單調 的標準 shell 提示行呢?在這篇技巧中,Daniel Robbins 將說明如何獲得符合您的意愿的shell 提示行,并會說明如何動態更新 X 終端的標題欄。
作為 Linux/UNIX 人,我們有很長的時間是在 shell 中工作,并且在許多情況下, 下面這一行就是始終盯著我們的那個提示行:
bash-2.04$
如果您恰巧是超級用戶 (root),您就有權使用下面這個美麗的標示“身份”的提示行版本:
bash-2.04#
這些提示行并不是十分漂亮。這也就難怪幾種 Linux 版本對默認提示行進行了升級,
在其中增加了顏色和更多的信息。但是,即便您恰好有一個本身帶有很好的彩色提示行的新式版本,它也不可能是完美無缺的。您或許希望在提示行中增加或更改幾
種顏色,或者增加(或刪除)一些信息。從頭開始設計屬于您自己的彩色的、經過裝飾的提示行并不難。
提示行基礎在 bash 下,可以通過更改 PS1 環境變量的值來設置提示行,如下所示:
$ export PS1="> "
>
更改會立即生效,通過將 "export" 定義放在您的 ~/.bashrc 文件中可將這種更改固定
下來。只要您愿意,PS1 可以包含任意數量的純文本:
$ export PS1="This is my super prompt > "
This is my super prompt >
盡管這很有趣,但在提示行中包含大量靜態文本并不是特別有用。大多數定制的提示行包 含諸如用戶名、工作目錄或主機名之類的信息。 這些花絮信息可以幫助您在 shell 世界中遨游。例如,下面的提示行將顯示您的用戶名和主機名:
$ export PS1="\u@\H > "
drobbins@freebox >
這個提示行對于那些以多個不同名稱的帳戶登錄多臺機器的人尤為有用,因為它可以提醒您:您目前在哪臺機器上操作,擁有什么權限。
在上面的示例中,我們使用了專用的用反斜杠轉義的字符序列,藉此通知 bash 將用戶名
和主機名插入提示行中,當這些轉義字符序列出現在 PS1 變量中時,bash 就會用特定的值替
換它們。我們使用了序列 "\u"(表示用戶名)和 "\H"(表示主機名的第一部分)。下面是 bash 可識別的全部專用序列的完整列表(您可以在 bash man page 的 "PROMPTING" 部分找
到這個列表):
序列 說明
\a ASCII 響鈴字符(也可以鍵入 \007)
\d "Wed Sep 06" 格式的日期
\e ASCII 轉義字符(也可以鍵入 \033)
\h 主機名的第一部分(如 "mybox")
\H 主機的全稱(如 "mybox.mydomain.com")
\j 在此 shell 中通過按 ^Z 掛起的進程數
\l 此 shell 的終端設備名(如 "ttyp4")
\n 換行符
\r 回車符
\s shell 的名稱(如 "bash")
\t 24 小時制時間(如 "23:01:01")
\T 12 小時制時間(如 "11:01:01")
\@ 帶有 am/pm 的 12 小時制時間
\u 用戶名
\v bash 的版本(如 2.04)
\V Bash 版本(包括補丁級別) ?/td>
\w 當前工作目錄(如 "/home/drobbins")
\W 當前工作目錄的“基名 (basename)”(如 "drobbins")
\! 當前命令在歷史緩沖區中的位置
\# 命令編號(只要您鍵入內容,它就會在每次提示時累加)
\$ 如果您不是超級用戶 (root),則插入一個 "$";如果您是超級用戶,則顯示一個 "#"
\xxx 插入一個用三位數 xxx(用零代替未使用的數字,如 "\007")表示的 ASCII 字符
\\ 反斜杠
\[ 這個序列應該出現在不移動光標的字符序列(如顏色轉義序列)之前。它使 bash 能夠正確計算自動換行。
\] 這個序列應該出現在非打印字符序列之后。
這樣,您已經知道了 bash 中用反斜杠轉義的全部專用序列。請稍微演練一下這些序列,以對它們的工作方式獲得一些感性認識。在您做了一些測試之后,下面開始添加顏色。
彩色化
添加顏色相當容易;第一步是設計不帶顏色的提示行。然后,我們所要做的只是添加終端 (而不是 bash)可識別的專用轉義序列,以使它以彩色顯示文本的某些部分。標準 Linux 終
端和 X 終端允許您設置前景(文字)顏色和背景顏色,如果需要,還可以啟用 "bold" 字符。
有八種顏色可供我們選擇。
顏色是通過在 PS1 中添加專用序列來選擇的 -- 基本上是夾在 "\e["(轉義開方括號)
和 "m" 之間數字值。如果指定一個以上的數字代碼,則用分號將它們分開。 下面是一個顏色
代碼示例:
"\e[0m"
如果將數字代碼指定為零,則它就會通知終端將前景、背景和加粗設置重置為它們的默認 值。您可能會在在提示行結束時使用這個代碼,以使您鍵入的文字成為非彩色的。現在,讓我 們看一下這些顏色代碼。請注意下面的抓屏結果:
顏色表
要使用這個表,首先請查找您要使用的顏色,然后查找對應的前景編號 (30-37) 和背景 編號 (40-47)。例如,如果您喜歡黑底綠字,則可將編號分別設為 32 和 40。 然后打開您的 提示行定義并在其中添加適當的顏色代碼。下面的定義:
export PS1="\w> "
變為:
export PS1="\e[32;40m\w> "
到現在為止,提示行盡管已經很不錯了,但仍不太完美。在 bash 顯示出工作目錄以后,我們需要使用 "\e[0m" 序列將顏色重新設置為正常值。
export PS1="\e[32;40m\w> \e[0m" 這個定義將顯示一個漂亮的綠色提示行,但我們仍需要做一些掃尾工作。我們不需要包括
"40" 這個背景顏色設置,因為它將背景設置為黑色,而黑色是默認顏色。此外,綠色還很暗;
我們通過添加一個 "1" 顏色代碼來修正這個問題,這將啟用更亮的加粗文字。 除了這個修改
之外,我們還需要將全部非打印字符用專用的 bash 轉義序列 "\[" 和 "\]" 括起來。這兩個序列通知
bash,被括起來的字符不占用行上的任何空間, 這樣就使自動換行能夠繼續正常工
作。沒有這兩個轉義序列,盡管您有了一個非常漂亮的提示行,但是如果您鍵入的命令恰好到 達終端的最右端,就會造成顯示混亂。下面是我們最終的提示行:
export PS1="\[\e[32;1m\]\w> \[\e[0m\]"
別擔心在同一個提示行中使用幾種顏色,就像下面這樣:
export PS1="\[\e[36;1m\]\u@\[\e[32;1m\]\H> \[\e[0m\]"
Xterm 中的樂趣
我已說明了如何在提示行中添加信息和顏色,但您還可以更進一步。您可以通過在提示行中添加專用代碼來使 X 終端(如 rxvt 或 aterm)的標題欄得到動態更新。 您所要做的只是
將下面的序列添加到您的 PS1 提示行中:
"\e]2;titlebar\a"
只須用您希望其出現在 xterm 標題欄中的文字替換子串 "titlebar" 即可, 現在已經一 切就緒了!不必使用靜態文字;您可以將
bash 轉義序列插入標題欄中。請查看下面這個示例,它將用戶名、主機名和當前工作目錄顯示在標題欄中,并定義了一個簡短、明亮的綠色提示行:
export PS1="\[\e]2;\u@\H \w\a\e[32;1m\]>\[\e[0m\] "
這就是我在上面的抓屏結果中所用的那個提示行。我喜歡這個提示行,因為它將全部信息顯示在標題欄上,而不是顯示在終端上,終端對一行可以顯示多少字符有限制。順便提一句,
確保用 "\[" 和 "\]" 將您的標題欄序列括起來(因為就終端而言,這個序列是非打印序列)。
將大量信息放在標題欄中的問題是,如果您使用非圖形終端(如系統控制臺),則看不到這些
信息。為了解決這個問題,可以在您的 .bashrc 中添加以下幾行:
if [ "$TERM" = "linux" ]
then
#we're on the system console or maybe telnetting in
export PS1="\[\e[32;1m\]\u@\H > \[\e[0m\]"
else
#we're not on the console, assume an xterm
export PS1="\[\e]2;\u@\H \w\a\e[32;1m\]>\[\e[0m\] "
fi
這個 bash 條件語句將根據當前的終端設置動態設置提示行。為了獲得一致性,您一定希
望配置您的 ~/.bash_profile,以便它在啟動時搜索 (source) 您的 ~/.bashrc。確保您的
~/.bash_profile 文件中有以下這樣一行:
source ~/.bashrc
這樣,無論您開啟一個登錄 shell 還是一個非登錄 shell,都會獲得同樣的提示行。
好了,您已掌握了提示行魔術。現在盡情享受一下,制作一個漂亮的彩色提示行吧!
參考資源
* rxvt 是一款既好又小的 xterm,它恰好有大量關于轉義序列的文檔資料, 這些資料都
集中在源代碼 tar 包中的 "doc" 目錄下。
* aterm 是基于 rxvt 的另一款終端程序。它支持幾種很好的可視化特性,如透明和著色。
* bashish 是適用于各種終端的一種主題引擎。請查看工作中的 bashish 的一些很好的
抓屏結果!
作者簡介
Daniel Robbins 住在新墨西哥州的 Albuquerque,他是 Gentoo Technologies 公司的總
載兼首席執行官,他還是 Gentoo Linux(一種運行于個人計算機上的高級 Linux)和
Portage 系統(Linux 的下一代端口系統)的創作者。他同時也是 Macmillan 出版的
Caldera OpenLinux Unleashed、SuSE Linux Unleashed 和 Samba Unleashed 幾本書的重要
作者之一。由于深受 Pan Man 的影響,Daniel 在讀二年級時第一次接解到 Logo 編程語言后
即執迷于計算機。這可能是他后來作為 SONY El
Linux關機命令詳解
摘要:在linux下一些常用的關機/重啟命令有shutdown、halt、reboot、及init,它們都可以達到重啟系統的目的,但每個命令的內部工作過程是不同的,通過本文的介紹,希望你可以更加靈活的運用各種關機命令.
在linux下一些常用的關機/重啟命令有shutdown、halt、reboot、及init,它們都可以達到重啟系統的目的,但每個命令的內部工作過程是不同的,通過本文的介紹,希望你可以更加靈活的運用各種關機命令。
1.shutdown
shutdown命令安全地將系統關機。
有些用戶會使用直接斷掉電源的方式來關閉linux,這是十分危險的。因為linux與windows不同,其后臺運行著許多進程,所以強制關機可能會導
致進程的數據丟失﹐使系統處于不穩定的狀態﹐甚至在有的系統中會損壞硬件設備。
而在系統關機前使用shutdown命令﹐系
統管理員會通知所有登錄的用戶系統將要關閉。并且login指令會被凍結﹐即新的用戶不能再登錄。直接關機或者延遲一定的時間才關機都是可能的﹐還可能重
啟。這是由所有進程〔process〕都會收到系統所送達的信號〔signal〕決定的。這讓像vi之類的程序有時間儲存目前正在編輯的文檔﹐而像處理郵
件〔mail〕和新聞〔news〕的程序則可以正常地離開等等。
shutdown執行它的工作是送信號〔signal〕給
init程序﹐要求它改變runlevel。Runlevel 0被用來停機〔halt〕﹐runlevel
6是用來重新激活〔reboot〕系統﹐而runlevel
1則是被用來讓系統進入管理工作可以進行的狀態﹔這是預設的﹐假定沒有-h也沒有-r參數給shutdown。要想了解在停機〔halt〕或者重新開機
〔reboot〕過程中做了哪些動作﹐你可以在這個文件/etc/inittab里看到這些runlevels相關的資料。
shutdown 參數說明:
[-t] 在改變到其它runlevel之前﹐告訴init多久以后關機。
[-r] 重啟計算器。
[-k] 并不真正關機﹐只是送警告信號給每位登錄者〔login〕。
[-h] 關機后關閉電源〔halt〕。
[-n] 不用init﹐而是自己來關機。不鼓勵使用這個選項﹐而且該選項所產生的后果往往不總是你所預期得到的。
[-c] cancel current process取消目前正在執行的關機程序。所以這個選項當然沒有時間參數﹐但是可以輸入一個用來解釋的訊息﹐而這信息將會送到每位使用者。
[-f] 在重啟計算器〔reboot〕時忽略fsck。
[-F] 在重啟計算器〔reboot〕時強迫fsck。
[-time] 設定關機〔shutdown〕前的時間。
2.halt----最簡單的關機命令
其實halt就是調用shutdown -h。halt執行時﹐殺死應用進程﹐執行sync系統調用﹐文件系統寫操作完成后就會停止內核。
參數說明:
[-n] 防止sync系統調用﹐它用在用fsck修補根分區之后﹐以阻止內核用老版本的超級塊〔superblock〕覆蓋修補過的超級塊。
[-w] 并不是真正的重啟或關機﹐只是寫wtmp〔/var/log/wtmp〕紀錄。
[-d] 不寫wtmp紀錄〔已包含在選項[-n]中〕。
[-f] 沒有調用shutdown而強制關機或重啟。
[-i] 關機〔或重啟〕前﹐關掉所有的網絡接口。
[-p] 該選項為缺省選項。就是關機時調用poweroff。
3.reboot
reboot的工作過程差不多跟halt一樣﹐不過它是引發主機重啟﹐而halt是關機。它的參數與halt相差不多。
4.init
init是所有進程的祖先﹐它的進程號始終為1﹐所以發送TERM信號給init會終止所有的用戶進程﹑守護進程等。shutdown
就是使用這種機制。init定義了8個運行級別(runlevel),init 0為關機﹐init
1為重啟。關于init可以長篇大論﹐這里就不再敘述。另外還有telinit命令可以改變init的運行級別﹐比如﹐telinit
-iS可使系統進入單用戶模式﹐并且得不到使用shutdown時的信息和等待時間。
ls命令選項詳解
ls 命令可以說是Linux下最常用的命令之一。它有眾多的選項,其中有很多是很有用的,你是否熟悉呢?下面列出了 ls 命令的絕大多數選項。
-a 列出目錄下的所有文件,包括以 . 開頭的隱含文件。
-b 把文件名中不可輸出的字符用反斜杠加字符編號(就象在C語言里一樣)的形式列出。
-c 輸出文件的 i 節點的修改時間,并以此排序。
-d 將目錄象文件一樣顯示,而不是顯示其下的文件。
-e 輸出時間的全部信息,而不是輸出簡略信息。
-f -U 對輸出的文件不排序。
-g 無用。
-i 輸出文件的 i 節點的索引信息。
-k 以 k 字節的形式表示文件的大小。
-l 列出文件的詳細信息。
-m 橫向輸出文件名,并以“,”作分格符。
-n 用數字的 UID,GID 代替名稱。
-o 顯示文件的除組信息外的詳細信息。
-p -F 在每個文件名后附上一個字符以說明該文件的類型,“*”表示可執行的普通
文件;“/”表示目錄;“@”表示符號鏈接;“|”表示FIFOs;“=”表示套
接字(sockets)。
-q 用?代替不可輸出的字符。
-r 對目錄反向排序。
-s 在每個文件名后輸出該文件的大小。
-t 以時間排序。
-u 以文件上次被訪問的時間排序。
-x 按列輸出,橫向排序。
-A 顯示除 “.”和“..”外的所有文件。
-B 不輸出以 “~”結尾的備份文件。
-C 按列輸出,縱向排序。
-G 輸出文件的組的信息。
-L 列出鏈接文件名而不是鏈接到的文件。
-N 不限制文件長度。
-Q 把輸出的文件名用雙引號括起來。
-R 列出所有子目錄下的文件。
-S 以文件大小排序。
-X 以文件的擴展名(最后一個 . 后的字符)排序。
-1 一行只輸出一個文件。
--color=no 不顯示彩色文件名
--help 在標準輸出上顯示幫助信息。
--version 在標準輸出上輸出版本信息并退出。
Linux系統命令(文件傳輸)
uuto
功能說明:將文件傳送到遠端的UUCP主機。
語 法:uuto [文件][目的]
補充說明:uuto為script文件,它實際上會執行uucp,用來將文件傳送到遠端UUCP主機,并在完成工作后,以郵件通知遠端主機上的用戶。
參 數:
相關參數請參考uucp指令。
-----------------------------------------
uupick
功能說明:處理傳送進來的文件。
語 法:uupick [-v][-I<配置文件>][-s<主機>][-x<層級>][--help]
補充說明:當其他主機通過UUCP將文件傳送進來時,可利用uupick指令取出這些文件。
參 數:
-I<配置文件>或--config<配置文件> 指定配置文件。
-s<主機>或--system<主機> 處理由指定主機傳送過來的文件。
-v或--version 顯示版本信息。
--help 顯示幫助。
---------------------------------------
uucp
功能說明:在Unix系統之間傳送文件。
語 法:uucp [-cCdfjmrRtvW][-g<等級>][-I<配置文件>][-n<用戶>][-x<類型>][--help][...來源][目的]
補充說明:UUCP為Unix系統之間,通過序列線來連線的協議。uucp使用UUCP協議,主要的功能為傳送文件。
參 數:
-c或--nocopy 不用將文件復制到緩沖區。
-C或--copy 將文件復制到緩沖區。
-d或--directiories 在傳送文件時,自動在[目的]建立必要的目錄。
-f或--nodirectiories 在傳送文件時,若需要在[目的]建立目錄,則放棄執行該作業。
-g<等級>或--grade<等級> 指定文件傳送作業的優先順序。
-I<配置文件>或--config<配置文件> 指定uucp配置文件。
-j或--jobid 顯示作業編號。
-m或--mail 作業結束后,以電子郵件報告作業是否順利完成。
-n<用戶>或--notify<用戶> 作業結束后,以電子郵件向指定的用戶報告作業是否順利完成。
-r或--nouucico 不要立即啟動uucico服務程序,僅將作業送到隊列中,待稍后再執行。
-R或--recursive 若[來源]為目錄,則將整個目錄包含子目錄復制到[目的]。
-t或--uuto 將最后一個參數視為"主機名!用戶"。
-v或--version 顯示版本信息。
-W或--noexpand 不要將目前所在的目錄加入路徑。
-x<類型>或--debug<類型>啟動指定的排錯模式。
--help 顯示幫助。
[源...] 指定源文件或路徑。
[目的] 指定目標文件或路徑。
---------------------------------------------
uucico
功能說明:UUCP文件傳輸服務程序。
語 法:uucico
[-cCDefqvwz][-i<類型>][-I<文件>][-p<連接端口號碼>][-][-rl][-
s<主機>][-S<主機>][-u<用戶>][-x<類型>][--help]
補充說明:uucico是用來處理uucp或uux送到隊列的文件傳輸工具。uucico有兩種工作模式:主動模式和附屬模式。當在主動模式下時,uucico會調用遠端主機;在附屬模式下時,uucico則接受遠端主機的調用。
參 數:
-c或--quiet 當不執行任何工作時,不要更改記錄文件的內容及更新目前的狀態。
-C或--ifwork 當有工作要執行時,才調用-s或-S參數所指定主機。
-D或--nodetach 不要與控制終端機離線。
-e或--loop 在附屬模式下執行,并且出現要求登入的提示畫面。
-f或--force 當執行錯誤時,不等待任何時間即重新調用主機。
-i<類型>或--stdin<類型> 當使用到標準輸入設備時,指定連接端口的類型。
-I<文件>--config<文件> 指定使用的配置文件。
-l或--prompt 出現要求登入的提示畫面。
-p<連接端口號碼>或-port<連接端口號碼> 指定連接端口號碼。
-q或--quiet 不要啟動uuxqt服務程序。
-r0或--slave 以附屬模式啟動。
-s<主機>或--system<主機> 調用指定的主機。
-u<用戶>或--login<用戶> 指定登入的用戶帳號,而不允許輸入任意的登入帳號。
-v或--version 顯示版本信息,并且結束程序。
-w或--wait 在主動模式下,當執行調用動作時,則出現要求登入的提示畫面。
-x<類型>或-X<類型>或outgoing-debug<類型> 啟動指定的排錯模式。
-z或--try-next 當執行不成功時,嘗試下一個選擇而不結束程序。
--help 顯示幫助,并且結束程序。
--------------------------------------
tftp(trivial file transfer protocol)
功能說明:傳輸文件。
語 法:tftp [主機名稱或IP地址]
補充說明:FTP讓用戶得以下載存放于遠端主機的文件,也能將文件上傳到遠端主機放置。tftp是簡單的文字模式ftp程序,它所使用的指令和FTP類似。
-----------------------------------------
ncftp(nc file transfer protocol)
功能說明:傳輸文件。
語 法:ncftp [主機或IP地址]
補充說明:FTP讓用戶得以下載存放于服務器主機的文件,也能將文件上傳到遠端主機放置。NcFTP是文字模式FTP程序的佼佼者,它具備多樣特色, 包括顯示傳輸速率,下載進度,自動續傳,標住書簽,可通過防火墻和代理服務器等。
-----------------------------------------
ftpwho
功能說明:顯示目前所有以FTP登入的用戶信息。
語 法:ftpwho
補充說明:執行這項指令可得知目前用FTP登入系統的用戶有那些人,以及他們正在進行的操作。
--------------------------------
ftpshut(ftp shutdown)
功能說明:在指定的時間關閉FTP服務器。
語 法:ftpshut [-d<分鐘>][-l<分鐘>][關閉時間]["警告信息"]
補充說明:本指令提供系統管理者在設置的時間關閉FTP服務器,且能在關閉之前發出警告信息通知用戶。關閉時間若設置后為"none",則會馬上關閉服
務器。如果采用"+30"的方式來設置表示服務器在30分鐘之后關閉。依次類推,假設使用"1130"的格式則代表服務器會在每日的11時30分關閉,時
間格式為24小時制。FTP服務器關閉后,在/etc目錄下會產生一個名稱為shutmsg的文件,把它刪除后即可再度啟動FTP服務器的功能。
參 數:
-d<分鐘> 切斷所有FTP連線時間。
-l<分鐘> 停止接受FTP登入的時間。
---------------------------------
ftpcount
功能說明:顯示目前以FTP登入的用戶人數。
語 法:ftpcount
補充說明:執行這項指令可得知目前用FTP登入系統的人數以及FTP登入人數的上限。
--------------------------------
ftp(file transfer protocol)
功能說明:設置文件系統相關功能。
語 法:ftp [-dignv][主機名稱或IP地址]
補充說明:FTP是ARPANet的標準文件傳輸協議,該網絡就是現今Internet的前身。
參 數:
-d 詳細顯示指令執行過程,便于排錯或分析程序執行的情形。
-i 關閉互動模式,不詢問任何問題。
-g 關閉本地主機文件名稱支持特殊字符的擴充特性。
-n 不使用自動登陸。
-v 顯示指令執行過程。
----------------------------------------
bye
功能說明:中斷FTP連線并結束程序。
語 法:bye
補充說明:在ftp模式下,輸入bye即可中斷目前的連線作業,并結束ftp的執行。
Linux_FAQ之三:系統命令
背景資料
·Linux入門與提高
Q: 請問 mount 命令如何使用?
A: 寫常用的幾個,其馀請 man 8 mount
bootdisk:
mount -t minix /dev/fd0 /mnt
(SingleBoy 注: 這里 -t 后面的參數可能需要用別的, 可以試下msdos 或者 ext2) DOS Partition:
假設 dos 裝在 /dev/hda1, 并且存在 /dos 這個目錄, 且為空.
則 mount -t vfat /dev/hda1 /dos 光碟機:
假設 CD-ROM 裝在 /dev/hdb, 并且存在 /cdrom 這個目錄, 且為空.則 mount -t is9660 /dev/hdb /cdrom ^^^^^^->cdrom 的檔案格式..
-- by lanzj (nal) 收集整理
Q: 我不能 mount 我的光驅了,根據 /etc/fstab 來mount /cdrom,系統出錯
A: 請在啟動時看清楚你的光驅接在哪個設備上,或者在進入系統后運行dmesg看看。假設接在/dev/hdc上,就如此這般:
#cd /dev
#ln -s hdc cdrom
以后就可以用mount /cdrom來將光驅mount到/cdromm上了。
-- by emi (你既無心我便休)
Q: 某個分區 mount 出來是只讀, 如何解決?
用mount -v可以看到那個分區是(rw)的,應該是可寫的。可是就是沒法寫進東西去,老是說這是一個read-only filesystem
A: mount -n -o remount,rw <安裝點>
--by LinuxFarmer (LinuxZealot)
Q: 請問 ls --color 時顯示的彩色是如何定義的? 如何修改?
A: 顏色:綠色--->可執行檔
藍色--->目錄
紅色--->壓縮檔
淺藍色->連結檔
灰色--->一般檔(沒有定義的檔)
可修改/etc/DIR_COLORS
-- by tou.bbs@Friend.pine.ncu.edu.tw (風)
Q: 如何讓 ls 只列出目錄不列出檔案
A: ls -l | grep ^d
或者
ls -F | grep /
-- by lanzj (nal) 收集整理
Q: 請問gz和tar結尾的文件如何安裝?
A: .tar .......tar vxf*.tar
tar.gz.....tar vzxf *.tar.gz
-- by aazheng (你快樂所以我快樂)
tar zvfx *.tar.gz(*.tgz) -C directory //把*.tar.gz文件解開到指定目錄 -- by
lcipher (斷劍阿飛) 如果是slackware 的軟件包, 就是用 .tgz 結尾的. 個人認為這是 .tar.gz 的縮寫.
這種軟件包是包含路徑的, 所以不用管它是在哪個目錄下, 安裝就用tar zvxf xxxxx.tgz就可以了.
-- by SingleBoy (孤鷹★無欲無求★)
Q: 如何在 Linux 中拷貝和粘貼文本
A: 在 X Window 環境下, 可以用鼠標左鍵來選擇文本,然后可以用鼠標中鍵把它粘貼到你所想要的地方。如果是兩鍵鼠標則在配置是要選擇防真3鍵鼠標,之后同時按下左右鍵模擬中鍵。
在控制臺模式下, 需要啟動gpm守護神(deamon)程序, 用鼠標右鍵來粘貼。
-- by merry (此情不渝)
Q: 如何讓兩個用戶同時使用 X Windows?
A: 在同一個機器上使用多個XWindow:
Ctrl + Alt + F1: startx
Ctrl + Alt + F1: startx -- :2
然后可以用Crtl + Alt + F7和Ctrl + Alt + F8切換.
-- by nethunter (鳳翼天翔) 收集提供
我記得最多能用四個..., try
startx --:3
startx --:4
then Ctl+Alt+F7~F10
-- by chan (僕は 哲人でない)
Q: 如何在linux下查網卡的MAC地址?
A: 可以用 ifconfig 或者 arp
/sbin/ifconfig
eth1 Link encap:Ethernet HWaddr 00:10:4B:08:CE:38
~~~~~~~~~~~~~~~~~~~~~~~~~
inet addr:192.168.127.45 Bcast:192.168.127.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:7253226 errors:8369 dropped:0 overruns:0 frame:8370
TX packets:4501290 errors:0 dropped:0 overruns:0 carrier:2
collisions:111534
Interrupt:10 Base address:0xb800
/sbin/arp
Address HWtype HWaddress Flags Mask Iface
192.168.127.120 ether 00:10:A4:FE:35:02 C eth1
192.168.127.203 ether 00:80:C7:5A:E8:70 C eth1
handsome ether 00:00:E8:75:B6:52 C eth1
掃盲行動之:Linux常用命令簡
su
su命令是最基本的命令之一,常用于不同用戶間切換。例如,如果登錄為 user1,要切換為user2,只要用如下命令:
$su user2
然后系統提示輸入user2口令,輸入正確的口令之后就可以切換到user2。完成之后就可以用exit命令返回到user1。
su命令的常見用法是變成根用戶或超級用戶。如果發出不帶用戶名的su命令 ,則系統提示輸入根口令,輸入之后則可切換為根用戶。
如果登錄為根用戶,則可以用su命令成為系統上任何用戶而不需要口令。
pwd
pwd命令也是最常用最基本的命令之一,用于顯示用戶當前所在的目錄。
cd
cd命令不僅顯示當前狀態,還改變當前狀態,它的用發跟dos下的cd命令基本一致。
cd ..可進入上一層目錄
cd -可進入上一個進入的目錄
cd ~可進入用戶的home目錄
ls
ls命令跟dos下的dir命令一樣,用于顯示當前目錄的內容。
如果想取得詳細的信息,可用ls -l命令, 這樣就可以顯示目錄內容的詳細信息。
如果目錄下的文件太多,用一屏顯示不了,可以用ls -l |more分屏顯示 。
find
find命令用于查找文件。這個命令可以按文件名、建立或修改日期、所有者(通常是建立文件的用戶)、文件長度或文件類型進行搜索。
find命令的基本結構如下:
$find
其中指定從哪個目錄開始搜索。指定搜索條件。表示找到文件怎么處理。一般來說,要用-print動作,顯示 整個文件路徑和名稱。如果沒有這個動作,則find命令進行所要搜索而不顯示結果,等于白費勁。
例如,要搜索系統上所有名稱為ye的文件,可用如下命令:
$find / -name ye -print
這樣就可以顯示出系統上所有名稱為ye的文件。
tar
tar最初用于建立磁帶備份系統,目前廣泛用于建立文件發布檔案。可用如下方法建立tar檔案:
$tar cvf
例如,如果要將當前目錄中所有文件存檔到ye.tar中,可用如下命令:
$tar cvf ye.tar *.*
要瀏覽檔案內容,將c選項變成t。如果要瀏覽ye.tar檔案中的內容,可用如下命令:
$tar tvf ye.tar
要取出檔案內的內容,將c選項變成x。如果要將ye.tar檔案中的內容取到當前目錄中,可用如下命令:
$tar xvf ye.tar
gzip
gzip命令用于壓縮文件。 例如,如果要將ye.txt文件壓縮,可用如下命令:
$gzip ye.txt
這樣就可以壓縮文件并在文件名后面加上gz擴展名,變成文件ye.txt.gz。
解壓縮文件可用gzip -d命令實現:
$gzip -d ye.txt.gz
這樣就可以解壓縮文件并刪除gz擴展名。除此之外還可以用gunzip命令來解 壓縮文件,效果跟用gzip -d命令一樣。
舊版的tar命令不壓縮檔案,可用gzip壓縮。例如:
$tar cvf ye.tar *.txt
$gzip ye.tar
則可建立壓縮檔案ye.tar.gz。
新版的tar可以直接訪問和建立gzip壓縮的tar檔案,只要在tar命令中加上z 選項就可以了。例如:
$tar czvf ye.tar *.txt
生成壓縮檔案ye.tar.gz,
$tar tzvf ye.tar *.txt
顯示壓縮檔案ye.tar.gz的內容,而
$tar xzvf ye.tar *.txt
取出壓縮檔案ye.tar.gz的內容。
mkdir
這個命令很簡單,跟dos的md命令用法幾乎一樣,用于建立目錄。
cp
cp命令用于復制文件或目錄。
cp命令可以一次復制多個文件,例如:
$cp *.txt *.doc *.bak /home
將當前目錄中擴展名為txt、doc和bak的文件全部復制到/home目錄中。
如果要復制整個目錄及其所有子目錄,可以用cp -R命令。
rm
rm命令用于刪除文件或目錄。
rm命令會強制刪除文件,如果想要在刪除時提示確認,可用rm -i命令。
如果要刪除目錄,可用rm -r命令。rm -r命令在刪除目錄時,每刪除一個文件或目錄都會顯示提示,如果目錄太大,響應每個提示是不現實的。這時可以用 rm -rf命令來強制刪除目錄,這樣即使用了-i標志也當無效處理。
mv
mv命令用于移動文件和更名文件。例如:
$mv ye.txt /home
將當前目錄下的ye.txt文件移動到/home目錄下,
$mv ye.txt ye1.txt
將ye.txt文件改名為ye1.txt。
類似于跟cp命令,mv命令也可以一次移動多個文件,在此不再贅敘。
reboot
重啟命令,不必多說。
halt
關機命令,不必多說。
常用的系統狀態查詢命令
# lsdev –C –s scsi
列出各個SCSI設備的所有相關信息:如邏輯單元號,硬件地址及設備文件名等。
# ps -ef
列出正在運行的所有進程的各種信息:如進程號及進程名等。
# netstat -rn
列出網卡狀態及路由信息等。
# netstat -in
列出網卡狀態及網絡配置信息。
# df -k
列出已加載的邏輯卷及其大小信息。
# mount
列出已加載的邏輯卷及其加載位置。
# uname -a
列出系統ID 號,系統名稱,OS版本等信息。
# hostname
列出系統網絡名稱。
# lsvg –l rootvg,lsvg –p rootvg
顯示邏輯卷組信息,如包含哪些物理盤及邏輯卷等。
# lslv –l datalv,lslv –p datalv
顯示邏輯卷各種信息,如包含哪些盤,是否有鏡像等。
八 網絡故障定位方法
網絡不通的診斷過程:
ifconfig 查看網卡是否啟動 (up)
netstat –i 查看網卡狀態
Ierrs/Ipkts 和 Oerrs/Opkts是否>1%
ping自己網卡地址 (ip 地址)
ping其它機器地址,如不通,在其機器上用diag檢測網卡是否有問題。
在同一網中, subnetmask 應一致。
網絡配置的基本方法:
(1) 如需修改網絡地址、主機名等,一定要用 chdev 命令
# chdev –l inet0 –a hostname=myhost
# chdev -l en0 -a netaddr='9.3.240.58' -a netmask=255.255.255.0’
(2) 查看網卡狀態:# lsdev –Cc if
(3) 確認網絡地址:# ifconfig en0
(4) 啟動網卡:# ifconfig en0 up
(5) 配置路由
有兩種方式加入路由:
永久路由
# chdev -l inet0 -a route=’10.47.0.0’,’9.3.240.59’
臨時路由
# route add 10.47.1.2 9.3.240.59
用命令 netstat -rn 查看路由表
附:常用命令列表:
Any XXXX, ####, ****, or X is to be substituted by a name, resource name or #,
fn = filename
DIR = Directory
| = pipe symbol
bosboot -a -d /dev/hdiskx -rebuilds boot record/image on boot device(hdiskx)
cat -view contents of a file
cat /tmp/****.1 -view a file, look at output
cat fn fn > newfile -combines two files to a single file
cd -will return you to default DIR
cd / -will put in root DIR
cd /xxxx -change you to a DIR anywhere is system
cd .. -will drop you out of 1 DIR at a time
cd xxxxx -will change you to a DIR in current dir
cfgmgr -will auto config devices
cfgmgr -v & -(-v) shows processes (&) puts in background
chps -s xx hd# -increase paging space (xx=# of addt'l PPs)
cp oldfn newfn -copy a file
cp oldfn Dirn -copy a file to another directory
crontab -l -list crontab entries for the current user
ctrl + v -will page down 1 page
ctrl + 6 -will page up 1 page
del fn -same as rm -i,promts to remove fn
df -I -shows status of file systems (no inodes)
df -Ik -(k) show status in 1024 bites(1mb)(only AIX 4
diag -a -updates changes in hardware configuration
diag ***** -****= a device type(as tape,disk....Fastpath)
diag -cd rmtX -resets tape drive
dosformat -formats a diskette to DOS
dosdir -list files on dos formated diskette
dosread XX YY -copies dos file XX to aix file YY
doswrite YY XX -copies aix file YY to dos file XX
errpt -generates a one line synopsis of logged errors
errpt | pg -list errorlog 1 page @ a time(1st column is ID)
errpt -a -displays detailed information of logged errors
errpt -s Mmddhhmmyy -select entries posted later than date
errpt -aj XXXXXXX -list detail error by ID number.(XXX=1st column)
errpt -d S -list software errors
errpt -j XXXXXXX -list summary report by ID number.
errpt -aN XXXXXX -list detailed report by resource name column
errpt -N XXXXXXX -list summary report by resource name column
errclear 0 -clears errorlog
errclear -N XXXXX 0 -clears errorlog by resource name, 0=all enter
errclear -j XXXXX 0 -clears errorlog by ID number.
finger -same as who but with more details
flcopy -copies a diskette to another diskette
format -formats a diskette in default diskette drive
format -l -formats in lower denity: 1.44 on 2.44 / 720 on 1.44
hostname -responds with host system name
host (hostname) -responds with internet address
instfix -ik IPAR# -lists ipar fix was completely installed
lppchk -v -checks install status of LPPs
lppchk -v 2> /dev/lpX -sends output of lppchk to printer lpx
lpstat -a all -view all printer queues
lptest 80 5 > /dev/lp0 -send test pattern to lp0
ls -list names of files & directories in current dir
ls -lia -list details of files, current dir & subdir
ls -al -list details of files or dir in current dir
lsattr -El xxxxxx -list specific settings on a device
lsdev -C | sort -d -f -list system hardware (devices)
lsdev -C | grep 00-0X -list resourses for a adapter
lsdev -Cc xxxxx -H -list devices(xxx=tty,printer,disk,memory,adpt
lsdev -Cs scsi -list scsi devices(not serial or raid)
lsdev -Cc tape -list tape devices
lsdev -Cs pci -list pci devices
lsdev -Cs isa -list isa devices
lscons -lists the assigned console
lscfg -list hardware list (same as diags list)
lscfg -rl mem* |pg -lists the memory on PCI bus machines
lscfg -vl XXXXX -list config info from a device.(rmt0,hdisk,etc)
lscfg -vl sysplanar0 -lists the machine type, model, s/n on SMP
lsfs -list all filesystems + data from "df" cmd
lslpp -l | grep BROKEN -lists incomplete ptfs
lslv -m hd5 -finds boot drive under pv1 column
lsps -a -checks available paging space
lsps -s -checks available paging space
lspv -lists information about the physical volumes
lspv hdisk# -list drive info
lspv -l hdisk# -lists logical volume group disk in
lsuser -f ALL -lists all attributes for all users
lsvg -lists volume groups
lsvg -p XXXXXX -lists disks in volume group (xxxxx= volume name)
more -reads files and displays the text one screen at a time.
mpcfg -df -list all setting the machine is set to (smp)
mpcfg -cf 11 1 -changes to fast IPL on SMP machines (smp)
mv fn (path fn) -move and rename a file
oslevel -shows AIX version (3.2.4 and above)
pg -reads and displays text one screen at a time.
pdisable -makes unavailable or shows all disabled tty's
pdisable tty# -disables a tty
penable -makes available or shows all enabled tty's
penable tty# -enables a tty
ps -el |pg -look at process running on system
pwd -list what DIR you are currently in
r -repeats last command
rm -i ******* -remove a file & will prompt you if you are sure
rmdev -l XXXXX -removes a device and defines it to data base
rmdev -l XXXXX -d -removes a device and deletes it from data base
set -o vi -sets up to veiw cammands that have been run
:wq -write(save) and quit file
Esc + k -used with SET command to list last command
k,l -k=list next command ran, l=steps you thru command
I -use with SET command inserts characters
j -steps you backwards
cw -cw=removes a word,just type in new word
(use with Esc)
a,x,r -a=added text, x=delete text, r=replace text(r+letter)
R -lets you type over letters or words
smit ***** -(*****= tape,disk,tty,etc.fastpath)
su -stands for switch user,(NOT super user)
su -switches to root id or prompts you for password
su XXXXXX -switches to XXXXXX's id
tar -cvf /dev/rmtX /etc -will copy /etc to a tape drive
tar -tvf /dev/rmtX -will read a tape drive
tctl -f /dev/rmtX rewoffl -rewind & eject tape
tctl -f /dev/rmtX.1 fsf 3 -forward advances a tape to be read by TAR
tctl -F -list avail commands(-F flag is not correct)
tctl retension -retensions tape in tape drive
& -put any command in background with process ID<