solaris的入門培訓資料(轉)

ba發表於2007-08-15
solaris的入門培訓資料(轉)[@more@]第一部分 Sun基礎知識
1.Sun發展簡史
(1)硬體體系的發展
81~89年,Sun1/2/3 CISC Motorala 680x0系列。
89~94年,Sun4/60 sparc1 65 sparc1+70 sparc2Server, Sun/290/670/690 Risc sparc。
93~96年,Sparc10/20Server: 1000/2000 SuperSparc。
96~97年,Ultra1(140/170/170E/200E)Ultra2 Server、E150、E3000,UltraSparc,Sbus匯流排,UltraSCSI介面UPA介面
98~99年,Ultra5 Ultra10 UltraSparc,PCI匯流排,IDE介面Ultra30 Ultra60Server,E250,E450 UltraSparc,PCI匯流排,UltraSCSI介面UPA介面。
(2)軟體體系的發展
Solaris 1.x SunOS 4.1.3(BSD)+OpenWindow 3.0
Solaris 2.x System V 32bit
2.5.1 SunOS 5.5.1 +OpenWindows CDE1.0.2
2.6 SunOS5.6+CDE1.2.1+Motif1.2.6
Solaris 2.7(7) 64 bit SunOS7+CDE1.3+Motif2.1.0 logging UFS
2.solaris作業系統
SUN OS即solaris作業系統是solaris操作環境(包括SUN OS、CDE、ONC+TM、open windows)最重要的組成部分,它和其他的作業系統一樣,它是用來管理系統軟硬體資源,並執行系統操作。
SUN OS包括三個主要組成部分:Kernel、Shell、File system 。
(1)kernel
Kernel (核心)是作業系統中直接與計算機硬體打交道的部分,它提供可以由程式使用的各種服務,將程式與基礎硬體隔離,控制系統程式和系統硬體之間的資料傳遞。核心的主要功能是硬體資源管理、程式排程處理、記憶體資源管理、檔案系統的維護。程式透過大約100個系統呼叫與核心打交道,系統呼叫將請求傳送給核心,核心直接與機器硬體進行互動作用。
(2)shell
shell是系統核心與使用者之間的介面,它的主要功能就是命令翻譯。當shell接收到使用者鍵入的命令後,對這些命令進行翻譯,交給kernel去執行。Solaris支援的shell主要有以下三種:
bourne shell,它是solaris操作環境預設的shell,它通常用來管理系統,它的提示符是$。
C shell是基於C語言的shell,具有以下特點:命令列歷史記錄、別名、作業控制等。普通的使用者更喜歡C shell,它的提示符是%。
Korn shell,它是bourne shell的超集,bourne shell與Korn shell向上完全相容。它的提示符是$。
(3)檔案系統
檔案系統是指作業系統內管理檔案資訊的程式系統。在solaris系統中,檔案系統指的是儲存介質上有組織的檔案集合。檔案系統控制檔案和目錄中的資訊以何種方式儲存在硬碟或其它的儲存介質中,並且控制每個使用者以何種方式訪問何種資訊。
檔案系統中最重要的概念是檔案。
檔案是一個具有符號名字的一組相關聯的元素的有序集合。檔案通常放在磁碟、磁帶等儲存介質上。檔案的範圍很廣,例如使用者的源程式、資料表格、書信文稿、目標程式等,除了這些使用者的資訊外,象編譯程式、編輯程式等實用程式也以檔案的形式存在,就連作業系統本身也是作為檔案而存在的。在soalris作業系統中檔案分為以下幾種型別:
普通檔案,在許可權列表中用“-”表示。
目錄檔案,在許可權列表中用“d”表示。
字元連線,在許可權列表中用“l”表示。
裝置檔案,在許可權列表中字元裝置檔案用“c”表示,塊裝置檔案用“b”表示。
.普通檔案
作為一個使用者,你使用的資訊會作為一個普通檔案來存放。普通檔案可以含有如手稿或程式正文的常規ASCII字元,可以按使用者的意願進行建立、修改和刪除。
.目錄
目錄是個含有其它檔案幷包含這些檔案的位置和屬性資訊的檔案。例如,一個目錄包含它含有的所有檔案和目錄的清單,以及它們的地址、特性、檔案型別(普通檔案、連結、目錄還是特殊檔案)和其它屬性。
.裝置檔案
特殊檔案表示一個物理裝置,它可以是個終端,一個通訊裝置,或是象磁碟驅動器這樣的儲存裝置。從使用者的角度來看,Solaris系統處理特殊檔案的方法與處理普通檔案的方法相同,也就是說,使用者可以完全按讀寫普通檔案的方法讀寫裝置。
.連結
連結不是一種檔案,而是檔案的第二個名字。如果兩個使用者希望共享一個檔案中的資訊,連結提供了這個問題的一種解決方法。使用連結,兩個使用者可以共享單一檔案,這兩個使用者看起來都有該檔案的複製,但是隻是具有兩個名字的一個檔案存在,任一使用者所進行的修改都在共用版本中進行。

