歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> 關於Unix

solaris的入門培訓資料


第一部分 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
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客戶端的設置
記錄DNS服務器的地址和域名
關鍵字:
domainname
nameserver
nameserver 172.16.255.3
記錄主機名的搜索順序等信息
#
# /etc/nsswitch.dns:
#
# 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
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服務器或應用服務器上。
直觀頁導向設計,可創建頁面之間的可視連接,並通過簡單准則定義導向案例。
Copyright © Linux教程網 All Rights Reserved