第二部分:系統結構介紹
Unix並不使用驅動器名如 C: D: 等來標記一硬盤或分區,在整個系統上,不管有多少個硬盤,分區是怎樣的,只有一個根目錄,叫做root 標記為 / ,其下任何一個子目錄,卻可以是一個硬盤或一個分區,而且是可隨時改變的,比如今天你可以設置 /tmp 為硬盤上一個分區,明天你可以設置他為一個你新裝的硬盤,如果你需要對這方面深入了解,你必須去看看這方面的專業書籍。現在我要讓你知道的是在通常情況下,一個Unix系統的各個標准目錄下面的文件是什麼,以免你哪天萬幸進入了人家的系統,但連人家的主頁在那裡都找不到,下面我們說說Unix文件系統的路徑組織結構。
各種Unix類操作系統的路徑組織結構雖基本相同,但總存在一些小的差別。
不過,總體上還是差不多的。
/ 根文件系統,用於存儲系統內核,啟動管理和其他文件系統的裝載
點。
/bin 系統啟動時需要的一些通用可執行程序。
/cdrom 光盤驅動器的裝載點。
/compat 與系統兼容有關的內容,如系統模擬等。
/dev 設備入口點。在Unix系統上,每個設備都作為一個文件來看待,這
裡放著所有系統能夠用到的各個設備
/etc 各種配置文件。非常重要的一個目錄,所有的配置文件(你可以
看成是windows的注冊表)包括用戶密碼文檔等存放在這裡
/mnt 軟盤等其他文件系統的裝載點。
/proc 進程文件系統,存儲指向當前活動進程的虛擬內存的偽文件。
/root root用戶的工作目錄。
/sbin 系統可執行文件。
/stand 獨立執行的程序,sysinstall就在這個目錄下。在安裝配置系統時用到
/usr 第二個文件系統。基本上是和系統核心無關但又屬於操作系統的一部分的一個目錄,大多數的應用程序,還有各用戶的私有資料存放在這個子系統
/usr/bin 與系統啟動無關的標准應用程序。
/usr/sbin 系統啟動時不需要使用的一些系統管理程序。
/usr/games 游戲。
/usr/home 用戶目錄。存放各個用戶自己的文件,如果你的用戶名為 abcd 那麼 /usr/home/abcd 就是屬於你的目錄,一般情況下其下面的任何文件可以任你主宰,你能夠創建、刪除文件和目錄
/usr/include 程序需要的頭文件。
/usr/lib 程序需要的庫文件。
/usr/libexec 一些不由用戶直接運行的執行程序。如ftpd telnetd 等服務程序
/usr/man 幫助文件
/usr/X11R6 X-Windows系統
/usr/X11R6/bin 可執行的X-Windows程序
/usr/X11R6/include X-Windows程序的頭文件。
/usr/X11R6/lib X-Windows程序的庫文件。
/usr/X11R6/man X-Windows程序的幫助文件。
/usr/share 各種共享的只讀文件,大多數是一些系統信息,文檔。
/usr/local 第三個子文件系統,不屬於FreeBSD一部分的其他程序。如果你再安裝其他的程序如apache mysql等這些不是系統自帶的程序的時候,將會放到這裡,其下同樣有bin sbin etc man lib include 這些目錄
/var 存儲經常發生變化的文件,如郵件,日志等。
/var/log 系統日志。
/var/mail 發給用戶的信件。
/var/spool 緩沖數據,如打印數據等。
/var/tmp 臨時文件。
了解這個路徑結構將給用戶使用unix系統提供很大方便。同時我們也看到,UNIX系統的文件組織結構是如此的清晰,什麼東西就放在什麼地方,查找非常容易。
總結:下面我再重點說說幾個重要的目錄,無論在 / 還是 /usr 或者 /usr/local ,甚至 /usr/home/username 下面,都會有 bin sbin etc man 這幾個目錄,通常一個應用程序會把普通的可執行文件放到 bin,而跟系統維護相關的可執行文件放到 sbin,配置文件放到 etc,幫助文件放到 man ,需要用到的庫文件到/usr/lib中找,編譯時要用到頭文件到/usr/include中找
看到這裡,相信你對一個UNIX系統上都有一些什麼東西比較了解了,但是,這些東西雖然存在,可也不是你想看就看,想運行就運行的哦,UNIX有一套規則來規定誰能干什麼,不能干什麼,這個文件誰能看誰不能看,誰能用誰不能用,或是誰只能看不能用,這都是我們以前曾介紹的有關用戶與文件權限的設置。
第三部分:系統啟動過程
一、了解unixware 7.1.1系統引導文件
SCO UNIXWARE 7.1.1的引導文件就類似與我們熟悉的DOS/WINDOWS的系統文件:IO.SYS,MSDOS.SYS與COMMAND.COM。
位於/stand目錄中,各個文件的名稱及作用解釋如下:
1、boot,包含定義的引導參數。
2、unix,當boot程序引導後,將搜索並裝載該程序到內存, 然後就調用boottab,即inittab文件(/etc/inittab),
init進程運行後,我們就稱系統進入守護狀態。
3、unix.old,當新的內核邦定後,該文件將保存老的系統引導表boottab.
4、bootmsgs,該文件包含系統啟動的文字信息。
5、logo.img,該文件為引導時的圖形界面。
6、help.txt,該文件包含的都是當在boot:後打入"?"後的幫助信息。
7、resmgr,該文件為一份resouse manager數據庫的備份。
8、resmgr.sav,該文件為一份老系統的resouse manager數據庫的備份。
9、*.blm,所有blm文件均為引導、裝載模塊。
二、了解unixware 7.1.1系統引導過程
unixware 7.1.1與其他UNIX系統引導過程相似:
整個系統的啟動分為兩個階段,第一階段是系統自舉,第二階段是啟動Unix。
由於Unix駐留介質不同,整個系統啟動階段也不完全相同。以從硬盤上引導系統為例。
系統自舉階段主要分三個步驟:
1.由ROMBIOS引導硬盤的0道0扇區的Master boot塊;
2.由Master boot塊引導硬盤活動分區的第0扇區的boot塊;
3.該boot塊將隨後扇區的內容引導並運行。
啟動Unix階段主要是由boot程序引導Unix核心程序開始,即引導/stand/unix。
當Unix系統被引導運行後,將啟動一個稱為init的進程,該進程將啟動/etc/inittab文件中所列的
進程,並且引導系統進入某一特定的運行級別。