二 檔案管理
1.目錄管理
solaris所有的子目錄都建立在根目錄/(root)下,和其它作業系統一樣,構成了目錄樹。在物理上,它們可能位於一個單個的檔案,或分散在幾個檔案系統。
(1)重要子目錄
下面介紹一下幾個重要的子目錄。
/bin 它是/usr/bin目錄的一個符號連線。它是系統命令的二進位制檔案的儲存路徑。
/dev 儲存邏輯裝置檔名的重要目錄。該目錄的內容是/devices目錄中的裝置檔案的符號連線。
/devices 儲存物理裝置檔名。
/etc 儲存系統配置檔案和系統管理資料庫。
/export 共享檔案系統的預設目錄,如使用者家目錄、應用軟體、和其它的共享檔案系統。
/home 使用者家目錄的預設目錄和掛接點。
/usr 儲存所有系統使用者使用的程式、指令碼等。
/var 儲存系統中正在變化的檔案,如臨時檔案、日誌檔案、狀態檔案。
(1)檢視當前目錄。
命令:pwd
# pwd
(2)改變當前目錄
命令:cd
範例 : 跳到 /usr/bin/ :
cd /usr/bin
跳到自己的家目錄:
cd ~
跳到上一層目錄:
cd ..
(3)建立新目錄
命令:mkdir
例:建立一個名為new的新目錄。
# mkdir new
(4)刪除目錄
命令:rmdir或rm
例:刪除一個名為new的空目錄。
# rm new
或# rmdir new
刪除目錄及目錄內所有子目錄和檔案,則在rm命令後加上“-r”引數:
# rm –r new
檔案管理
(1)顯示目錄中的檔案列表
命令:ls
說明 : 顯示指定目錄下的檔案及子目錄。
-a 顯示所有檔案及目錄 (檔名或目錄名開頭為"."的為隱藏檔案,不會列出)。
-l 除檔名稱外,將檔案型別、許可權、所有者、檔案大小等資訊詳細列出。
-r 將檔案以相反次序顯示(原定依英文字母次序)
-t 將檔案依建立時間之先後次序列出
-A 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄)
-F 在列出的檔名稱後加一符號;例如可執行檔案則加 "*", 目錄則加 "/"
-R 若目錄下有子目錄,則子目錄中的檔案好按順序列出。
例:
列出當前目錄下所有以s開頭的檔案,越新的檔案排的越靠後:
ls -ltr s*
將/bin 目錄下所有子目錄及檔案的詳細資訊列出:
ls -lR /bin
列出目前目錄下所有檔案及子目錄;目錄於名稱後加 "/", 可執行檔案於名稱後加 "*":
ls AF
(2)瀏覽檔案內容
命令:more
說明:分屏顯示文字檔案內容。類似cat ,不過會以一頁一頁的顯示方便使用者逐頁閱讀,按空格鍵(space)向下翻頁,按b鍵就會往回滾一頁,還有搜尋字串的功能(與 vi 相似)。
引數:
-num 一次顯示的行數
-d 提示使用者,在畫面下方顯示 [Press space to continue, q to quit.] ,如果使用者按錯鍵,則會顯示 [Press h for instructions.]
-l 取消遇見特殊字元 ^L(送紙字元)時會暫停的功能
-f 計算行數時,以實際上的行數,而非自動換行過後的行數(有些單行字數太長的會被擴充套件為兩行或兩行以上)
-p 不以捲動的方式顯示每一頁,而是先清除螢幕後再顯示內容
-c 跟 -p 相似,不同的是先顯示內容再清除其他舊文字
-s 當遇到有連續兩行以上的空白行,就代換為一行的空白行
-u 不顯示下引號 (根據環境變數 TERM 指定的 terminal 而有所不同)
+/ 在每個檔案顯示前搜尋該字串(pattern),然後從該字串之後開始顯示
+num 從第 num 行開始顯示
例:
顯示檔名為test的檔案中的內容:
# more test
(3)複製檔案
說明:將一個檔案複製為另一個檔案,或將檔案複製至指定目錄。
-a 儘可能將檔案狀態、許可權等文字都照原樣進行復制。
-r 若原始檔中含有目錄名,則將目錄下的檔案也複製到目標目錄。
-f 若目的地已經有相同檔名的檔案存在,則將原來的檔案覆蓋。
範例:
將檔案 test 複製(已存在),並命名為 test1:
# cp test test1
將/new目錄及其下所有文複製到/old目錄中:
# cp /new /old
(4)刪除檔案
命令:rm
例:
刪除當前目錄下名為test的檔案:
# rm test
(5)移動檔案
命令:mv
引數:-i 若目標目錄中已有同名檔案,則先詢問是否覆蓋舊檔案。
例:將當前目錄中的test檔案移至/new目錄下,並重新命名為test1:
# mv test /new/test1
將檔案test的檔名改為test1:
# mv test test1
(6)建立連線
命令:ln
說明 : Unix檔案系統中,所謂的連線(link),也就是檔案的別名。連線分為兩種:硬連線(hard link)與軟連線 (symbolic link),硬連線的意思是一個檔案可以有多個名稱,而軟連線的方式則是產生一個特殊的檔案,該檔案的內容是指向另一個檔案的位置。硬連線是存在同一個檔案系統中,而軟連線卻可以跨越不同的檔案系統。
引數:
-f : 建立連線時先將同名檔案刪除
-d : 允許系統管理員硬連線自己的目錄
-i : 在刪除同名檔案時先進行詢問
-n : 在進行軟連線時,將連線視為一般的檔案
-s : 進行軟連線(symbolic link)
-v : 在連線之前顯示其檔名
-b : 將在連線時會被覆寫或刪除的檔案進行備份
-S SUFFIX : 將備份的檔案都加上 SUFFIX 的字尾
-V METHOD : 指定備份的方式
-help : 顯示輔助說明
-version : 顯示版本
例:
將檔案 yy 產生一個軟連線(symbolic link)zz
# ln -s yy zz
將檔案yy 產生一個硬連線(hard link)zz:
# ln yy xx
(7)查詢檔案
命令:find
說明:將檔案系統內符合指定條件的檔案列出來。你可以指要檔案的名稱、類別、時間、大小、許可權等不同資訊的組合,只有完全相符的才會被列出來。
find 根據下列規則判斷path 和 expression,在命令列上第一個 - ( ) , ! 之前的部份為 path,之後的是expression。如果 path 是空字串,則使用當前路徑,如果 expression 是空字串,則使用 -print 為預設 expression。
-mount, -xdev : 只檢查和指定目錄在同一個檔案系統下的檔案,避免列出其它檔案系統中的檔案
-amin n : 在過去 n 分鐘內被讀取過
-anewer file : 比檔案 file 更晚被讀取過的檔案
-atime n : 在過去 n 天被讀取過的檔案
-cmin n : 在過去 n 分鐘內被修改過
-cnewer file :比檔案 file 更新的檔案
-ctime n : 在過去 n 天過修改過的檔案
-empty : 空的檔案
-gid n or -group name : gid 是 n 或是 group 名稱是 name
-ipath p, -path p : 路徑名稱符合 p 的檔案,ipath 會忽略大小寫
-name name, -iname name : 檔名稱符合 name 的檔案。iname 會忽略大小寫
d: 目錄
c: 字型裝置檔案
b: 區塊裝置檔案
p: 具名貯列
f: 一般檔案
l: 符號連線
s: socket
-pid n : process id 是 n 的檔案
例:
將當前目錄及其子目錄下所有延伸檔名是c 的檔案列出來。
# find . -name "*.c"
將當前目錄及其下子目錄中所有一般檔案列出
# find . -ftype f
將當前目錄及其子目錄下所有最近 20 分鐘內更新過的檔案列出
# find . -ctime -20

