- 論壇徽章:
- 0
|
※描述為什么要區(qū)分動(dòng)態(tài)文件系統(tǒng)和靜態(tài)文件系統(tǒng)
※描述/sbin,/usr,/stand,/etc,/dev,/var(操作系統(tǒng)相關(guān)目錄)的主要內(nèi)容
※描述/opt,/etc/opt,和/var/opt(應(yīng)用相關(guān))的主要內(nèi)容
※使用find,和whereis命令在文件系統(tǒng)中查找文件
介紹文件系統(tǒng)范例
許多系統(tǒng)管理任務(wù)都要求系統(tǒng)管理員能夠找到系統(tǒng)和應(yīng)用程序的配置文件和日志文件,并且能對(duì)這些文件進(jìn)行操作。所以了解文件系統(tǒng)組織結(jié)構(gòu),可以確保你能成功地找到這些文件來(lái)進(jìn)行系統(tǒng)管理的工作
下面介紹標(biāo)準(zhǔn)的AT&T SVR4文件系統(tǒng)布局。
文件系統(tǒng)中的文件可以通過(guò)不同的方法分類(lèi)。例如可以分為靜態(tài)文件和動(dòng)態(tài)文件,可執(zhí)行文件和配置文件。這些分類(lèi)原則組成了文件系統(tǒng)的邏輯結(jié)構(gòu),并且能夠簡(jiǎn)化系統(tǒng)管理的任務(wù)。
文件系統(tǒng)可以分為靜態(tài)和動(dòng)態(tài)兩個(gè)部分
文件系統(tǒng)中的文件和目錄被分為靜態(tài)和動(dòng)態(tài)兩類(lèi)。靜態(tài)文件和目錄中的內(nèi)容很少更改,除非是安裝補(bǔ)丁或者安裝操作系統(tǒng)或安裝應(yīng)用程序。可執(zhí)行文件,庫(kù),和系統(tǒng)啟動(dòng)工具,都被認(rèn)為是靜態(tài)的。
動(dòng)態(tài)文件和目錄是經(jīng)常更改的。配置文件。臨時(shí)文件,和用戶(hù)文件被認(rèn)為是動(dòng)態(tài)的。
區(qū)分動(dòng)態(tài)和靜態(tài)數(shù)據(jù)提供了以下的優(yōu)點(diǎn):
※系統(tǒng)備份更容易
※磁盤(pán)空間管理更簡(jiǎn)單
可執(zhí)行文件和配置文件
配置數(shù)據(jù)和可執(zhí)行代碼是分別保存的。分開(kāi)保存配置文件和可執(zhí)行文件能夠提供了如下優(yōu)點(diǎn):
※當(dāng)操作系統(tǒng)升級(jí)的時(shí)候,對(duì)配置數(shù)據(jù)的更改不會(huì)丟失。
※可以很容易地通過(guò)網(wǎng)絡(luò)共享可執(zhí)行文件,同時(shí)每個(gè)主機(jī)自己的配置文件可以存儲(chǔ)在本地主機(jī)上。
文件系統(tǒng)布局
操作系統(tǒng)的可共享部分的數(shù)據(jù)存在于/usr,和/sbin下面。只有操作系統(tǒng)能夠安裝文件到這些目錄下去。應(yīng)用程序位于/opt下面。
/usr,/sbin目錄和/opt下面的應(yīng)用程序子目錄能夠在網(wǎng)絡(luò)中的主機(jī)之間共享。所以,它們不包含每個(gè)主機(jī)特定的信息。每個(gè)主機(jī)特定的信息位于文件系統(tǒng)的動(dòng)態(tài)數(shù)據(jù)目錄下。
這些目錄的通常的定義:
目錄 ???定義
/usr ???可共享的操作系統(tǒng)命令,庫(kù),和文檔。
/sbin ???引導(dǎo)系統(tǒng)和安裝其它文件系統(tǒng)的最少需要的命令
/opt ???應(yīng)用程序
/etc ???系統(tǒng)配置文件,不再包含可執(zhí)行文件
/dev ???設(shè)備文件
/var ???動(dòng)態(tài)信息例如日志,脫機(jī)打印緩沖文件
/mnt ???本地裝載的文件系統(tǒng)
/tmp ???操作系統(tǒng)臨時(shí)文件
/stand?? 內(nèi)核和引導(dǎo)加載器。
/home ??用戶(hù)目錄
/usr目錄的更詳細(xì)的內(nèi)容
/usr目錄包含操作系統(tǒng)的大部分,包括命令,庫(kù),和文檔。/usr文件系統(tǒng)包含操作系統(tǒng)的文件,例如可執(zhí)行文件和ASCII文檔。
/usr目錄下標(biāo)準(zhǔn)的子目錄在如下定義;
/usr/bin??? ? 操作系統(tǒng)的用戶(hù)命令
/usr/conf ????內(nèi)核配置文件
/usr/contrib ?? 發(fā)布的軟件
/usr/lbin ??? ?其它命令文件
/usr/local ????用戶(hù)自己安裝的軟件
/usr/newconfig?? 默認(rèn)的操作系統(tǒng)配置數(shù)據(jù)文件
/usr/sbin ???? 系統(tǒng)管理命令
/usr/share ????獨(dú)立結(jié)構(gòu)的共享文件
/usr/share/man ??操作系統(tǒng)幫助手冊(cè) /usr/share/doc?技術(shù)相關(guān)的白皮書(shū)
/var目錄的詳細(xì)內(nèi)容
/var目錄中保存各種日志,臨時(shí)文件,中間文件,和打印緩沖文件。/var目錄的大小變化很大。在通常情況下,任何應(yīng)用程序或者命令在運(yùn)行時(shí)候創(chuàng)建的文件,對(duì)操作系統(tǒng)來(lái)說(shuō)不是關(guān)鍵性的數(shù)據(jù),通常都會(huì)被放在/var目錄的下面。例如,/var/adm中會(huì)包含于系統(tǒng)管理相關(guān)的日志和其它運(yùn)行時(shí)創(chuàng)建的文件。/var還包含有可變大小的文件例如crontabs,和打印系統(tǒng)和郵件系統(tǒng)的緩沖區(qū)。
通常/var下面的都是一些臨時(shí)文件,系統(tǒng)管理員如果想要釋放磁盤(pán)空間,可以通過(guò)搜尋/var目錄,來(lái)查找那些文件可以被清除掉。
/var下面包含的文件有:???
/var/adm ????普通的管理文件和日志文件 /var/adm/crash ?內(nèi)核的崩潰dump文件
/var/mail ??? 收到的郵件
/var/opt/ ????應(yīng)用運(yùn)行時(shí)產(chǎn)生的文件(例如日志,臨時(shí)文件)。每一個(gè)應(yīng)用程序有自己的目錄
/var/spool ???操作系統(tǒng)子系統(tǒng),例如lp,cron等的緩沖文件
/var/tmp ????/usr目錄下的命令產(chǎn)生的臨時(shí)文件
/var/adm目錄下的詳細(xì)內(nèi)容
這個(gè)目錄被用來(lái)保存普通的管理文件,日志和數(shù)據(jù)庫(kù),例如,syslog產(chǎn)生的文件,cron使用的文件,內(nèi)核dump文件。
/var/adm/crash ???內(nèi)核崩潰dump文件會(huì)被保存在這個(gè)目錄下
/var/adm/cron ???cron使用的日志文件,
/var/adm/sw ????軟件發(fā)布使用的日志文件
/var/adm/syslog
系統(tǒng)日志,應(yīng)用程序和內(nèi)核都可以在這個(gè)文件中寫(xiě)日志。syslog守護(hù)進(jìn)程負(fù)責(zé)寫(xiě)這些日志信息。syslog守護(hù)進(jìn)程的行為能夠通過(guò)/etc/syslog.conf來(lái)定制。默認(rèn)的日志文件名為var/adm/syslog/syslog.log。在啟動(dòng)的時(shí)候,這個(gè)文件被拷貝為OLDsyslog.log,新的syslog.log文件被創(chuàng)建。這個(gè)文件是一個(gè)ASCII碼文件。
/var/adm/sulog ?這個(gè)文件包含所有的su命令的使用記錄。sulog是一個(gè)ASCII文件。
/var/adm/wtmp
??這個(gè)文件包含成功登錄的記錄。這個(gè)文件不是ASCII文件。last命令被用來(lái)顯示這個(gè)文件的信息。wtmp文件會(huì)持續(xù)增長(zhǎng),系統(tǒng)管理員應(yīng)經(jīng)常對(duì)這個(gè)文件進(jìn)行修剪。
/var/adm/btmp
??這個(gè)文件包含非成功登錄的記錄。這個(gè)文件不是ASCII文件。lastb命令可以用來(lái)顯示這個(gè)文件中的信息。btmp文件會(huì)持續(xù)增長(zhǎng),系統(tǒng)管理員應(yīng)經(jīng)常對(duì)這個(gè)文件進(jìn)行修剪。
/var/adm/utmp
??這個(gè)文件包含登錄到系統(tǒng)的所有用戶(hù)的記錄。這個(gè)文件被write,who等命令使用,這個(gè)文件不是ASCII文件,不能被直接瀏覽。
應(yīng)用程序的目錄
每一個(gè)應(yīng)用程序會(huì)在/opt,/etc/opt,/var/opt下面有自己的子目錄。而應(yīng)用程序的可共享的,或者靜態(tài)部分在它們自己的/opt/application目錄下,這個(gè)目錄的結(jié)構(gòu)同操作系統(tǒng)文件系統(tǒng)的結(jié)構(gòu)類(lèi)似:
/opt/application/bin ???用戶(hù)命令
/opt/application/share/man 幫助手冊(cè)
/opt/application/lib ???庫(kù)
/opt/application/lbin???后臺(tái)命令
/opt/application/newconfig 配置文件的主拷貝
應(yīng)用程序的主機(jī)特定日志文件在/var/opt/application目錄下,而主機(jī)特定的配置文件在/etc/opt/application目錄下。
幫助你定位的命令
find ????在文件系統(tǒng)層次結(jié)構(gòu)中查找文件
whereis ??定位源程序,二進(jìn)制代碼,和幫助手冊(cè)的位置
which ???在你的PATH中定位一個(gè)可執(zhí)行文件
file ????判斷文件的類(lèi)型
作為系統(tǒng)管理員,你會(huì)需要在整個(gè)文件系統(tǒng)中檢索文件。UNIX提供了幾個(gè)查找文件和執(zhí)行文件的工具。
find命令
find命令是一個(gè)功能強(qiáng)大的工具。它可以從你指定的點(diǎn)開(kāi)始在文件系統(tǒng)中查找符合條件的文件。也可以通過(guò)名字,屬主,和修改時(shí)間等等來(lái)查找文件。find同時(shí)允許你使用找到的文件作為一個(gè)參數(shù)來(lái)執(zhí)行一個(gè)命令。
例子:
查找屬于用戶(hù)grep的所有文件
# find / -user grep
在/tmp目錄下查找7天都沒(méi)有存取的文件
# find /tmp -type f -atime +7
刪除core文件
# find / -name core -exec rm {}\;
whereis命令
whereis
命令在你收到“沒(méi)有發(fā)現(xiàn)”錯(cuò)誤信息的時(shí)候十分有用。它會(huì)搜索一個(gè)預(yù)定義的目錄列表。默認(rèn)的情況下,whereis會(huì)去搜索源程序,二進(jìn)制文件,和幫助手冊(cè)。你可以使用-b選項(xiàng)來(lái)限制它只搜索二進(jìn)制代碼。
例子:
# whereis -b ls
ls: /usr/bin/ls /sbin/ls
which 命令
which命令在在判斷將要使用命令的哪一個(gè)版本時(shí)有用。一些命令有多個(gè)home。你到底是執(zhí)行的哪一個(gè)版本,是由你PATH變量中指定的目錄的順序決定的。
file命令
file命令對(duì)文件作一系列的測(cè)試,然后會(huì)試圖對(duì)文件歸類(lèi)。這個(gè)命令在判斷一個(gè)命令是一個(gè)shell腳本還是一個(gè)二進(jìn)制的可執(zhí)行文件時(shí)有用。
例子:
# file /sbin/shutdown
/sbin/shutdown : s800 shared executeable
# file /sbin/rc
/sbin/rc: ascii text
strings 命令
strings命令在嘗試找出一個(gè)二進(jìn)制文件中的信息的時(shí)候有用,它會(huì)打印出文件中的任何可以打印的字符。
本文來(lái)自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u2/84425/showart_2069346.html |
|