(一)基本命令
命令格式: 命令 參數(shù)
★1. ls 顯示文件名,等同于dos下dir命令
命令格式:ls [option] file
option:
-l 顯示詳細(xì)列表
文件類型和權(quán)限 | 文件連接數(shù) |所有者| 用戶組脈| 文件長度 | 修改日期 | 文件名
-a 顯示所有文件,包含隱藏文件(以. 起頭的文件名)
-R 顯示文件及所有子目錄
-F 顯示文件(后跟*)和目錄(后跟/)
-d 與l選項(xiàng)合用,顯示目錄名而非其內(nèi)容
-p
★2. cd 目錄轉(zhuǎn)換,等同于dos下cd命令
注意目錄分隔符為“/”,與dos相反
命令格式:cd dirname
★3. pwd 顯示當(dāng)前路徑
★4. cat 顯示文本內(nèi)容,等同于dos下type命令
命令格式:cat filename
★5. more 或pg 以分頁方式查看一個(gè)長文本文件內(nèi)容.
命令格式:more filename
★6. rm 刪除文件
命令格式: rm [-r] filename (filename 可為檔名,或檔名縮寫符號.)
例子 :
rm file1 刪除檔名為 file1 之文檔.
rm file? 刪除檔名中有五個(gè)字元,前四個(gè)字元為file 之所有文檔.
rm f* 刪除檔名中,以 f 為字首之所有文檔.
rm -r dir1 刪除目錄 dir1,及其下所有文檔及子目錄.
★7. mkdir 創(chuàng)建目錄
命令格式: mkdir [-p] directory-name
Exmaple :
mkdir dir1 (建立一新目錄 dir1.)
mkdir -p dir/subdir (直接創(chuàng)建多級目錄)
★8. rmdir 刪除目錄
目錄必須首先為空
命令格式: rmdir directory
★9. cp 文檔復(fù)制 | cp –r 目錄復(fù)制
命令格式: cp [-r] source destination
Exmaple:
Cp -i file1 file2 (將文檔 file1 復(fù)制成 file2 . –i為提示確認(rèn)。)
cp file1 dir1 將文檔 file1 復(fù)制到目錄 dir1 下,文件名仍為 file1.
cp /tmp/file1 . 將目錄 /tmp 下的文檔 file1復(fù)制到現(xiàn)行目錄下,檔名仍為 file1.
cp /tmp/file1 file2 將目錄 /tmp 下的文檔 file1現(xiàn)行目錄下,檔名為file2
cp -r dir1 dir2 (recursive copy) 復(fù)制整個(gè)目錄.若目錄 dir2 不存在,則將目錄dir1,及其所有文檔和子目錄,復(fù)制到目錄 dir2 下,新目錄名稱為dir1.若目錄dir2不存在,則將dir1,及其所有文檔和子目錄,復(fù)制為目錄 dir2.
★10. mv 文件移動(dòng) | 重命名
命令格式: mv source destination
Exmaple:
mv file1 file2 將file1重命名為 file2.
mv file1 dir1 將文檔 file1,移到目錄 dir1 下,檔名仍為 file1.
mv dir1 dir2 若目錄 dir2 不存在,則將目錄 dir1,及其所有檔
案和子目錄,移到目錄 dir2 下,新目錄名稱為 dir1.
若目錄 dir2 不存在,則將dir1,及其所有文檔和子
目錄,更改為目錄 dir2.
11. du 查看目錄所占磁碟容量
命令格式: du [-sk] directory
例子 :
du dir1 顯示目錄 dir1 的總?cè)萘考捌浯文夸浀娜萘?br />du -sk dir1 顯示目錄 dir1 的總?cè)萘?以k bytes為計(jì)量
12. find 查找文件
命令格式: find dir -name filename command
例子:
find . -name hello -print 尋找目前目錄及所有的子目錄內(nèi)叫
hello的文檔.
find . -ctime +7 -print 找出七天內(nèi)未被更動(dòng)的文檔
find . -size +2000m -print 找出大小超過2000 bytes的文檔
find /tmp -user b1234567 -print 在/tmp下屬於b1234567的文檔
find . -name '*.c' -exec rm {} 刪除所有的.c檔
find . -name test\* -print 顯示當(dāng)前目錄及其子目錄文件名前4
位為test的文件名
★13. vi 編輯器
命令狀態(tài):
j,k,h,l:上下左右
0: 行首
$: 行尾
i,I :插入命令,i 在當(dāng)前光標(biāo)處插入 I 行首插入
a,A:追加命令,a 在當(dāng)前光標(biāo)后追加,A 在行末追加
o,O:打開命令,o 在當(dāng)前行下打開一行,O在當(dāng)前行上插入一行
r,R :替換命令,r 替換當(dāng)前光標(biāo)處字符,R從光標(biāo)處開始替換
數(shù)字s: 替換指定數(shù)量字符
x: 刪除光標(biāo)處字符
dd: 刪除當(dāng)前行
d0: 刪除光標(biāo)前半行
d$: 刪除光標(biāo)后半行
ctrl+f :后翻頁
ctrl+b:前翻頁
G : 文件尾
數(shù)字G: 數(shù)字所指定行
/string 查找字符串
n 繼續(xù)查找
N 反向繼續(xù)查找
% 查找對應(yīng)括號
u 取消上次操作
ex命令狀態(tài)
:set number 顯示行號
:set smd 顯示顯示狀態(tài)
:0 文件首
:1,5 copy 7 塊拷貝
:1,5 del 塊刪除
:1,5 move 7 塊移動(dòng)
:1,$s/string1/string2/g 全文件查找string1并替換為string2
:wq! 存盤退出
★14. dtpad 或 txetedit
相當(dāng)于Windows的記事本,對不習(xí)慣vi的人很有用
★15. head -5 filename 顯示文件的前5行
tail -5 filename顯示文件的最后5行
16. sort 按次序顯示文件
17. hostname
18. lp 打印
19. unix2dos 文件格式轉(zhuǎn)化
20. echo顯示文本
21. date
22. script記錄一個(gè)solaris會(huì)話
(二) 增強(qiáng)命令
1. ln 文檔連結(jié)
命令格式:ln -s oldname newname ( Hard link )
同一文檔,可擁有一個(gè)以上之名稱,可將文檔做數(shù)個(gè)連結(jié).例子 :
ln -s file1 file2 將名稱 file2,連結(jié)至文檔 file1.
2.grep 查找一個(gè)字符串
命令格式:
grep string filename
尋找字串的方法很多,比如說我想找所有以M開頭的行.此時(shí)必須引進(jìn)pattern的觀
念.以下是一些簡單的□例,以及說明:
^M 以M開頭的行,^表示開始的意思
M$ 以M結(jié)尾的行,$表示結(jié)束的意思
^[0-9] 以數(shù)字開始的行,[]內(nèi)可列舉字母
^[124ab] 以1,2,4,a,或b開頭的行
^b.503 句點(diǎn)表示任一字母
* 星號表示0個(gè)以上的字母(可以沒有)
+ 加號表示1個(gè)以上的字母
\. 斜線可以去掉特殊意義
eg> cat passwd | grep ^b 列出大學(xué)部有申請帳號者名單
cat passwd | grep ^s 列出交換學(xué)生申請帳號者名單
cat passwd | grep '^b.503' 列出電機(jī)系各年級...
grep '^\.' myfile.txt 列出所有以句點(diǎn)開頭的行
3.fgrep 搜索字符串
命令格式:fgrep string file
4.file 顯示文件類型
命令格式:file fileall
文件類型為shell script,ELF 32bit,ASCII text,data or tar file
5.diff 比較文檔或目錄之不同內(nèi)容
命令格式:diff [-r] name1 name2 ( name1 name2 可同時(shí)為檔名,或目錄名稱.)
例子 :
%diff file1 file2
比較文檔 file1 與 file2 內(nèi),各行之不同處.
%diff -r dir1 dir2
比較目錄 dir1 與 dir2 內(nèi),各文檔之不同處
6.cmp 比較文檔相同部分
命令格式:cmp file1 file2
★7.ftp 遠(yuǎn)程文件傳輸
命令格式: ftp [hostname|IP address]
在進(jìn)入 ftp 之後,如果與 remote host 連接上了,它將會(huì)詢問你 username 與密碼,如果輸入對了就可以開始進(jìn)行文檔傳輸.
注意:如用戶無密碼,無法注冊
(1) ftp 命令
ascii 將傳輸模式設(shè)為 ascii 模式.通常用於傳送文字檔.
binary 將傳輸模式設(shè)為 binary 模式,通常用於傳送執(zhí)行檔,壓縮檔與影像檔等.
cd remote-directory 將遠(yuǎn)程主機(jī)上的工作目錄改變.
lcd [ directory ] 更改本地主機(jī)的工作目錄.
ls [ remote-directory ] [ local-file ] 列出遠(yuǎn)程主機(jī)上的文檔.
get remote-file [ local-file ] 取得遠(yuǎn)方的文檔.
mget remote-files 可使用通用字元一次取得多個(gè)文檔.
put local-file [ remote-file] 將本地主機(jī)的文檔送到遠(yuǎn)程主機(jī).
mput local-files 可使用通用字元一次將多個(gè)文檔放到遠(yuǎn)程主機(jī)上.
help [ command ] 線上輔助指令.
mkdir directory-name 在遠(yuǎn)程主機(jī)創(chuàng)建一個(gè)目錄.
prompt 更改交談模式,若為 on 則在 mput 與 mget 時(shí)每作一個(gè)文檔之傳
輸時(shí)均會(huì)詢問.
quit/bye 離開ftp .
(2) 后臺執(zhí)行ftp
1.首先,將過程所用到的指令依順序放入文檔中,如下:
%cat ftp_command
!mkdir test
lcd test
cd test
prompt
binary
mget *.*
bye
2.其次,建一個(gè).netrc檔,屬性為400,讓ftp 自動(dòng)到此讀取Username
與Password,方可順利login 到的主機(jī),如下:
%cat .netrc
machine remote login anonymous password guest
3.最後再執(zhí)行下面指令即可.
%nohup ftp remote ftp_command > message
8.telnet 遠(yuǎn)程終端訪問
命令格式:
telnet [hostname|IP address]
★9.IO 重新導(dǎo)向
UNIX所有的程式執(zhí)行時(shí),均需要資料的輸入以及輸出資料.一般而言,資料是從鍵盤輸入,并將資料輸出到螢?zāi)簧希@就叫做標(biāo)準(zhǔn)輸入及標(biāo)準(zhǔn)輸出,而我們可以更改標(biāo)準(zhǔn)出輸出入.
A. 更改標(biāo)準(zhǔn)輸入 —— 在命令後方加" filename>" ,即可從filename>這個(gè)文檔輸入資料.
B. 更改標(biāo)準(zhǔn)輸出 —— 在命令後方加"> filename>" ,即可將螢?zāi)惠敵龅馁Y料導(dǎo)向到filename>這個(gè)文檔上.
C. 更改標(biāo)準(zhǔn)輸出 —— 在命令後方加">> filename>",功能與B.相似,只不過這會(huì)將資料加在文檔後方.
D. 管道 —— 在兩個(gè)命令中間加上'|',即可將前方指令的輸出當(dāng)成後方指令
D. 管道 —— 在兩個(gè)命令中間加上'|',即可將前方指令的輸出當(dāng)成後方指令的輸入.
例:
cd /tmp
ls -l > /tmp/ls.out
cat /tmp/ls.out
more /tmp/ls.out
rm /tmp/ls.out
ls | more
ls | wc -l (word count, count line number,算出文檔數(shù)目)\
五、用戶管理(重點(diǎn))
(本節(jié)為重點(diǎn),所有的Unix初學(xué)者要精讀)
(一) 用戶基本知識
1.文件信息
ls -l
drwxrwxrwx filename
(1)訪問權(quán)限
mode : rwx rwx rwx r:read w:write x:execute
user group other
縮寫 : (u) (g) (o)
(2) 文件類型
: 普通文件
b : 塊特殊文件,如硬盤和CDROM設(shè)備
c : 字符文件設(shè)備
l : 符號連接
p : 管道或流,用于進(jìn)程通訊
d : 目錄
2.缺省權(quán)限
創(chuàng)建文件和目錄時(shí),系統(tǒng)自動(dòng)設(shè)置一定的權(quán)限.缺省權(quán)限由用戶mask碼控制
$umask 顯示用戶umask碼
umask 設(shè)置 文件 目錄
022 新文件屬主有讀權(quán)和修改權(quán) 用戶組和其他用戶有讀權(quán)和修改權(quán)用戶組和其他用戶只有讀權(quán)可用umask maskvalue 改變?nèi)笔?quán)限
3.系統(tǒng)安全文件
(1) /etc/passwd
(2) /etc/shadow
/etc/group
/etc/default/login
(二)相關(guān)命令
★1. chmod 改變文檔或目錄之屬性
命令格式:chmod [-R] mode name
( name 可為檔名或目錄名;mode可為 3 個(gè) 8 位元之?dāng)?shù)字,或利用ls -l命令,列出文檔或目錄之讀、寫、執(zhí)行允許權(quán)之文字縮寫.)
例子 :
chmod 755 dir1 將目錄dir1,設(shè)定成任何使用者,皆有讀取及執(zhí)行之權(quán)利,但只有擁有者可做修改.
chmod 700 file1
將文檔file1,設(shè)定只有擁有者可以讀、寫和執(zhí)行.
chmod o+x file2 (u:user g:group o:other a:all) (r:read w:write x: execute)
將文檔file2,增加擁有者可以執(zhí)行之權(quán)利.
chmod g+x file3
將文檔file3,增加群組使用者可執(zhí)行之權(quán)利.
chmod o-r file4
將文檔file4,除去其它使用者可讀取之權(quán)利.
★2.chown 改變文檔或目錄之擁有權(quán)
命令格式:chown [-R] username name ( name 可為檔名或目錄名.)
例子 :
chown Karen file1 將文檔 file1 之擁有權(quán),改為使用者 Karen 所有.
chown -R luhua dir1 將目錄dir1及其下所有文檔和子目錄之擁有權(quán),改為luhua 所有.
★3.chgrp 改變文檔或目錄之群組擁有權(quán)
命令格式:chgrp [-R] groupname name ( name 可為檔名或目錄名 )
例子 :
chgrp PSI file1 將文檔 file1 之群組擁有權(quán),改為 PSI 群組.
chgrp -R Oracle dir1 將目錄dir1,及其下所有文檔和子目錄,改為 Oracle 群組.
★4.touch 改變文檔或目錄之最後修改時(shí)間
命令格式:touch name ( name 可為文檔或目錄名稱.)
5.who 查看當(dāng)前系統(tǒng)上的用戶名單
★who am i 顯示當(dāng)前用戶
finger 列出所有用戶名單
W:
6. id 查看當(dāng)前用戶用戶號和組號
★7. passwd 修改用戶口令
命令格式:passwd username
無用戶參數(shù)修改本用戶口令
★8. su 轉(zhuǎn)換用戶
命令格式: su [-] username
無用戶參數(shù)為轉(zhuǎn)換到超級用戶
- :執(zhí)行新用戶環(huán)境設(shè)置
六、文件系統(tǒng)管理
(一)硬盤和文件資源
硬盤和CD-ROM設(shè)備使用塊設(shè)備接口.硬盤設(shè)備文件存儲(chǔ)在/dev目錄下.
字符設(shè)備文件存于rdsk子目錄下,塊設(shè)備文件存在dsk子目錄下.
1. 邏輯硬盤設(shè)備命名的約定
/dev/[r]dsk/cwtxdysz
例子:
/dev/dsk/c0t3d0s0
Cn:controller number 控制器號,標(biāo)識被硬盤控制的加到系統(tǒng)上的邏輯順序.
c0代表第一個(gè)硬盤控制器,c1代表第二個(gè)硬盤控制器,類推.
tn:target number 目標(biāo)號,是位于控制器內(nèi)的地址,通常在外圍設(shè)備的背面能找到目標(biāo)號.
Dn:disk number 硬盤號,代表連在目標(biāo)上的設(shè)備的邏輯單位號.d0代表第一個(gè)硬盤,d1代表第二個(gè)硬盤,依次類推.對嵌入式SCSI控制器,硬盤驅(qū)動(dòng)號總是0.
Sn:slice or portition number 片或分區(qū)號,標(biāo)識硬盤的分區(qū).
2. dmesg命令
dmesg命令用實(shí)例名和物理名來標(biāo)識連到系統(tǒng)上的設(shè)備.dmesg命令也顯示系統(tǒng)診斷信息、操作系統(tǒng)版本號、物理內(nèi)存的大小以及其他信息.
例子:
下面的輸出信息是從前面的dmesg例子的輸出信息中提取出來的,標(biāo)識著連到系統(tǒng)上的硬盤設(shè)備。對每個(gè)硬盤設(shè)備,輸出三行信息,分別表示:
硬盤的實(shí)例名。
硬盤的物理設(shè)備名.
硬盤的市場名和硬盤的外形信息特征.
硬盤的邏輯設(shè)備名是對硬盤的物理設(shè)備名的符號連接.
硬盤的實(shí)例名是對物理設(shè)備命的內(nèi)核的縮寫.
Solaris命令不用此來表示硬盤.
(二)硬盤分區(qū)
利用在設(shè)備目錄下的字符設(shè)備文件和塊設(shè)備文件對硬盤進(jìn)行訪問.然而,硬盤不是由用戶直接訪問的,是通過分區(qū)對它進(jìn)行訪問的,分區(qū)由設(shè)備目錄下的設(shè)備文件來表示.“片”是“分區(qū)”的另一種說法 .
分區(qū)是管理數(shù)據(jù)的一個(gè)方便的方法.重要的系統(tǒng)文件和程序可以存在一個(gè)分區(qū),而用戶產(chǎn)生的文件放在另一個(gè)分區(qū).它保持不同類型的數(shù)據(jù)在不同的分區(qū).這使系統(tǒng)管理員能靈活地利用數(shù)據(jù)或使用不同的備份機(jī)制.因?yàn)橛脩舻臄?shù)據(jù)每天都發(fā)生變化,系統(tǒng)管理員應(yīng)每天作備份.而重要的系統(tǒng)數(shù)據(jù)不是經(jīng)常變化,也就不需經(jīng)常做備份.由Sun提供的硬盤分區(qū)可多達(dá)8個(gè),用1-7標(biāo)識.
分區(qū)2表示整個(gè)硬盤.分區(qū)5表示/opt文件系統(tǒng),此文件系統(tǒng)用來存貯那些未隨操作系統(tǒng)一起提供的軟件.分區(qū)6 是/usr分區(qū),此文件系統(tǒng)包含那些只能在某些類型的系統(tǒng)上運(yùn)行的文件(如SPARC executables)和一些能在所有系統(tǒng)類型上運(yùn)行的文件(如聯(lián)機(jī)手冊放在/usr/share目錄下).分區(qū)7的文件系統(tǒng)稱為/export/home.這是掛接用戶主目錄的掛接點(diǎn).硬盤分區(qū)通過在/dev目錄下的邏輯設(shè)備文件加以訪問.如/dev/dsk/c0t0d0s0表示在第一個(gè)硬盤上的第一分區(qū).
1.format實(shí)用程序
format程序是一個(gè)硬盤維護(hù)工具,由系統(tǒng)管理員使用,完成以下任務(wù):
重新格式化硬盤.
改變分區(qū)大小.
修理和分析硬盤扇區(qū).
Part 標(biāo)識分區(qū)號0-7.
Tag 顯示分區(qū)標(biāo)簽,分區(qū)標(biāo)簽用于標(biāo)識該分區(qū)所用的目的(root,usr,home,交換區(qū)).
Flag 顯示分區(qū)標(biāo)志,用以標(biāo)識訪問權(quán)限.
Cylinders 顯示起始和終止的柱面號.
Size 按一定方式,以Mbytes或Gbytes為單位顯示分區(qū)大小.
Blocks 按柱面數(shù)、磁頭數(shù)和扇區(qū)數(shù)來標(biāo)識分區(qū)的大小.
2.newfs 創(chuàng)建文件系統(tǒng)
命令格式:newfs raw-device
例子:newfs /dev/rdsk/c0t1d0s0
3.fsck 修復(fù)文件系統(tǒng)
命令格式:fsck raw-device
例子:fsck /dev/rdsk/c0t1d0s0
(三)掛接文件資源
1.mount 文件系統(tǒng)掛接
本地或遠(yuǎn)程文件資源被接到根文件層次,看起來就象是一個(gè)單一的文件系統(tǒng).這個(gè)
連接操作稱為“掛接”,利用mount命令完成 文件資源掛接到根文件層次的目錄被
稱為掛接點(diǎn).在調(diào)用掛接命令前,掛接點(diǎn)必須存在.
命令格式:
mount file_name mount_point
沒有選項(xiàng)的mount命令顯示當(dāng)前已掛接的文件資源.
例子:
# mount /dev/dsk/c0t3d0s0 /export/home
監(jiān)視文件系統(tǒng)
2. df 顯示文件系統(tǒng)所占用的硬盤空間
df -k命令按Kbytes顯示可用硬盤空間的總量和已用的硬盤空間.
各域的含義為:
Filesystem 被掛接的文件系統(tǒng).
Kbytes 按Kbyte計(jì)算的文件系統(tǒng)大小.
Used 已用的數(shù)量(Kbytes).
Avail 可用的數(shù)量(Kbytes).
Capacity 已用的百分比.
Mounted on 掛接點(diǎn).
注意:大約10%的硬盤空間為文件系統(tǒng)保留,在df -k命令的輸出中沒有反映這一點(diǎn).
3.umount 摘下文件資源
從本地系統(tǒng)上摘下文件資源,超級用戶可使用umount命令.
命令格式:
# umount mount_point
如果在被掛接的文件資源目錄里有活動(dòng),則文件資源不可摘下.在摘下前cd至/ 目錄是一個(gè)很好的習(xí)慣,不要不加區(qū)別地將系統(tǒng)正常運(yùn)轉(zhuǎn)所需要的文件系統(tǒng)摘下.
(四) 自動(dòng)掛接文件資源
/etc/vfstab文件
系統(tǒng)引導(dǎo)時(shí)讀/etc/vfstab文件以自動(dòng)掛接文件資源.該文件包含本地和遠(yuǎn)程文件資源的登記項(xiàng).各域的含義:
Device-to-mount 標(biāo)識NFS服務(wù)器和文件系統(tǒng),或被掛接的本地文件系統(tǒng).
Device-to-fsck 標(biāo)識用于執(zhí)行fsck的本地原始設(shè)備.
Mount point 掛接點(diǎn)路徑.
FS-type 文件系統(tǒng)類型,通常是ufs用于本地文件系統(tǒng),nfs用于遠(yuǎn)程文件系統(tǒng).
Fsck-pass 此域中的數(shù)字是fsck經(jīng)過文件系統(tǒng)檢查的順序,相重的數(shù)字表示檢查并行進(jìn)行.
Mount-at-boot 決定文件系統(tǒng)是否在系統(tǒng)引導(dǎo)時(shí)被自動(dòng)掛接.
Mount-options 定義掛接選項(xiàng),如讀/寫訪問.
域中的-表示無選項(xiàng).
/dev/[r]dsk/cwtxdysz用于本地ufs文件系統(tǒng).w,s,y,z分別表示控制器、目標(biāo)、設(shè)備、片.一旦系統(tǒng)建立,手工在單機(jī)系統(tǒng)的/etc/vfstab文件中加入遠(yuǎn)程文件資源登記項(xiàng).
(五)NFS資源
Sun的NFS分布式文件系統(tǒng)允許在網(wǎng)絡(luò)上的機(jī)器共享他們的資源.NFS文件系統(tǒng)使機(jī)器共享本地文件系統(tǒng)和目錄,允許遠(yuǎn)程用戶象本地用戶那樣訪問這些文件系統(tǒng)和目錄.
1.share,shareall 共享文件資源
share –o ro user directory
/etc/init.d/nfs.server start
2.dfshares 顯示遠(yuǎn)程機(jī)共享資源
dfshares remote
3.mount 掛接遠(yuǎn)程文件資源
mount remote:directory localdir
(六)卷管理
1./etc/init.d/volmgt [start|stop] 啟動(dòng)卷管理
2.volcheck 檢查軟盤,如有掛接在floppy目錄下
3.eject [cdrom|floppy] 彈出設(shè)備
七、進(jìn)程管理
1.ps 顯示進(jìn)程號 命令格式:ps -ef
2.kill 清除進(jìn)程 命令格式: kill -9 pid
3.nohup 非掛起運(yùn)行
八、軟件包管理
1.pkginfo 顯示軟件包信息
命令格式: pkginfo -d[ device|pathname] -l pkg_name
例子:
這三個(gè)域?yàn)椋?br />pkg_category 軟件包種類,可為application,graphics 或system.
pkg_name 軟件包名字,如為SUN產(chǎn)品則機(jī)SUNW 起 頭.
Description 軟件產(chǎn)品的簡單說明.
例子:
# pkginfo -d /cdrom/solaris_2_2/s0/Solaris_2.2 |more
利用pkginfo -l 命令顯示關(guān)于軟件包的詳細(xì)信息,包括軟件包的大?。ò从脖P塊大小計(jì)算).
# pkginfo -d /cdrom/solaris_2_2/s0/Solaris_2.2 -l SUNWaudio
上面輸出的最后一行指示軟件包的大小. 利用此信息和df -k命令來確定你是否擁有足 夠硬盤空間來安裝此軟件包.
2. pkgadd 增加軟件包
利用pkgadd 命令增加軟件包,當(dāng)軟件包被成功地安裝以后,向root發(fā)送一個(gè)郵件.
命令格式:
pkgadd -d [device | pathname] pkg_name
例子:
# pkgadd -d /cdrom/solaris_2_2/s0/Solaris_2.2 SUNWaudio
3.pkgchk 校驗(yàn)軟件包的安裝
pkgchk命令通過將軟件包的屬性及路徑名內(nèi)容與系統(tǒng)記錄文件中的值進(jìn)行對比來校驗(yàn).命令格式:
pkgchk [-p path1 [path2...]]
此命令可以檢查整個(gè)軟件包或通過指定-p選項(xiàng)對一特殊路徑名進(jìn)行檢查,無輸出則意味 著沒有問題被檢查出.由于/etc/group 文件大小已被改變,所以文件內(nèi)容的checksum就不對.考察軟件包信息pkgadd命令更新文件/var/sadm/install/contents、 此文件為系統(tǒng)中所有已安裝軟件包的記錄文件.沒有簡單的方法來確定某軟件包具有某一特殊文件(或命令).對于已安裝的軟件包,從/var/sadm/install/contents 記錄文件中查找此軟件包的路徑 名.
4.pkgrm 刪除軟件包
命令格式: pkgrm pkgname1 pkgname2 …
在調(diào)用pkgrm 命令后,將向你警告有依賴關(guān)系的軟件包信息,并提供放棄此操作的提示.當(dāng)軟件包被成功地刪除后,向root發(fā)送一個(gè)郵件.pkgrm命令通過文件/var/sadm/install/contents 來確定軟件包的地址,并且當(dāng)軟件包被刪除以后,更新此文件.假如此軟件包被兩個(gè)或更多的包共享,則一定得將這些依賴于此包的所有軟件包刪除以后才刪除此軟件包.
5.spooling 軟 件 包
一個(gè)軟件包可以由安裝CD-ROM中拷貝過來存放在系統(tǒng)中,但并沒有安裝此軟件包。例如,一個(gè)服務(wù)器可以拷貝存儲(chǔ)一個(gè)軟件包,一個(gè)沒有CD-ROM設(shè)備的系統(tǒng)可以從服務(wù)器上掛接此軟件包,用以安裝。軟件包也可以利用Software Manager遠(yuǎn)程安裝,暫 略.
服務(wù)器下面兩個(gè)pkgadd命令用以說明如何spool一個(gè)軟件包到/var/spool/pkg目錄下或到一個(gè)你指定的目錄下.pkgadd命令的-s spool選項(xiàng)會(huì)缺省地將軟件包拷貝到/var/spool/pkg目錄下.
你可以指定一個(gè)目錄作為-s選項(xiàng)的參數(shù).
客戶假如服務(wù)器共享了/export/pkgs目錄,則客戶系統(tǒng)可以掛接目錄/export/pkgs并安裝軟件包.
# mkdir /export/pkgs
# mount venus:/export/pkgs /export/pkgs
# pkgadd -d /export/pkgs SUNWaudio
刪除Spooled軟件包
在服務(wù)器上可以利用-s選項(xiàng)從spooling目錄中刪除一個(gè)軟件包.
# pkgrm -s /export/pkgs SUNWaudio
與軟件包管理有關(guān)的文件和目錄
/var/sadm 包含系統(tǒng)記錄文件和管理文件的目錄
/opt/pkgname 安裝未隨操作系統(tǒng)一起提供的、名為pkgname的軟件包的推薦目錄.
/opt/pkgname/bin
/opt/bin 未隨操作系統(tǒng)一起提供的、名為pkgname的執(zhí)行文件的推薦目錄.
var/opt/pkgname
/etc/opt/pkgname 未隨操作系統(tǒng)一起提供的、名為pkgname的記錄文件的推薦目錄.
/var/sadm/install/contents 整個(gè)系統(tǒng)的軟件包映象.
九、數(shù)據(jù)備份和傳輸工具
(一) 數(shù)據(jù)設(shè)備名
1.磁帶
類型 設(shè)備名 容量 機(jī)器類型
8mm D8112 5G 8205
8mm D8160 7G 8505-8705
8mm D8170 20G 8900
4mm DDS1(60m) 1.3G
4mm DDS2(120m) 7G
4mm DDS3(125m) 12G
設(shè)備名: /dev/rmt/0,/dev/rmt/0n(不倒帶)
2.軟盤
設(shè)備名:/dev/fd0
3.文件
(二) 數(shù)據(jù)備份命令
Solaris 2.x計(jì)算環(huán)境提供了幾個(gè)命令用于備份和恢復(fù)文件和文件系統(tǒng).
多卷備份 連接 系統(tǒng)跨接
ufsdump
ufsrestore Yes No No
tar No Yes Yes
cpio Yes Yes Yes
1.ufsdump命令
對系統(tǒng)管理員而言,ufsdump命令很有用,可對整個(gè)文件系統(tǒng)做完全或增量轉(zhuǎn)儲(chǔ).
完全轉(zhuǎn)儲(chǔ)是對整個(gè)文件系統(tǒng)做備份.在較長的間隔做一次,如一星期或一月.
增量轉(zhuǎn)儲(chǔ)是對新創(chuàng)建或修改的文件進(jìn)行備份.增量轉(zhuǎn)儲(chǔ)更頻繁一些,可能一天一次.
ufsdump命令提供了不同等級的轉(zhuǎn)儲(chǔ),從0至9.轉(zhuǎn)儲(chǔ)等級用來確定對哪些文件備份.0級指定完全轉(zhuǎn)儲(chǔ),1至9指定不同等級的增量轉(zhuǎn)儲(chǔ).例如,增量轉(zhuǎn)儲(chǔ)(1等級)將對在上一次低等級(0級)轉(zhuǎn)儲(chǔ)后修改或創(chuàng)建的文件進(jìn)行備份.對文件系統(tǒng)作備份時(shí),應(yīng)將系統(tǒng)轉(zhuǎn)至運(yùn)行等級S.如系統(tǒng)在運(yùn)行等級3時(shí),文件可能正在使用,于是可能造成無效備份.
例子:
# ufsdump 0uf /dev/rmt/0 /export/home
選項(xiàng)及參數(shù):
0 指定0級(完全)轉(zhuǎn)儲(chǔ).
u 更新文件/etc/dumpdates,以記錄成功的轉(zhuǎn)儲(chǔ).
f 與下面的/dev/rmt/0參數(shù)一起確定轉(zhuǎn)儲(chǔ)的磁帶設(shè)備.
/dev/rmt/0 轉(zhuǎn)儲(chǔ)的磁帶設(shè)備.
/export/home 指定要轉(zhuǎn)儲(chǔ)的文件系統(tǒng).
2.ufsrestore命令
ufsrestore命令從備份磁帶上拷貝文件至當(dāng)前目錄下.
ufsrestore命令可用于重載轉(zhuǎn)儲(chǔ)好的整個(gè)文件系統(tǒng)或備份帶上的單個(gè)或多個(gè)文件.
ufsrestore命令的選項(xiàng)用來指定磁帶設(shè)備名和被恢復(fù)文件的路徑名.
恢復(fù)過程
用ufsrestore命令按以下步驟恢復(fù)一個(gè)文件:
# cd /newdir
# ufsrestore tuf /dev/rmt/0
3.tar命令
tar命令是用戶級的備份命令,用于備份和恢復(fù)文件或目錄.
命令格式: tar options tape_device_name [filename]
option c-建立新文檔 v-顯示路徑
t-顯示文件列表 f-指定設(shè)備
x-抽取文件 i-交互式
例子:
(1)備份過程:
$ tar cvf /dev/rmt/0 *
(2)恢復(fù)過程:
$ tar xvf /dev/rmt/0
(3)目錄復(fù)制
$ tar cvf - mydir|(cd newdir;tar xvf -)
(4) 異地拷貝(必須為可信任用戶)
$ tar cvf - mydir|rsh remote tar xvf -
4.cpio命令
cpio(copy in/out)命令是能產(chǎn)生多卷備份的用戶級命令.
命令格式:
cpio -ov >tape_device_name
cpio -i [vt] tape_device_name
一旦它識別出介質(zhì)的尾部,它就提示你插入另一磁帶.
cpio命令利用ls或find命令的輸出進(jìn)行文件列表,將這些文件輸出到一個(gè)文件,
如磁帶設(shè)備.它在文件之間插入標(biāo)題以便于恢復(fù),所以比tar命令慢.
cpio命令可用通配符作為參數(shù),然而,cpio反著用通配符,即除滿足匹配條件的
文件以外,它將備份所有文件.
備份過程
$ find . -depth -print | cpio -ov > /dev/rmt/0
find命令給cpio命令提供文件和目錄名的列表.
-o選項(xiàng)表示從標(biāo)準(zhǔn)輸出讀.
/dev/rmt/0參數(shù)確定磁帶設(shè)備.
例子:
用find和cpio命令將主目錄備份到磁帶上:
恢復(fù)過程
用cpio命令按以下步驟從磁帶上檢索文件和目錄.
1.將磁帶插入磁帶設(shè)備.
2.改變目錄至/tmp目錄.
3.用以下cpio目錄確定要恢復(fù)的文件的路徑名.
$ cpio -iv /dev/rmt/0
-i選項(xiàng)抽取文件,v(verbose)選項(xiàng)與t選項(xiàng)合用則按ls -l格式列出文件,
使用此復(fù)合選項(xiàng)只顯示文件信息,不抽取文件.
4.用以下cpio命令恢復(fù)文件至/tmp目錄.
$ cpio -iv dev/rmt/0 test.file
選項(xiàng)i抽取文件,v表示恢復(fù)時(shí)顯示文件名.
5.從目錄/tmp拷貝文件至所需目錄.
6.取出磁帶.
下面的例子說明如何用cpio命令恢復(fù)一個(gè)文件.
5.compress,uncompress,zcat 命令
compress命令利用一特殊格式來壓縮文件,以減少文件大小.壓縮比從20%至80%.
例如,用-v選項(xiàng)對名為bin.file的文件進(jìn)行壓縮:
此文件被壓縮后,加上后綴.Z.
zcat file.taz|tar xvf –
uncompress 解壓縮
tar 打包. Tar –cvf 目標(biāo)文件 源文件。 Tar –xfv ***.tar 解包
gzip / gunzip
6.mt 命令
mt -f /dev/rmt/0 status 報(bào)告設(shè)備狀態(tài)
mt -f /dev/rmt/0 rew 倒帶
mt -f /dev/rmt/0n fsf 1 前進(jìn)一段
mt -f /dev/rmt/0n bsf 3 后退兩段
7.dd 命令
dd if=/dev/rmt/0 of=/tmp/file bs=1024
8.異地使用磁帶機(jī)(必須為可信任用戶)
(1)備份數(shù)據(jù)至異地磁帶機(jī)
tar cvf - dirname|rsh remote dd of=/dev/rmt/0
(2)從異地磁帶機(jī)讀取數(shù)據(jù)
rsh remote dd if=/dev/rmt/0 tar xvf -
十、改變運(yùn)行等級
本章介紹基本的系統(tǒng)操作模式、啟動(dòng)和關(guān)閉系統(tǒng)的過程等.
關(guān)閉系統(tǒng)有幾種情況,系統(tǒng)可以徹底關(guān)閉,或轉(zhuǎn)入一個(gè)中等等級以便完成諸如備份之類的維護(hù)工作.
(一)系統(tǒng)引導(dǎo)
啟動(dòng)和關(guān)閉系統(tǒng)是系統(tǒng)管理的一個(gè)重要部分.
啟動(dòng)(或引導(dǎo))系統(tǒng)是指操作系統(tǒng)的一部分被裝入內(nèi)存并開始初始化自身.由于系統(tǒng)必須“由自身的自舉來將自己提起”所以稱為引導(dǎo)或自舉.
系統(tǒng)引導(dǎo)后,可用的內(nèi)存和硬盤設(shè)備都被確定下來.系統(tǒng)掛接/(root)文件系統(tǒng)并開始重要的系統(tǒng)處理(如init,pscked,sendmail等).然后使得用戶可用注冊.
由/sbin/init進(jìn)程啟動(dòng)一系列shell腳本,完成以下任務(wù):
設(shè)定系統(tǒng)的宿主名.
執(zhí)行文件系統(tǒng)檢查程序(fsck).
啟動(dòng)守護(hù)程序和網(wǎng)絡(luò)服務(wù).
一旦腳本執(zhí)行完畢,系統(tǒng)處在等級3.
有時(shí)系統(tǒng)管理員必須修改啟動(dòng)shell腳本以便開始新增加的服務(wù).
(二)系統(tǒng)操作等級
1. 運(yùn)行等級說明
在Solaris 2.x環(huán)境中有8個(gè)系統(tǒng)運(yùn)行等級,這里涉及到4個(gè)等級:
(1) 運(yùn)行等級3
運(yùn)行等級3也就是完全多用戶模式.這是系統(tǒng)的缺省運(yùn)行等級,也是系統(tǒng)的缺省狀態(tài)所有系統(tǒng)處理均被執(zhí)行,文件資源可用掛接,用戶可用注冊.
(2) 運(yùn)行等級s,S
運(yùn)行等級S是單用戶模式,是一個(gè)特殊的運(yùn)行等級.操作系統(tǒng)正在執(zhí)行,但是所有用戶均被注銷,大多數(shù)系統(tǒng)處理如打印、郵件等都沒有執(zhí)行.只有一個(gè)用戶,即超級用戶向系統(tǒng)注冊.運(yùn)行等級S對執(zhí)行備份是很方便的,因?yàn)闆]有用戶注冊,所以所有數(shù)據(jù)都是穩(wěn)定的. 系統(tǒng)由shutdown命令帶入運(yùn)行等級s,S.
(3) 運(yùn)行等級0
該等級關(guān)閉(shutdown)系統(tǒng)至PROM等級,所以此等級對于關(guān)電源是安全的.
(4) 運(yùn)行等級5
該等級關(guān)閉(shutdown)系統(tǒng)至關(guān)電源狀態(tài).
(4) 運(yùn)行等級6
運(yùn)行等級6用于關(guān)閉(halt)系統(tǒng)至等級0并重新引導(dǎo)至等級3.
2. 顯示運(yùn)行等級
調(diào)用who -r命令可以顯示系統(tǒng)的運(yùn)行等級.
$ who -r
run-level 3 Feb 6 15:46 3 2 S
在此例中,系統(tǒng)在缺省等級3.其他域表示:
Feb 6 15:46 最后一次運(yùn)行等級改變的日期和時(shí)間.
3 當(dāng)前運(yùn)行等級.
2 最后一次再引導(dǎo)后在此運(yùn)行等級的次數(shù).
S 前一運(yùn)行等級.
3.關(guān)閉系統(tǒng)的原因
(1)SunTM工作站設(shè)計(jì)為大部分時(shí)間是工作時(shí)間.但也有必須關(guān)閉系統(tǒng)的時(shí)候,運(yùn)行 等級S用于系統(tǒng)維護(hù),如完成備份等.這一系統(tǒng)等級的變化仍被認(rèn)為是關(guān)閉.
(2) 改變一個(gè)系統(tǒng)的配置,如增加或刪除某個(gè)磁帶機(jī)或CD-ROM機(jī).
(3) 改變系統(tǒng)硬件配置,如增加或去除一個(gè)CPU板子.
(4) 從極端情況的恢復(fù),假如一個(gè)掛起的工作站對所有的恢復(fù)工作都不反應(yīng),可能就必須關(guān)掉電源重新開始.
4.關(guān)閉系統(tǒng)(shutting down)
關(guān)閉系統(tǒng)的方式根據(jù)關(guān)閉的原因而不同.執(zhí)行關(guān)閉有的是為了轉(zhuǎn)至執(zhí)行等級S,有的是要停止操作系統(tǒng)并關(guān)閉設(shè)備的電源.
halt
init 0
(3)緊急關(guān)閉
.緊急情況,按Stop_A,如Stop_A不起作用,則將設(shè)備電源關(guān)閉再打開.這是不得已的極端情況.這兩種方法不是干凈的關(guān)閉,是突然關(guān)閉的,僅在緊急情況使用.
(三)例子:
1.增加一個(gè)磁帶機(jī)并完成重新配置引導(dǎo):
(1)成為超級用戶,并確認(rèn)在/(root)目錄下.
(2)鍵入touch命令:
# touch /reconfigure
(3)鍵入如下關(guān)閉命令:
#halt
(4) 關(guān)閉設(shè)備電源.
(5) 增加磁帶機(jī).
(6) 給設(shè)備通電.
2.從掛起的工作站上恢復(fù)
如一掛起的工作站對所有鍵入的命令無反應(yīng)時(shí),用以下過程恢復(fù):
(1) 按下Stop_A放棄系統(tǒng)并移至PROM監(jiān)控等級,提示符為: > 或ok
(2)鍵入sync命令來同步磁盤.
(3)一旦看見“Syncing file system ... done”信息,再按下Stop_A.
(4)發(fā)出boot命令來返回至多用戶模式.
3.從輕微問題中恢復(fù)
如/etc/default/login登記項(xiàng)阻止超級用戶注冊,也沒有用戶帳號可以注冊,可采用以下步驟恢復(fù):
(1) 按Stop_A放棄系統(tǒng)并移至PROM監(jiān)控等級.
(2) 輸入sync命令來同步磁盤.
(3) 一旦看見“Syncing file system ... done”信息,再按下Stop_A.
(4) 發(fā)出boot -s命令至執(zhí)行等級S.
ok boot -s
(5) 修改/etc/default/login文件以使得root可以注冊.
# cd /etc/default
# vi login
(6) 按Control_D,進(jìn)入運(yùn)行等級3.
在此過程中,你可能會(huì)被提示要輸入root口令.
4.從重要問題中恢復(fù)
如果你忘記了root口令,或是在/etc/passwd文件中root項(xiàng)無效,則可用以下步驟恢復(fù):
(1) 從Solaris 2.x安裝CD-ROM盤上作單獨(dú)引導(dǎo).
# boot cdrom -sw
(2) 如需要,可設(shè)置終端類型.
#TERM=sun; export TERM
(3) 掛接適當(dāng)?shù)奈募到y(tǒng)并編輯passwd和shadow文件.
# cd /
# mount /dev/dsk/c0t3d0s0/mnt
# cd /mnt/etc
# vi shadow
(4) 卸下文件系統(tǒng).
# umount /mnt
(5) 重新引導(dǎo)系統(tǒng).
# reboot
十一、網(wǎng)絡(luò)應(yīng)用配置
(一) 網(wǎng)絡(luò)基本配置文件
1./etc/hosts 主機(jī)名解析
2./etc/defaultrouter網(wǎng)關(guān)
3./etc/nsswitch.conf 指定查詢服務(wù)順序
4./etc/resolv.conf 指定域和域名服務(wù)器
5./etc/hostname.hme0 網(wǎng)絡(luò)接口名
6./etc/netmasks 網(wǎng)絡(luò)掩碼
7./etc/inetd .conf 服務(wù)項(xiàng)目定義
(二) 遠(yuǎn)程訪問命令
1. rlogin 在遠(yuǎn)程機(jī)上注冊
命令格式 : rlogin hostname -l username
2. rsh 在遠(yuǎn)程機(jī)上執(zhí)行一個(gè)程序
命令格式 : rsh hostname -l username order
3. rcp 在遠(yuǎn)程系統(tǒng)之間拷貝文件
命令格式 : rsh host:filename filename
(三)訪問鑒別相關(guān)文件
當(dāng)rlogin,rsh,rcp命令時(shí),有幾個(gè)文件對網(wǎng)絡(luò)安全是很重要的.
/etc/passwd
如遠(yuǎn)程系統(tǒng)的口令文件有本擁護(hù)的登記項(xiàng),否則必須使用 [-l] 選項(xiàng)以指明不同用戶
$home/.rhosts
rlogin,rsh,rcp首先檢查用戶主目錄下的.rhosts文件,如主機(jī)及用戶被列在文件中,則此用戶為可信任主機(jī),不需口令即可登錄,如遠(yuǎn)程鑒別失敗,則正常詢問口令
/etc/.hosts.equiv
作用與.rhosts 文件類似,文件中列出用戶對于本機(jī)為可信任用戶,
不需口令即可登錄(除超級用戶)
(四)網(wǎng)絡(luò)監(jiān)控
1.rusers 標(biāo)識網(wǎng)絡(luò)上注冊用戶
命令格式:rusers -la
2.rup 標(biāo)識網(wǎng)絡(luò)上主機(jī)
命令格式:rup
3.ping 檢測主機(jī)連接狀況
命令格式:ping -s [hostname|IP address]
4.spray ping命令格式為低層協(xié)議,spray使用高層協(xié)議
命令格式:spray hostname
5.netstat 顯示與網(wǎng)絡(luò)有關(guān)的各種數(shù)據(jù)結(jié)構(gòu)
命令格式:netstat -[r| i]n
-r :顯示路由信息
-i :顯示接口信息
6.ifconfig 顯示網(wǎng)絡(luò)接口
命令格式:ifconfig -a
其中 lo0: 本機(jī)自回饋接口
le0: 10M接口
hme0:100M接口
hme1:第二100M接口
7.netstat 顯示與網(wǎng)絡(luò)有關(guān)的各種數(shù)據(jù)結(jié)構(gòu)
命令格式:netstat -[r| i]n
-r :顯示路由信息
-i :顯示接口信息
8.route 路由設(shè)置
命令格式:route [add|delete] 設(shè)置網(wǎng)絡(luò)路由
defaultrouter -缺省靜態(tài)路由
9.arp 反響解析
命令格式:arp -[a|s]
十二、圖形窗口配置
(本節(jié)不作學(xué)習(xí)要求)
1.雙屏配置
(1) /usr/openwin/bin/openwin -dev /dev/fb0 -dev /dev/fb1
(2) /usr/dt/config/Xservers 文件
2.ffbconfig 分辨率調(diào)整
命令格式:ffbconfig -dev /dev/fb0 -res mode
此命令只針對creator,creator3D卡
mode : ? 或 1280x1024x76
查看 creator/creator3d: ffbconfig -prconf
3.xwininfo 分辨率確認(rèn)
4.xhost
命令格式: xhost + 〈- 使能客戶顯示
5.openwin 初始化
/usr/openwin/lib/openwin-init $home/.openwin-init
/usr/openwin/lib/openwin-menu-programs
6.CDE桌面初始化
/usr/dt/appconifg/C/sys.dtwmrc
7.終端窗口控制字符
erase ^H intr ^C kill ^U start ^Q stop ^S susp ^Z
定義方式:stty erase ^H