使用者管理
  
(1)超級使用者
超級使用者是一個具有特權的使用者,它可不受任何限制地使用全部檔案和命令。超級使用者的使用者名稱為root,它的uid為0 (其實只要是uid為0的使用者就是超級使用者)。許多系統管理任務都必須在超級使用者下完成,如安裝和解除安裝檔案系統、改變檔案和目錄的存取權和所有權、備份和恢復檔案系統、建立裝置檔案以及關閉系統。
我們可以用如下辦法進入超級使用者:
 在其它使用者狀態下,用不帶任何引數的su命令,並按需要鍵入root的口令。
 在login提示下,鍵入root及其口令。
在入進超級使用者後,shell將給出一個特殊的提示符“#”,提醒你對系統有著至高無上的存取權。透過查詢記錄檔案/var/adm/sulog,可以跟蹤誰正在使用超級使用者帳號。最好在必要時才進入超級使用者,應該避免在超級使用者下做一般的事情。如果某項任務需要你是超級使用者,它會提示你應該進入超級使用者。當你完成必要的工作後,應立即回到一般使用者狀態。 由於超級使用者非保護的存取許可權嚴重威脅系統的安全,為了增加安全性,要經常更換口令。
(2)建立新使用者
系統管理員的一個重要職能就是為需要訪問系統的每個使用者建立賬號。每個使用者都具有一個唯一的使用者名稱,一個標誌號UID,一個家目錄和一個登入SHELL。並且指定使用者屬於哪個組。
系統中的每一個使用者名稱都被賦予了一個UID(User Identification Number 使用者標識號),這些號在0-60000之間,系統使用 UID將一個使用者名稱和作業系統對該使用者的標識等同起來,建立使用者時,必須保證UID唯一。GID (Group Identification Number,組標識號)遵循與UID一樣的格式,範圍0-60000, 每個使用者至少屬於一組,並且可以屬於多組。

使用者賬號和組的登記資訊儲存在以下三個檔案中:
/etc/passwd
/etc/shadow
/etc/group
使用者賬號儲存在/etc/passwd檔案中,密碼儲存在/etc/shadow檔案中。
在/etc/passwd檔案中,每一條目定義了一個賬號,它共有七部分內容。

 Login ID:登入ID號,ID號必須遵循三個條件:不超過八個字元;小寫字元;唯一。
 Placeholder(佔位符):這是表示password的部分。
 UID :定義該系統的一個特定使用者,用數字序號表示
 GID :定義上述使用者屬於哪一個主要組(primary group)
 Comment(備註):通常來說是使用者的全名
 Login Direcotry:稱為使用者的家目錄,用來存放使用者的個人檔案的目錄。
 Default shell: 預設shell。當使用者登入到系統時工作的shell型別。
賬號密碼儲存在/etc/shadow檔案中。/etc/shadow檔案中包含加密了的密碼和密碼失效資訊(所謂的密碼失效資訊,是指密碼有效期,即使用者需要多長時間修改一次密碼,否則密碼將不再可用),該檔案只能由系統管理員root讀取。
在solaris系統中,密碼必須滿足以下條件:
 長度為6-8個字元;
 至少包括兩個字母,其中至少有一個為小寫字母;
 必須和Login ID不同;
 和上次的密碼至少有三個字元不同;
 可以包括空格。
以上條件只是針對普通使用者的,對超級使用者root的密碼無效。
每一個使用者賬號都要屬於一個組,此組作為使用者的主要組。/etc/passwd檔案中位於該使用者賬號定義條目的GID號確定了使用者主要組。一個使用者還可以加入15個組,如次要組。在/etc/group檔案中,可以將使用者加入到定義組的條目中去,建立使用者與次要組的隸屬關係。

在solaris作業系統中,建立一個新使用者或組有以下三種方式:
命令列方式;
Admintool工具;
圖形化工具SMC(solaris management console)。
(1)命令列模式
透過命令列模式建立新使用者和組,主要有以下命令:
Useradd  新增一個使用者
Usermod  修改使用者資訊
Userdel  刪除一個使用者
Groupadd  新增一個組
Groupmod 修改組資訊
Groupdel  刪除一個組

solaris 9除了以上的命令外,又增加了兩個能完成相同任務的新命令,它們是smuser和smgroup。
(2)admintool
Admintool是solaris系統中簡單實用的管理工具,它可對使用者、組、印表機、軟體等進行安裝、新建、修改和刪除等操作。下面就用它來講一下如可建立一個新的使用者賬號。
首先在開啟admintool,即在console視窗的命令列輸入admintool命令:
# admintool &
注:在命令後加上&,是讓admintool進行在後臺執行,也適用於其它的程式。
開啟admintool,
在此視窗中列出了詳細的使用者資訊。下面我們用它來新建一個使用者。
開啟edit選單,選擇add,彈出使用者新增視窗,在user identity區域,設定使用者的使用者名稱,userid和groupid等基本資訊,在 usrname文字框中寫入將要建立的使用者名稱,userid和groupid軟體會自動分配,也可以自己指定,在login shell選單中可選擇使用者登入時預設的shell。account security區域主要對使用者密碼進行設定,包括密碼建立方式、有效期、修改時間限制等內容。home  directory 區域內設定了使用者的家目錄,可自行建立,也可使用預設路徑。
將使用者基本資訊寫好後,然後設定使用者密碼。
開啟password選單,選中normal paddword選項,出現密碼設定對話方塊。
設定好密碼後,點OK按紐,返回user add視窗。
將所有資訊填寫好以後點OK,返回admintool主視窗。
這時已經看到剛才新新增的使用者zhangjl了。
(3)SMC

系統啟動與關閉

關閉系統有幾種情況,系統可以徹底關閉,或轉入一箇中等等級以便完成諸如備份之類的維護工作。
(1)系統啟動
啟動和關閉系統是系統管理的一個重要部分。啟動(或引導)系統是指作業系統的一部分被裝入記憶體並開始初始化自身。由於系統必須“由自身的自舉來將自己提起”所以稱為引導或自舉。
開啟電源後,伺服器啟動至OK狀態。在OK狀態下,輸入boot命令後,系統開始引導。系統引導後,掛接/(root)檔案系統並開始重要的系統處理(如 init,sendmail等)。然後使用者登入。由/sbin/init程式啟動一系列shell指令碼,完成以下任務:
1. 設定系統的宿主名。
2. 執行檔案系統檢查程式(fsck)。
3. 啟動守護程式和網路服務。
一旦指令碼執行完畢,系統處在等級3。有時系統管理員必須修改啟動shell指令碼以便開始新增加的服務。
(2)系統執行等級
執行級別是系統的狀態,規定了使用者可用的服務和資源,它用字母或數字來表示。在Solaris環境中有8個系統執行等級:
執行等級0
該等級關閉(shutdown)系統至PROM等級,所以此等級對於關電源是安全的。
執行等級1
該等級系統執行在單使用者模式,使用者能夠訪問所有的可用的檔案系統。
執行等級2
此級別系統支援多使用者操作。多個使用者可以訪問系統。除了與網路檔案系統伺服器和一些其它的網路資源伺服器相關的守護程式外,所有的系統守護程式都在系統中執行。
執行等級3
執行等級3也就是完全多使用者模式.這是系統的預設執行等級,也是系統的預設狀態所有系統處理均被執行,檔案資源可用掛接,使用者可用註冊。
執行等級4
此級別未使用。
執行等級s,S
執行等級S是單使用者模式,是一個特殊的執行等級.作業系統正在執行,但是所有使用者均被登出,大多數系統處理如列印、郵件等都沒有執行。只有一個使用者,即超級使用者向系統註冊。執行等級S對執行備份是很方便的,因為沒有使用者註冊,所以所有資料都是穩定的. 系統由shutdown命令帶入執行等級s,S.
執行等級5
關閉系統,與shutdown功能一樣。
執行等級6
用於關閉(halt)系統至等級0並重新引導至等級3,即重啟系統。

呼叫who -r命令可以當前系統的執行等級。
$ who -r
$ run-level 3 Feb 6 15:46 3 2 S
在此例中,系統在預設等級3。其他域內容表示:Feb 6 15:46 最後一次執行等級改變的日期和時間。3是當前執行等級。2是最後一次再引導後在此執行等級的次數。S 前一執行等級。
(2)關閉系統
Sun工作站設計為大部分時間是工作時間,但也有必須關閉系統的時候。如完成備份等系統維護工作,需要將系統改變到S等級。這一系統等級的變化仍被認為是關閉。
當出現以下情況時,系統需要關閉:
(1) 改變一個系統的配置,如增加或刪除某個磁帶機或CD-ROM機。
(2) 改變系統硬體配置,如增加或去除一個CPU板子。
(3) 從極端情況的恢復,假如一個掛起的工作站對所有的恢復工作都不反應,可能就必須關掉電源重新開始。
關閉系統的方式根據關閉的原因而各不相同。執行關閉有的是為了轉至執行等級S,有的是要停止作業系統並關閉裝置的電源。關閉繫系統有以下幾種方法:
(1) shutdown –gtime –ilevel –y
g後面所根的參數列示系統關閉的延時的時間,i後面的引數是批將系統更改到哪個執行級別,y是遇到系統提示時,選yes。如下:
shutdown –g0 –i5 –y
將系統立即關閉至電源關閉。
(2) init 5
關閉系統和電源。
(3) init 0
關閉系統至OK狀態。
(4) halt
立即關閉系統,進入OK狀態。既不提通知正在登入的使用者,也沒有給使用者提供延長時間。
(5) STOP+A
(6) 直接關閉電源。
緊急情況下,按Stop+A , 如Stop+A不起作用,則將裝置電源關閉。這是極端情況,這兩種方法不是乾淨的關閉,是突然關閉的,僅在緊急情況使用。

硬碟管理

(一)硬碟和檔案資源
硬碟和CD-ROM裝置使用塊裝置介面,硬碟裝置檔案儲存在/dev目錄下。字元裝置檔案存於rdsk子目錄下,塊裝置檔案存在dsk子目錄下。
在Solaris 系統中用裝置名來代表磁碟。磁碟裝置名是類似cntndn格式的一系列字母和數字,比如我們看到的c0t0d0。裝置名中的字母(c,t,d)都是一樣的,但n代表的數字表示特定的磁碟或者系統。例如c0t0d0表示0號控制器,0號磁碟,0號LUN,這通常指代系統中的第一個硬碟,往往也是系統的啟動磁碟(boot disk)。
sun使用下列命名方式定義邏輯裝置名:
/dev/[r]dsk/cntndnsn
例子:
/dev/dsk/c0t3d0s0
c:邏輯控制器號(邏輯控制器)
t:物理匯流排目標號
d:磁碟或邏輯單元號(LUN)
s:分割槽號
cn: n指磁碟控制器。當SUN系統蒐集安裝在系統中的磁碟控制器資訊時,它給每個磁碟控制器一個數值,數值取決於系統監測控制器的先後順序。第一個被檢測到的控制器分配的數值是0,第二個控制器是1,依次類推。對IDE系統來說,第一個IDE通道為0,第二個(如果存在的話)通道為1。
tn:n指磁碟的目標號。這個數字有時候被稱為SCSI識別符號,磁碟控制器上的每一個磁碟都有一個唯一的目標號。控制器透過這個目標號可以對每個磁碟獨立定址。對IDE磁碟而言,主盤的目標號是0,從盤的目標號是1。
dn: n指磁碟的邏輯單元號(LUN)。在有些磁碟陣列中,LUN被用來區分系統中的各個磁碟。一個陣列可以用一個目標號來表示一組磁碟,然後用LUN來表示這個磁碟組中的單個磁碟。這種方式被廣泛應用於SCSI磁碟陣列和光碟轉換裝置中。對單個磁碟或IDE磁碟,這個數字總是設定為0。
sn:n指磁碟上的分割槽號。它和磁碟的分割槽對應。就如我們前面所說的“Solaris下,一個磁碟包含8個分割槽,標記為0-7”,因為這裡n的數值只能是0——7。
以上的內容,就可以詳細說明出c0t0d0s0的含義了。
dmesg命令
dmesg命令用例項名和物理名來標識連到系統上的裝置。dmesg命令也顯示系統診斷資訊、作業系統版本號、實體記憶體的大小以及其他資訊。
例子:
下面的輸出資訊是從前面的dmesg例子的輸出資訊中提取出來的,標識著連到系統上的硬碟裝置。
對每個硬碟裝置,輸出三行資訊,分別表示:
1. 硬碟的例項名。
2. 硬碟的物理裝置名。
3. 硬碟的市場名和硬碟的外形資訊特徵。
硬碟的邏輯裝置名是對硬碟的物理裝置名的符號連線。硬碟的例項名是對物理裝置命名的核心的縮寫,Solaris命令不用此來表示硬碟。
向一塊硬碟寫入資料之前,首先需要將其分割槽和格式化,這個過程一般可以分為3個步驟:
1. 物理格式化,也就是通常所說的低階格式化(Low-Level Formatting,LLF);
2. 分割槽;
3. 邏輯格式化,也就是通常所說的高階格式化(High-Level Formatting,HLF)
低階格式化的時候,硬碟被分成若干個磁軌,這些磁軌又被分成若干個扇區,每個扇區填充了隨機資料。幾乎所有的硬碟在出廠前都已經被低階格式化過,所以,使用者只要對硬碟進行下面兩個步驟(分割槽和邏輯格式化)就可以了。
(二)硬碟分割槽
分割槽會將硬碟分成幾個部分,成為分割槽或者是分片。“分片”是“分割槽”的另一種說法。每個分割槽/分片由若干個柱面組成。絕大多數下,Solaris中的一個硬碟分割槽對應一個檔案系統。一個分割槽不能包含多個檔案系統;同樣,一個檔案系統也不能跨越多個分割槽。Solaris中,對硬碟進行分割槽,就是使用 format命令。
solaris利用在裝置目錄下的字元裝置檔案和塊裝置檔案對硬碟進行訪問。然而,硬碟不是由使用者直接訪問的,是透過分割槽對它進行訪問的,分割槽由裝置目錄下的裝置檔案來表示。
分割槽是管理資料的一個方便的方法。重要的系統檔案和程式可以存在一個分割槽,而使用者產生的檔案放在另一個分割槽。它保持不同型別的資料在不同的分割槽。這使系統管理員能靈活地利用資料或使用不同的備份機制。因為使用者的資料每天都發生變化,系統管理員應每天作備份。而重要的系統資料不是經常變化,也就不需經常做備份。
由Sun提供的硬碟分割槽可多達8個,用1-7標識。
分割槽2表示整個硬碟。
分割槽5表示/opt檔案系統,此檔案系統用來存貯那些未隨作業系統一起提供的軟體。
分割槽6 是/usr分割槽,此檔案系統包含那些只能在某些型別的系統上執行的檔案(如SPARC executables)和一些能在所有系統型別上執行的檔案(如聯機手冊放在/usr/share目錄下)。
分割槽7的檔案系統稱為/export/home,這是掛接使用者主目錄的掛接點。
硬碟分割槽透過在/dev目錄下的邏輯裝置檔案加以訪問.如/dev/dsk/c0t0d0s0表示在第一個硬碟上的第一分割槽。
format實用程式
format程式是一個硬碟維護工具,由系統管理員使用,其類似於DOS中的fdisk命令,主要完成以下任務:
• 重新格式化硬碟。
• 改變分割槽大小。
• 修理和分析硬碟扇區。
硬碟分割槽資訊可以透過format命令檢視,例如,顯示出來的資訊如下:
# format
Searching for disks...done

AVAILABLE DISK SELECTIONS:
0. c0t0d0
/pci@1f,4000/scsi@3/sd@0,0

系統資訊中0. c0t0d0 /pci@1f,4000/scsi@3/sd@0,0的含義很簡單,0. c0t0d0就代表只裝了一個硬碟,代表的是這個硬碟的大小和柱面資訊,/pci@1f,4000/scsi@3/sd@0,0所代表的,就是這個硬碟的實際實體地址。這些資訊看起來很複雜,其實一般都只需要看看format命令抓出來的硬碟數量,是不是我們裝在系統上的數量。

Specify disk (enter its number): 0
selecting c0t0d0
[disk formatted]
Warning: Current Disk has mounted partitions.

FORMAT MENU:
disk - select a disk
type - select (define) a disk type
partition - select (define) a partition table
current - describe the current disk
format - format and analyze the disk
repair - repair a defective sector
label - write label to the disk
analyze - surface analysis
defect - defect list management
backup - search for backup labels
verify - read and display labels
save - save new disk/partition definitions
inquiry - show vendor, product and revision
volname - set 8-character volume name
! - execute , then return
quit
下面是format主要的幾個子命令的作用:
part 標識分割槽號0-7。
tag 顯示分割槽標籤,分割槽標籤用於標識該分割槽所用的目的(root,usr,home,交換區).
flag 顯示分割槽標誌,用以標識訪問許可權.
cylinders 顯示起始和終止的柱面號.
size 按一定方式,以Mbytes或Gbytes為單位顯示分割槽大小.
blocks 按柱面數、磁頭數和扇區數來標識分割槽的大小.

format> p

PARTITION MENU:
0 - change `0' partition
1 - change `1' partition
2 - change `2' partition
3 - change `3' partition
4 - change `4' partition
5 - change `5' partition
6 - change `6' partition
7 - change `7' partition
select - select a predefined table
modify - modify a predefined partition table
name - name the current table
print - display the current table
label - write partition map and label to the disk
! - execute , then return
quit
partition>

(三)建立檔案系統
建立檔案系統由newfs命令來完成。
命令格式:newfs raw-device ,它等同於DOS的format命令。
例子:newfs /dev/rdsk/c0t1d0s0
3.fsck 修復檔案系統
命令格式:fsck raw-device 等同於DOS的chkdsk命令
例子:fsck /dev/rdsk/c0t1d0s0
(四)掛接檔案資源
1.mount 檔案系統掛接
本地或遠端檔案資源被接到根檔案層次,看起來就象是一個單一的檔案系統.這個
連線操作稱為“掛接”,利用mount命令完成 檔案資源掛接到根檔案層次的目錄
稱為掛接點.在呼叫掛接命令前,掛接點必須存在.
命令格式:
mount file_name mount_point
沒有選項的mount命令顯示當前已掛接的檔案資源.
例子:
# mount /dev/dsk/c0t3d0s0 /export/home
監視檔案系統
2.df 顯示檔案系統所佔用的硬碟空間
df -k命令按Kbytes顯示可用硬碟空間的總量和已用的硬碟空間.
各域的含義為:
Filesystem 被掛接的檔案系統.
Kbytes 按Kbyte計算的檔案系統大小.
Used 已用的數量(Kbytes).
Avail 可用的數量(Kbytes).
Capacity 已用的百分比.
Mounted on 掛接點.
注意:大約10%的硬碟空間為檔案系統保留,在df -k命令的輸出中沒有反映這一點.
3.umount 摘下檔案資源
從本地系統上摘下檔案資源,超級使用者可使用umount命令.
命令格式:
# umount mount_point
如果在被掛接的檔案資源目錄裡有活動,則檔案資源不可摘下.在摘下前cd
至/ 目錄是一個很好的習慣,不要不加區別地將系統正常運轉所需要的檔案
系統摘下.
(四) 自動掛接檔案資源
/etc/vfstab檔案
系統引導時讀/etc/vfstab檔案以自動掛接檔案資源.該檔案包含本地和遠端檔案
資源的登記項.
各域的含義:
Device-to-mount 標識NFS伺服器和檔案系統,或被掛接的本地檔案系統.
Device-to-fsck 標識用於執行fsck的本地原始裝置.
Mount point 掛接點路徑.
FS-type 檔案系統型別,通常是ufs用於本地檔案系統,nfs用於遠端檔案系統.
Fsck-pass 此域中的數字是fsck經過檔案系統檢查的順序,相重的數字表示檢查並行進行.
Mount-at-boot 決定檔案系統是否在系統引導時被自動掛接.
Mount-options 定義掛接選項,如讀/寫訪問.
域中的-表示無選項.
/dev/[r]dsk/cwtxdysz用於本地ufs檔案系統.w,s,y,z分別表示控制器、目標、裝置、片.一旦系統建立,手工在單機系統的/etc/vfstab檔案中加入遠端檔案資源登記項.

vi操作入門
vi、celvis(cvi) 是在工作站上被廣為使用的中英文編輯軟體。對初學者而言,常因其特殊的使用方法,而不得其門而入;對已經在使用 vi 的使用者來說,也常見因對 vi 的不熟悉或不夠了解,而無法發揮出 vi 強大的編輯能力。

(1)進入vi
直接執行 vi即可:
%vi test
此刻螢幕上會出現 vi 的編輯視窗,同時 vi 會將檔案複製一份至記憶體的緩衝區 (buffer)。 vi會保留磁碟中檔案不變,而先對緩衝區的檔案作編輯,編輯完成後,使用者可決定是否要取代原來舊有的檔案。

(2)離開vi
若在輸入模式下,則先按鍵盤的ESC鍵進入命令模式,而後選用下列命令離開vi。
:q! 離開vi,並放棄剛在緩衝區內編輯的內容。
:wq 將緩衝區內的文字寫入磁碟中,並離開vi。
:ZZ 同wq。
:x 同wq。
:w 將緩衝區內的文字寫入磁碟中,但並不離開vi。
:q 離開vi,若檔案被修改過,則會被要求確認是否放棄修改的內容。
此命令可與:w 配合使用。

(3)vi的操作模式
vi 提供兩種操作模式:輸入模式(insert mode)和命令模式(command mode)
當使用者進入 vi 後,即處在命令模式下,此刻鍵入之任何字元皆被視為命令。在此模式下可進行刪除、修改等動作。若要輸入文字,則需進入輸入模式。
①輸入模式
進入輸入模式
a (append) 由游標之後加入文字。
A 由該行之末加入文字。
i (insert) 由游標之前加入文字。
I 由該行之首加入文字。
o (open) 新增一行於該行之下供輸入文字之用。
O 新增一行於該行之上供輸入文字之用。
離開輸入模式
按ESC鍵即可結束輸入模式。
②命令模式
游標之移動
h 向左移一個字元。
j 向上移一個字元。
k 向下移一個字元。
l 向右移一個字元。
0 移至該行之首
$ 移至該行之末。
^ 移至該行的第一個字元處。
H 移至視窗的第一列。
M 移至視窗的中間那列。
L 移至視窗的最後一列。
G 移至該檔案的最後一列。
+ 移至下一列的第一個字元處。
- 移至上一列的第一個字元處。
( 移至該句之首。
) 移至該句之末。
{ 移至該段落之首。
} 移至該段落之末。
nG 移至該檔案的第 n 列。
n+ 移至游標所在位置之後的第 n 列。
n- 移至游標所在位置之前的第 n 列。
會顯示該行之行號、檔名稱、檔案中最末行之行號、游標所在行號佔總行號之百分比。
視窗的移動
視窗往下卷一頁。
視窗往上卷一頁。
視窗往下卷半頁。
視窗往上卷半頁。
視窗往下卷一行。
視窗往上卷一行。
刪除、複製及修改命令介紹
d(delete)、c(change)和y(yank)這一類的命令在 vi 中的命令格式為:
Operator + Scope = command
d 刪除命令。刪除文字,但會將刪除文字複製到記憶體緩衝區。
y 將文字複製到緩衝區。
p 放置(put)命令,與 d 和 y 配合使用。可將最後delete或yank的文字放置於游標所在位置之行列下。
c 修改(change)命令,類似delete與insert的組合。刪除一個字元、句子等文字,並插入新建文字。

e 由游標所在位置至該字串的最後一個字元。
w 由游標所在位置至下一個字串的第一個字元。
b 由游標所在位置至前一個字串的第一個字元。
$ 由游標所在位置至該行的最後一個字元。
0 由游標所在位置至該行的第一個字元。
) 由游標所在位置至下一個句子的第一個字元。
( 由游標所在位置至該句子的第一個字元。
{ 由游標所在位置至該段落的最後一個字元。
} 由游標所在位置至該段落的第一個字元。
dd 刪除整行。
D 以行為單位,刪除游標後之所有字元。
cc 修改整行的內容。
yy yank整行,使游標所在該行復制到記憶體緩衝區。
 移動與複製
利用 delete 及 put 命令可完成文字搬移之目的。
利用 yank 及 put 命令可完成文字複製之目的。
yank 和 delete 可將指定的文字複製到記憶體緩衝區,而由 put 命令可將緩衝區內的文字複製到螢幕上。
例:
(1)刪除一行
.在該行執行 dd
.游標移至目的地
.執行 p
(2)複製一行
.在該行執行 yy
.游標移至目的地
.執行 p
命令重複
在命令模式中,可在命令前面加入一數字 n,則此命令動作會重複執行 n 次。
例:
刪除10行 .10dd
複製10行 .10yy

 取消前一動作(Undo)
即恢復到執行上一命令前的內容。
u 恢復最後一個命令之前的結果。
U 恢復游標該行之所有改變。

網路管理

(1)設定網路地址和子網掩碼
1. /etc/hostname.interface
/etc/hostname.interface 檔案給網路卡進行命名,Interface是網路卡的型號,有le、hme等。le是十兆網路卡,hme為百兆網路卡等等。後面跟一個數字,第一個十兆網路卡為 le0,第二個為le1;第二個百兆網路卡為hme0,第二個為hme1等等。檔案的內容是這塊網路卡的名字,如Sunrise、Sunny。
#more /etc/hostname.le0
Sunrise
# more /etc/hostname.hme0
Sunny
2. /etc/hosts檔案
/etc/hosts檔案將網路卡名與IP地址進行了對映,與/etc/hostname.interface 協同工作,配置本機網路卡地址的IP地址。
# more /etc/hosts
127.0.0.1 localhost loghost
172.16.255.1 Sunrise
172.18.255.1 Sunny
系統名不是主機名,主機名是唯一的,要更改主機名,用命令:hostname。
有了/etc/hostname.interface和/etc/hosts兩個檔案,系統就知道如何配置網路卡了,如第一個百兆網路卡的名字是Sunny,其對應的地址是172.18.255.1。
3. /etc/netmasks檔案
將網路的IP地址與網路地址聯絡一起,劃分子網。如果是處於標準網段,則不需要配置
標準網段:
A類網:0-127(127用於本地地址) 掩碼:255..0.0.0
B類網:128-191 掩碼:255.255.0.0
C類網:192-223 掩碼:255.255.255.0
D類網:224-254(用於多址廣播)

要配一個B類地址:172.16.255.1掩碼為:255.255.255.0,則在/etc/netmasks檔案中寫:
172.16.255.0 255.255.255.0
4. ifconfig命令
檢測網路埠狀態
#ifconfig -a
配置網路埠地址
#ifconfig le0 172.16.255.1 netmask 255.255.255.0
配置網路埠狀態
#ifconfig le0 up/down
配置網路埠是否可用
#ifconfig le0 plumb/unplumb
5. ping命令
檢測網路狀態
測試網路速度
(2)路由和閘道器
1. /etc/defaulrouter檔案
/etc/defaulrouter檔案配置系統的預設路由,防止不必要的路由程式,適用於只有一個路由器通向其它網段的網路。系統安裝時並沒有該檔案,是使用者自己建立的。檔案內容是預設路由的地址。
#cat /etc/defaultrouter
172.16.255.254
優點:
佔用資源少,只有一條路由條目。
(3)DNS客戶端的設定
1. /etc/resolv.conf檔案
記錄DNS伺服器的地址和域名
關鍵字:
domainname
nameserver
# more /etc/resolv.conf
nameserver 172.16.255.3
domainname sunrise.com.cn

2. /etc/nsswitch.conf檔案

記錄主機名的搜尋順序等資訊
# more /etc/nsswitch.conf
#
# /etc/nsswitch.dns:
#
# An example file that could be copied over to /etc/nsswitch.conf; it uses
# DNS for hosts lookups, otherwise it does not use any other naming service.
#
# "hosts:" and "services:" in this file are used only if the
# /etc/netconfig file has a "-" for nametoaddr_libs of "inet" transports.

passwd: files
group: files
# You must also set up the /etc/resolv.conf file for DNS name
# server lookup. See resolv.conf(4).
hosts: files dns
ipnodes: files



將這個檔案的hosts記錄配置成hosts: files dns

夠用了,不過再補點Sun搞的售前資料做開場白:

Sun Solaris介紹:

Solaris 是Sun開發的企業級作業系統,執行在Sun SPARC平臺,也有Solaris x86系統,可執行在Intel和AMD x86平臺上。

Sun有完整的Solaris產品線,SPARC和x86平臺的Solaris、業界最主要的高安全性作業系統Trusted Solaris,全部包括在Sun的UNIX許可協議的產品包中。這就使Solaris作業系統成為客戶的安全選擇。

Solaris 10為Sun 最新發布的作業系統,超過600個新特點

Sun作業系統版本發展:

1971第一個 Unix 版本釋出
1982 Sun選擇UNIX作業系統用於其第一款工作站
1983 SunOS 1.0釋出
1984 Sun發明NFS技術
1985 SunOS 2.0支援NFS技術
1988 SunOS 4.0支援其第一個SPARC處理器和使用虛擬記憶體技術
1992 Solaris 2釋出,基於UNIX SVR4,並支援其第一款多處理器工作站
1992 Solaris 2.1 增加支援執行緒技術
1993 Solaris 2.2 增加支援對稱多處理器技術
1995 Solaris 2.5 支援UltraSPARC工作站/伺服器
1997 Solaris 2.6 支援1TB大檔案
1998 Solaris 7 採用64位技術,支援Java
2000 Solaris 8 增加支援安全的企業級Web應用
2002 Solaris 9 服務提供平臺,U5版支援CMT技術,並增加Sun Java 企業系統
2005 Solaris 10 虛擬化OE,增加N1 Grid Container,DTrace,ZFS等, OpenSolaris

Solaris提供更多的功能:

Dynamic System Domain 動態系統域,在當時是Unix中唯一提供分割槽功能,使系統管理員可在一個伺服器的不同分割槽中執行Solaris作業系統,在一個伺服器的相互隔離的環境中執行多個應用,並利用DR功能,在域中繼續執行Solaris軟體的同時,重新配置域

Dynamic Reconfiguration(DR)動態重新配置功能,可在作業系統正在執行的情況下動態重新配置系統板,並強其在系統中安全地拆除和安裝,從而將對域中執行的使用者程式所造成的影響降至最低

Solaris Resource Manager資源管理,允許應用線上的改變和最佳化系統資源的使用,如處理器的記憶體等

Solaris Volume Manager卷管理,提供使用者資料高可用性和可靠性

Sun Java System Application Server和Directory Server,即是唯一的作業系統,在其核心中完整整合了免費的商業級J2EE應用伺服器和20萬使用者數軟體許可的目錄伺服器

Sun Java Enterprise System,基於業界標準,幫助企業開發部署Web應用

其它的特點:

IP Multipathing支援網路負載均衡,自動切換,自動故障恢復,並利用DR功能支援在系統執行時加入新的網路卡

Live Upgrade允許系統管理員在系統執行時建立或升級作業系統環境

Hot Patching允許系統管理員安裝作業系統核心補丁程式而無需立刻重啟系統,極大的系統中斷的時間

HTTP acceleration加入Solaris核心中,幫助改善SPARC平臺上Web伺服器的效能

Flash Archive快閃歸檔,使使用者歸檔系統從數小時縮短到幾十分鐘,提高系統管理效率

Solaris 10主要的新特點:

DTrace(Dynamic Tracing)動態跟蹤
是一種實時除錯和效能調優的工具,傳統的Unix或Windows有一些系統工具可以提供一些系統資訊,但缺乏跟蹤每個使用者和每個程式的能力,DTrace 允許程式設計人員透過觀察Unix使用者/核心間的控制流來看其應用程式與核心間的互動活動,DTrace有簡單易學的D語言,可構建自定義程式以動態跟蹤系統,並對有關作業系統的任意問題提供即時簡明的回答成為可能。

N1 Grid Container網格容器
是一種系統分割槽的功能,可在Solaris中劃分多達8000個軟體分割槽,每個分割槽是一個Solaris例項,有自己的CPU、記憶體、硬碟分割槽、主機名和IP地址,可獨立執行應用程式,有助使用者更好的利用硬體資源,提高系統利用率,同時也提供了多系統所具有的安全性和可靠性。

ZFS檔案系統
是Solaris海量檔案系統,支援128位定址空間,自動資料校驗,支援檔案系統快照,支援 Raid技術的映象等功能,無需卷管理軟體,提高檔案系統的效能。

Predictive Self-healing預測性自我修復
是一種可預測性自我修復技術,使Sun系統和服務在出現軟硬體故障時得到最大可用性,此功能在Sun高階伺服器上得到了支援,以後會支援x86平臺。
直接執行Linux二進位制程式

允許Linux的二進位制程式可在Solaris x86上直接執行, 而無需更改, 無需重編譯,提供異種機環境下的互操作能力。

使用Sun Java Desktop System
Solaris使用Sun Java桌面系統。

Solaris 上的開發工具:

Sun Studio 10是最佳化的在Solaris和Linux平臺上的C++、Frotran開發環境,可在Sun UltraSPARC IV、Interl Xeon、AMD上開發32/64位的應用,

64位編譯器,支援64位應用開發,包括AMD Opteron 64,支援大檔案(>4GB)
改善編譯時間,加快除錯,提高生產率,

使用Sun Studio 10編譯比用Sun Studio 8,使用者應用獲得快60%的效能
支援Solaris 8, 9, 10,支援Sun JDS2,SuSE Linux ES 8 x86,Red Hat Enterprise Linux 3

Sun Java Studio Creator視覺化開發環境,
是一個開箱即用的具有綜合性的開發/除錯/部署功能兼有的解決方案,它包括 Sun Java System Application Server 8 平臺版軟體,該軟體是Sun Java 企業系統軟體中的一個元件,可用作一個目標開發和部署平臺。

視覺化Web服務,可以很容易地訪問服務導向架構。
具有視覺化建立J2EE 1.3技術的相容能力。
Web應用,可執行在支援JavaServer Pages 1.2軟體的任何Web伺服器或應用伺服器上。
直觀頁導向設計,可建立頁面之間的可視連線,並透過簡單準則定義導向案例。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-958654/,如需轉載,請註明出處,否則將追究法律責任。

相關文章