Linux目錄詳解

Linux目錄詳解(RHEL5.4)

由於linux是開放源代碼,各大公司和團體根據linux的核心代碼做各自的操作,編程。這樣就造成在根下的目錄的不同。這樣就造成個人不能使用他人的linux系統的PC。因爲你根本不知道一些基本的配置,文件在哪裏。。。這就造成了混亂。這就是FHS(Filesystem Hierarchy Standard )機構誕生的原因。該機構是linux愛好者自發的組成的一個團體,主要是是對linux做一些基本的要求,不至於是操作者換一臺主機就成了linux的‘文盲’。

事實上,FHS是根據過去的經驗一直再持續的改版的,FHS依據文件系統使用的頻繁與否與是否允許使用者隨意更動, 而將目錄定義成爲四種交互作用的形態,用表格來說有點像底下這樣:

 

可分享的(shareable)

不可分享的(unshareable)

不變的(static)

/usr (軟件放置處)

/etc (配置文件)

/opt (第三方協力軟件)

/boot (開機與核心檔)

可變動的(variable)

/var/mail (使用者郵件信箱)

/var/run (程序相關)

/var/spool/news (新聞組)

/var/lock (程序相關)

四中類型:

1. 可分享的:

可以分享給其他系統掛載使用的目錄,所以包括執行文件與用戶的郵件等數據, 是能夠分享給網絡上其他主機掛載用的目錄;

2. 不可分享的:

自己機器上面運作的裝置文件或者是與程序有關的socket文件等, 由於僅與自身機器有關,所以當然就不適合分享給其他主機了。

3. 不變的:

有些數據是不會經常變動的,跟隨着distribution而不變動。 例如函式庫、文件說明文件、系統管理員所管理的主機服務配置文件等等;

4. 可變動的:

經常改變的數據,例如登錄文件、一般用戶可自行收受的新聞組等。

事實上,FHS針對目錄樹架構僅定義出三層目錄底下應該放置什麼數據而已,分別是底下這三個目錄的定義:

/ (root, 根目錄):與開機系統有關;

/usr (unix software resource):與軟件安裝/執行有關;

/var (variable):與系統運作過程有關。

 

基本文件系統類型:

linux有四種基本文件系統類型
--普通文件:如文本文件、c語言源代碼、shell腳本等,可以用cat、less、more、vi等來察看內容,用mv來改名;
--目錄文件:包括文件名、子目錄名及其指針,可以用ls列出目錄文件;
--鏈接文件:是指向一索引節點的那些目錄條目,用ls來查看時,鏈接文件的標誌用l開頭,而文件後以"->"指向所鏈接的文件;
--特殊文件:如磁盤、終端、打印機等都在文件系統中表示出來,常放在/dev目錄內;
可以用file命令來識別。

路徑:
linux系統中,所有的文件與目錄都是由根目錄/開始,不是以/開頭的就是相對路徑;
.:表示當前目錄,也可以用./表示;
..:表示上一級目錄,也可以用../表示;
~:代表用戶自己的宿主目錄;

 

/:處於Linux文件系統樹形結構的最頂端,我們稱它爲Linux文件系統的root,它是Linux文件系統的入口。所有的目錄、文件、設備都在/之下,它是Linux文件系統最頂層的唯一的目錄;
        一般建議在根目錄下面只有目錄,不要直接存放文件;根目錄是linux系統啓動時系統第一個載入的分區,所以啓動過程中用到的文件應該都放在這個分區中,其中/etc、/bin、/dev、/lib、/sbin這5個子目錄都應該要與根目錄連在一起,不可獨立成爲某個分區;
/bin:存放所有用戶都可以使用的linux基本操作命令;(目錄中多是可執行的二進制文件)
/dev:設備文件目錄,虛擬文件系統,主要存放所有系統中device的相關信息,不論是使用的或未使用的設備,只要有可能使用到,就會在/dev中建立一個相對應的設備文件;設備文件分爲2種類型: 字符設備文件和塊設備文件(目錄中基本上都是設備文件,如硬盤設備文件/dev/sda)
        /dev/console:系統控制檯,也就是直接和系統連接的監視器;
        /dev/hd:IDE設備文件;
        /dev/sd:sata、usb、scsi等設備文件;
        /dev/fd:軟驅設備文件;
        /dev/tty:虛擬控制檯設備文件;
        /dev/pty:提供遠程虛擬控制檯設備文件;
        /dev/null:所謂"黑洞",所有寫入該設備的信息都將消失,如當想要將屏幕上的輸出信息隱藏起來時,只要將輸出信息輸入到/dev/null中即可;
       

/home:默認存放用戶的宿主目錄(除了root用戶)
        /home/~/.bashrc:提供bash環境中所需使用的別名;
        /home/~/.bash_profile:提供bash環境所需的變量;一般先執行.bashrc後,纔會再執行.bash_profile;
        /home/~/.bash_history:用戶歷史命令文件,記錄用戶曾經輸入過的所有命令;(默認爲1000條,可以通過HISTSIZE變量更改)
        /home/~/.bash_logout:當用戶註銷的同時,系統會自動執行.bash_logout文件,如果管理員需要記錄用戶註銷的一些額外記錄、動作或其他信息,就可以利用這個機制去完成;
/lost+found:當系統在運行時,有時會無法避免宕機、斷電或不正常重啓動,在這樣的情況下,當系統重新啓動時,發現某些文件寫入未完成或其他問題產生,一般會使用fsck進行文件修復,而這些被修復或救回的文件,就會被放在這個目錄下,只要是一個文件系統,系統就會自動在該文件系統所在的目錄下建立"lost+found"目錄
/misc:自動掛載服務目錄,對應autofs服務;
/proc:虛擬文件系統,此目錄是kernel加載後,在內存裏面建立的一個虛擬目錄,有專屬的文件系統,主要提供系統一些實時的信息,此目錄下不能建立和刪除文件;(某些文件可以修改)
        /proc主要作用可以整理爲:
        --整理系統內部的信息;
        --存放主機硬件信息;
        --調整系統執行時的參數;
        --檢查及修改網絡和主機的參數;
        --檢查及調整系統的內存和性能;
        /proc下常用的信息文件有:
        /proc/cpuinfo:cpu的硬件信息,如類型、廠家、型號和性能等
        /proc/devices:記錄所有在/dev目錄中相關的設備文件分類方式
        /proc/filesystems:當前運行內核所配置的文件系統
        /proc/interrupts:可以查看每一個IRQ的編號對應到哪一個硬件設備
        /proc/loadavg:系統"平均負載",3個數據指出系統當前的工作負載
        /proc/dma:當前正在使用的DMA通道 
        /proc/ioports:將目前系統上所有可看到的硬件對應到內存位置的分配表的詳細信息呈現出來
        /proc/kcore:系統上可以檢測到的物理內存,主機內存多大,這個文件就有多大
        /proc/kmsg:在系統尚未進入操作系統階段,把加載kernel和initrd的信息先記錄到該文件中,後續會將日誌信息寫入/var/log/message文件中
        /proc/meminfo:記錄系統的內存信息
        /proc/modules:與lsmod命令查看到的模塊信息完全一致
        /proc/mtrr:負責內存配置的機制
        /proc/iomem:主要用於儲存配置後所有內存儲存的明細信息
        /proc/partitions:這個文件可以實時呈現系統目前看到的分區
        /proc/數字目錄:數字目錄很多,它們代表所有目前正在系統中運行的所有程序
        /proc/bus:有關該主機上現有總線的所有信息,如輸入設備、PCI接口、PCMCIA擴展卡及USB接口信息
        /proc/net目錄:存放的都是一些網絡相關的虛擬配置文件,都是ASCII文件,可以查看(與ifconfig、arp、netstat等有關)
        /proc/scsi:保存系統上所有的scsi設備信息(包括sata和usb設備的信息)
        /proc/sys目錄:存放系統核心所使用的一些變量,根據不同性質的文件而存放在不同的子目錄中,可以通過/etc/sysctl.conf文件設置和更改其默認值;變量時實時的變更,有很多設置很象是開關,設置後馬上生效;
        /proc/tty:存放有關目前可用的正在使用的tty設備的信息
        /proc/self:存放到查看/proc的程序的進程目錄的符號連接,當2個進程查看proc時,這將會是不同的連接;主要便於程序得到它自己的進程目錄;
        /proc/stat:系統的不同狀態信息;
        /proc/uptime:系統啓動的時間長度;
        /proc/version:系統核心版本;
/sbin:系統管理相關的二進制文件存放在這個目錄下,一些可執行文件普通用戶只具備較小的權限;(多數管理命令默認只有管理員可以使用)
/srv:默認爲空,主要用於存放一些軟件的配置文件,某些軟件可能會把配置文件默認存放在這個目錄下,多數都是/etc目錄下,此目錄沒有被具體的定義;
/tftpboot:遠程啓動tftpserver的根目錄,這個目錄只有安裝了tftp-server軟件後纔會產生;
/usr:安裝除操作系統本身外的一些應用程序或組件,一般可以認爲linux系統上安裝的應用程序默認都安裝在此目錄中;
        /usr/bin:一般用戶有機會使用到的程序,或者該軟件默認就是要讓所有用戶使用纔會放在該目錄中;
        /usr/sbin:一些系統有可能會用到的系統命令,與/sbin比起來,都是一些較次要的文件;
        /usr/etc:自行安裝或非系統主要的配置文件目錄
        /usr/games:只要是電腦遊戲相關的軟件,就都安裝到這個目錄;
        /usr/include:存放的文件都是一些系統中用戶所會使用到的C語言header文件,保存的都是".h"的文件;
        /usr/kerberos:kerberos是一種安全機制,讓用戶可以直接使用支持kerberos機制系統上的部分資源;
        /usr/lib:存放一些函數庫、執行文件及連接文件,特別的是,存放在這裏面的文件都是不希望直接被用戶或shell腳本所使用的文件,在/usr/lib中有非常多的子目錄,每一個軟件都有其各自所需的函數庫;
        /usr/libexec:這個目錄下的文件及文件夾應該都可以放置在/usr/lib下;
        /usr/local:linux系統中安裝的共享軟件程序最好的方式是安裝在/usr/local下,按照linux標準目錄結構,新建立的軟件都應該放在/usr/local下;
                /usr/local/bin:存放軟件執行文件的目錄;
                /usr/local/sbin:同樣存放軟件執行文件的目錄,但此目錄專門針對系統所使用的文件;
                /usr/local/lib:軟件相關的函數庫;
                /usr/local/share:當文件性質不好歸屬時就會放在此,man手冊就放在這個目錄下;
                /usr/local/src:所安裝軟件的源代碼放置在此;
        /usr/share:此目錄都是一些共享信息,最常被用到的就是/usr/share/man這個目錄,/usr/share裏的信息時跨平臺的;
        /usr/share/doc:放置一些系統幫助文件的地方;
        /usr/share/man:manpage的文件存放目錄,也是使用man查看手冊頁時查詢的路徑;
        /usr/src:主要儲存內核源代碼的文件;
        /usr/X11R6:存放一些X windows系統的相關文件;

/boot:存放開機啓動加載程序的核心文件;(如kernel和grup)
        config-2.6.18-164.el5:系統kernel的配置文件,內核編譯完成後保存的就是這個配置文件;
        lost+found:說明/boot是一個獨立的ext3文件系統;
        vmlinuz-2.6.18-164.el5:系統使用kernel,非常重要;
        grub:多系統啓動管理程序grub的目錄,裏面存放的都是grub在啓動時所需要的畫面、配置及各階段的配置文件;其中grub.conf是grub的配置文件;
        symvers-2.6.18-164.el5.gz
        initrd-2.6.18-164.el5.img:此文件是linux系統啓動時的模塊供應主要來源,initrd的目的就是在kernel加載系統識別cpu和內存等核心信息之後,讓系統進一步知道還有那些硬件是啓動所必須使用的;
        System.map-2.6.18-164.el5:是系統kernel中的變量對應表;(也可以理解爲是索引文件)
/etc:主機、系統或網絡配置文件存放目錄;
        簡單的將/etc目錄分爲以下幾類:
        --基本文件:所有直接放在/etc目錄下的文件歸類爲基本文件;
                aliases:用於設置郵件別名;
                auto.*:代表的是一系列autofs服務所需要的配置文件,這個服務主要是讓管理員可以事先定義出一些網絡、本機或光驅等默認的路徑;
                auto.master:負責規劃目錄的分配與使用,目前默認提供三種自動掛載模式;
                auto.misc:文件中的配置都以實體連接本機的磁盤驅動器爲主;
                auto.net:並不是一個配置文件,而是一個腳本文件,在使用上其實不須做任何調整;;
                auto.smb:與auto.net一樣,都是以個腳本文件;
                bashrc:用戶登錄功能配置,全局配置,對所有用戶生效,主要配置別名;
                profile:與系統環境配置或初始化軟件的相關配置,全局配置,對所有用戶生效,主要配置變量;
                DIR_COLORS:用於配置ls命令的顏色,主要針對tty登錄的用戶;
                DIR_COLORS.xterm:用於配置ls命令的顏色,主要針對xterm登錄的用戶;
                fstab:系統啓動時自動掛載文件系統的配置文件;
                inittab:啓動時系統所需要的第一個配置文件;也即是init進程的配置文件;
                issue:用戶本機登錄時,看到的歡迎信息;
                issue.net:用戶網絡登錄時,看到的歡迎信息;
                ld.so.conf:包含ld.so.conf.d/*.conf配置;主要是ld.so.conf.d/*.conf目錄的作用;
                localtime:系統所使用的時區對應的配置文件;對應的時區文件都存在於/usr/share/zoneinfo/
                motd:登錄成功的用戶顯示的信息對應的配置文件;
                mtab:可以當做是檢查當前文件系統掛載情況的配置文件;與mount命令結果一致;
                prelink.conf:定義哪些執行文件和函數庫是需要預先連接的;
                securetty:主要是login程序在使用的,只要是列在該文件中的接口,就表示是可以使用的接口,相反,若從列表中刪除,則無法使用該接口;
                shells:記錄目前系統所擁有shell種類的路徑,通過cssh命令使用;
                sudoers:sudo命令對應的配置文件,用於配置權限的分配方式;
                sysctl.conf:主要是幫助用戶配置/proc/sys目錄下所有文件的值,與sysctl命令對應;
                syslogd.conf:是syslogd服務的配置文件
                host.conf:主機名解析配置文件,主要說明解析的方式及順序;
                hosts:主機名解析配置文件,主要列出所有需要本地解析的主機名與IP地址的對應關係;
                hosts.allow和hosts.deny:linux網絡安全機制TCP Wrapper對應的配置文件;
                nsswitch.conf:主要記錄系統應如何查詢主機名、密碼、用戶組、網絡等,或是查詢順序的編排;
                resolv.conf:記錄DNS服務器地址,用於DNS域名解析;
                services:定義了網絡服務的默認端口號;
                xinetd.conf:xinetd的主配置文件,目的是爲xinetd.d下的所有子服務建立一個標準的規範使其可以遵循;
                anacrontab:屬於一種任務計劃軟件的配置文件,anacrontab軟件和crond其實有點相輔相成,crond負責任務計劃,而anacrontab則是負責以"間隔多久"爲主要的目標;
                at.deny:該文件屬於拒絕列表,只要被記錄在其中的用戶,就無法使用at所提供的任務計劃服務;
                at.allow:與at.deny剛好相反;
                crontab:crontab的主配置文件,crond默認會執行的文件可以參考此配置文件;
                cron.deny:該文件屬於拒絕列表,只要被記錄在其中的用戶,就無法使用crond所提供的任務計劃服務;
                cron.allow:與cron.deny剛好相反;
                exports:是NFS服務的主配置文件,主要目的就是將本機的目錄共享到網絡上,供其他人使用;
                group與gshadow:用戶組配置文件,group主要保存用戶組信息,gshadow主要保存羣組密碼;
                login.defs:設置系統在建立賬號時所參考的配置;
                passwd:主要保存系統用戶賬號的信息;
                shadow:linux系統通常包經過"hash"處理後的密碼存儲在這個文件中;
                protocols:通信協議對應端口號的一個對照表,包含協議名稱、協議號碼、註釋等;
                wgetrc:wget程序對應的配置文件,其中有quota、mail header、重傳文件的預設次數、firewall和proxy等相關設置;
                init.d:RHEL中所有服務的默認啓動腳本都存放在這裏;這個是鏈接文件,鏈接到/etc/rc.d/init.d;
                csh.cshrc和csh.login: 用戶啓動c shells執行的初始化配置文件;
                printcap:linux系統中打印機設備對應的配置文件;
        --服務器目錄:如samba、http、vsftpd等服務器配置相關目錄;
                cups:linux下的打印機服務器,目錄下存放的是打印機服務的配置文件;
                dnsmasq.d:dnsmasq是一種DNS的"輕薄機種",轉爲區域或小型網絡所設計,擁有比一般DNS更爲方便簡易的配置;
                httpd:apache網頁服務器的配置文件所在目錄;
                mail:Mail Server組件的主要配置目錄,如sendmail;
                ntp:網絡時間服務器的配置目錄,其主要配置文件爲/etc/ntp.conf;
                openldap:目錄明顯是LDAP的配置目錄,軟件名稱爲OpenLDAP;
                postfix:postfix組件所提供的主要配置文件目錄;
                samba:文件共享服務samba的主要配置文件目錄;
                smrsh:這是sendmail爲了限制用戶可使用的命令設計的程序,將原本用戶所使用的/bin/sh替換爲/usr/sbin/smrsh;
                snmp:簡單網絡管理軟件的配置文件目錄,存在snmpd.conf主配置文件;
                squid:這是linux下的代理服務器squid的配置文件目錄,主配置文件是squid.conf;
                ssh:SSH服務的主要配置目錄,主配置文件是sshd_config;
                vsftpd:vsftpd服務器的主要配置目錄,主配置文件是vsftpd.conf;
                xinetd.d:xinetd是一個管理多個服務的daemon,這個目錄下列出的服務都是由xinetd進程管理的,其主配置文件是/etc/xinetd.conf;
        --系統目錄:如sysconfig、xen或網絡配置等與系統運行相關的目錄;
                blkid:此目錄所存放的其實是一個塊設備ID的臨時文件,主要是記錄系統中所有區塊設備的標籤名稱、硬件的唯一識別碼、文件系統的格式等基本信息;
                bluetooth:linux下使用藍牙設備所需的配置文件;啓動藍牙檢測的主要服務仍是/etc/rc.d/init.d/bluetooth,該程序使用的是hcid.conf配置文件;
                cron.X:cron.X的目錄都是給cron軟件存放其需要任務計劃的文件所使用的,按任務計劃時間的長短及配置特性分爲cron.d、cron.daily、cron.hourly、cron.monthly、cron.weekly五個主要目錄;
                dbus-1:D-BUS的主要配置目錄,D-BUS也是一種IPC交流的方式;
                default:這裏是存放一些系統軟件默認值的目錄,存放某些軟件執行時的基本參數;
                firmware:這個目錄所存放的東西是非常底層的信息,是CPU所需的microcode的實體文件;
                foomatic:與打印機相關的配置目錄,實現打印一對多的方式,在foomatic中,可以記錄多條打印機數據,讓用戶只在使用前先行配置所有需要使用的打印機即可;
                hal:全名Hardware Abstraction Layer,是linux一種管理硬件的機制,它會幫所有的應用程序或用戶蒐集所有PCI及USB等硬件信息,因此,用戶可以很簡單並實時地通過HAL的方式取得硬件的相關數據;
                isdn:ISDN服務的主要配置目錄,裏面包含可撥號的用戶、電話、聯機方式等;
                ld.so.conf.d:這個目錄是ldconfig所使用的,更準確的說,它是由/etc/ld.so.conf文件所決定的;ldconfig命令的目的在於將系統中的一些函數庫預先存放到內存中,讓系統使用時可以比以往通過硬盤的讀取速度來的更快,這樣可以大幅提高系統性能,尤其當要重複讀取時更明顯;ldconfig要將哪些函數庫丟到內存中,則須看/etc/ld.so.conf文件中所記錄的信息;
                logrotate.d:此目錄對系統管理員來說,是十分重要的一個目錄,因爲目錄中的文件,記錄瞭如何定期備份系統所需要備份的系統或軟件日誌文件及備份方式,目錄是由logrotate組件所提供的,而裏面所有文件是由各軟件各自產生的;其主要配置文件是/etc/logrotate.conf;                
                logwatch:logrotate主要是實現如何備份日誌文件,這個目錄就是記載如何分析日誌文件並告訴用戶的軟件logwatch的配置目錄;
                lsb-release.d:LSB是一個由很多人所執行的項目,其目的是將所有的Linux發行版定義爲一些共同的標準;
                lvm:這個目錄是LVM的基本配置文件,但配置或操作一般都只需要通過LVM提供的命令,而不會用到這個目錄,除非要使用到很高級的配置纔會更改此文件;
                makedev.d:MAKEDEV軟件對應的配置文件目錄,MAKEDEV主要用來產生設備文件,也就是說,在/dev目錄下的文件都由這個命令產生的,此目錄下的文件主要是針對設備文件的定義或屬性,目錄中存在的設備文件可以由MAKEDEV來創建,否則需要使用mknod命令了;
                modprobe.d:是modprobe命令的住配置目錄,一般系統啓動默認要加載的模塊放在/etc/modprobe.conf中;
                netplug和netplug.d:這兩個目錄和網絡接口的聯機與否由直接關係,因爲主要是控制聯機時的接口操作;
                opt:此目錄原本是定義爲存放所有額外安裝軟件的主機配置文件,但目前並沒有被使用到,此目錄爲空;
                pcmcia:這是PCMCIA的配置文件目錄,PCMCIA是筆記本電腦不可或缺的接口,需要即插即用的方式,此接口使用較少;
                pm:由pm-utils組件所提供的目錄,pm-utils是一套電源管理的工具軟件,其中/usr/lib/pm-utils也是主要目錄之一;
                ppp:ppp相關的配置文件都放在這個目錄中;
                profile.d:這個目錄存放的是系統部分的軟件配置,但會按不同的shell執行不同的文件,默認所使用的bash會直接執行該目錄下所有擴展名爲.sh的文件;
                rc.d:主要用來定義在每一個執行階段必須要執行哪些系統服務或程序,在目錄中主要分爲三個重要的部分:
                        --rc.sysinit:系統一開始啓動時所遇到的第一個文件,此腳本文件記錄服務啓動之前所需準備的所有事情,包括啓動時看到的歡迎畫面;
                        --rcX.d:在rc.sysinit文件之後所要執行的,X是系統啓動時的initdefault值,值爲幾則會轉到那個目錄下,並執行其中的所有文件,在此目錄中,文件一律都由兩個英文字母開始K和S,K代表kill,S代表Start;
                        --rc.local:系統初始化過程中最後一個執行的腳本文件,可以將需要開機啓動的程序或腳本放置在這個腳本文件中,以實現自動運行的目的;
                readahead.d:是readahead程序的主要配置目錄,爲了加速操作系統的使用速度,readahead_early和readahead_later這兩個進程在系統加載時,直接將日常所需要的一些文件,全部先放到硬盤的高速緩存中;
                redhat-lsb:都lsb-release.d目錄都是由程序redhat-lsb所提供的;
                rwtab.d:這個目錄是一個在啓動時會去參考的目錄,主要的文件在/etc/rwtab;這是一個系統初期的備份機制;
                sane.d:這是在系統下要使用掃描儀所需的配置目錄,主要配置文件是sane.conf,sane爲了方便用戶在各式的掃描儀連接時都可以使用,因此,在這一目錄中放置了很多種不同類型掃描儀的硬件信息,讓系統在檢測到掃描儀時可以直接使用;
                setuptool.d:這個目錄是"setup"系統配置工具的主要配置目錄;
                skel:用於初始化用戶宿主目錄的配置目錄,當建立一個用戶時,會把此目錄下的所有文件複製一份到用戶的宿主目錄,作爲用戶的初始化配置;
                sysconfig:非常重要的系統配置文件的存放目錄,裏面放置了大量系統啓動及運行相關的配置文件;
                sysconfig/network-scripts/ifcfg-eth0:網卡eth0對應的配置文件,設置內容包括設備名稱、IP地址、廣播地址、網關地址、網段、開機是否激活等參數
                udev:udev程序本身是一套設備的管理機制,udev通過sysfs的文件系統,可以正確地掌握目前系統上存在的硬件設備,以及針對每一個硬件設備做出不同的判斷與執行;
                yum和yum.repos.d:這兩個都是yum的配置目錄,是一套在linux下可以自動幫助用戶安裝、更新、移除等的管理組件,可用來替代rpm包管理方式,主配置文件是/etc/yum.conf;yum是更新方式及外掛程序的配置目錄,yum.repos.d是存放定期更新組件內容的信息;
        --安全性目錄:如selinux或pam.d等管理系統安全性的目錄;
                audit:這個目錄所代表的是一種和目錄名稱一致的audit安全機制,主要以服務的方式協助管理員持續監控各文件被存取的情況;目錄下的audit.rules文件主要是定義一些必要的監控規則;
                pam.d:此目錄是Linux-PAM的所有配置文件,配合/lib/security目錄中所有覺得函數庫,提供Linux下的應用程序認證的機制;
                pam_pkcs11:PAM機制中的一種登錄模塊,可以讓用戶通過smart card做登錄的操作;
                pki:PKI是一種公開密鑰的管理方式,通過這樣的管理模式,可以讓所有網絡傳輸有更多保障;
                racoon:這個目錄是由ipsec-tools組件所提供的,ipsec的主要目的是讓系統實現VPN的網路技術,在racoon目錄的主配置文件racoon.conf中,定義在ipsec操作中所需要的加密算法種類以及其他細節的配置;
                security:與pam.d目錄相輔相成,pam.d中的所有PAM的規則都要用到/lib/security下的PAM函數庫,而/etc/security目錄中,就是針對這些函數庫,提供以配置文件的方式進行細節配置,對希望調整系統安全性部分增加了非常大的方便性;
                selinux:selinux是一個很新的安全性方案,它是一種針對各種文件、目錄、設備或daemon等在linux所需使用到的安全性機制,而且其安全性的數據時直接記錄在文件系統中;
                wpa_supplicant:這個目錄被歸類到安全性目錄中,是因爲其屬於無線中安全認證的部分,存在wpa_supplicant.conf配置文件,用戶可以在這個目錄中加入已知可登陸的AP;
        --X Windows目錄:如X11或gdm管理X windows啓動或使用上的配置目錄;
                alternatives:linux下可辨識擴展名的"文件類型"選項,可以針對同一類型的文件,選出一個默認用戶所要使用的程序去執行;/etc/alternatives目錄下有所有目前已經定義的程序名稱,都以軟鏈接的方式存在,裏面每一個文件其實都有定義好的默認執行程序,可以使用alternatives命令查看及修改配置;
                fonts:這個目錄就是fontconfig軟件的最主要配置目錄,其中/etc/fonts/fonts.conf就是對應的配置文件,/etc/fonts目錄下的配置都是以XML的方式配置的;
                gconf:這一目錄是GConf2的組件所建立的,GConf的作用就是提供GNOME下的應用程序註冊的機制,有些類似於windows下的regedit;
                gdm:全名爲GNOME Display Manger,也就是協助X Windows啓動的管理軟件,在GDM中的主配置文件是custom.conf,在X windows下可以利用gdmsetup命令對這個文件進行配置;
                gnome-vfs-2.0:GNOME VFS機制,讓GNOME的系統可以知道每一種文件格式要如何開啓或瀏覽,而所有的配置都需要有相對應的函數庫;
                gtk-2.0:由gtk+組件提供的目錄,主要是提供X Windows窗口的顏色、按鈕或圖案,包含軟件選項的畫面、選項的按鈕、滾動軸的樣式等;
                kde:KDE Desktop Manager的主要配置目錄;主配置文件是kdmrc;
                NetworkManager:此目錄的目的是讓用戶不需要做任何操作和配置,只要用戶曾經登陸過無線AP,系統就可以記錄下來,以後再次登陸時就可以方便的登陸;
                pango:pango是一套協助GTK+將字體描繪出來的函數庫,不論任何的字體或語言,都可以通過pango描繪出來;
                rhgb:系統在進入X Windows之前,有一個前置配置的圖形接口,這個接口就是rhgb,其主要目的是讓系統啓動變得漂亮;
                scim:是Linux下目前很好用的輸入法;
                sound:GNOME下有許多的應用軟件,很多都會有其特殊的聲音,這個目錄中存放所有聲音的命令路徑;
                X11:X windows的核心配置目錄;該目錄下比較重要的文件有prefdm(判斷X windows使用哪一個Display Manager)、主配置文件xorg.conf(定了X windows所需使用的鍵盤、鼠標、顯卡等相關硬件設備,重點是關於顯卡的配置)、xinit子目錄(裏面都是一些X windows資源相關的配置)
                xdg:X windows上的菜單畫面,就是從這裏出來的,所有在X windows中使用的菜單文字及分類,都可以在這個目錄下做配置,其下的子目錄menu,可以通過配置裏面的文件自定義應用程序、系統管理、外觀等菜單內容                        
        --其他目錄:針對單一特殊軟件的配置或未能按以上分類方式則放在此目錄中;
                a2ps.cfg和a2ps-site.cfg:用於將一份文件格式轉換爲postscript的格式,在某些打印機或要將文件輸出成一份標準格式的文件時,它會被用到;
                alsa:主要任務在於提供linux聲音及聲音的功能,並試着讓其性能達到最佳化;
                ghostscript:在linux下要讀取Adobe格式文件(如pdf),最方便的方式就是使用ghostscript命令,這個目錄主要用於設置在顯示時使用哪種字體作爲默認字體;
                gre.d:GRE是Mozilla註冊的一種機制,目錄中的配置文件gre.conf會註明所使用的Mozilla軟件的路徑和版本;
                iproute2:iproute2是一套非常強大的網絡管理軟件,iproute2提供的功能有很多種,此目錄中存放一些網絡的基本配置值;
                java:這個目錄是由jpackage-utils軟件提供的,這個目錄是這個軟件的主要配置目錄,除此之外還有maven、jvm、jvm-common都是由jpackage-utils軟件產生的,jpackage是一個專門爲了提供java程序與函數庫所存在的軟件;
                mgetty+sendfax:主要用於使用linux架構一臺fax server,可以使用mgetty.config來配置需要有關傳真接收和發送的操作;
                php.d:主要存放的各軟件(如dbase、ldap、mysql等)與php相關的配置文件;
                reader.conf.d:存放smart card配置文件的目錄,由程序pcsc-lite提供,這個程序的主配置文件是/etc/reader.conf;
                dumpdates:存放dump命令的執行日期,dump命令可以對ext2/ext3文件系統進行檢查備份;
/lib:需要共享的函數庫與kernel模塊,系統kernel啓動所使用的函數庫,或者當執行一些在/bin和/sbin中的命令時使用的函數庫;
/media:移動存儲設備默認掛載點;(如光盤)
/mnt:臨時掛載用的設備掛載點;(如磁盤分區,網絡共享)
/opt:額外所安裝的應用程序目錄,有些軟件包我們可以將它安裝在該目錄中;(一般爲空,某些應用軟件安裝需要這個目錄)
/root:管理員root的宿主目錄
/sys:虛擬文件系統,被建立在內存中,是在2.6版的kernel之後才被加入到正式的文件系統中,以分類的方式將系統的信息存放在這個目錄中,以方便linux用戶通過不同的分類找出系統相關的信息;
/tmp:臨時文件存放區域;(默認被設置了粘滯位)
/var:動態文件或數據存放目錄,默認日誌文件都存放在這個目錄下,一般建議把此目錄單獨劃分一個分區;
        /var/account:是linux系統下的審覈機制(psacct)對應的目錄;
        /var/cache:該目錄下的文件時所有程序所產生的緩存數據,也就是當應用程序啓動時,會將數據留一份在這個目錄中;
        /var/empty:默認是sshd程序用到的這個目錄,當建立ssh連接,ssh服務器必須使用該目錄下的sshd子目錄;
        /var/ftp:ftp服務器軟件一般默認會將匿名登陸的用戶的宿主目錄;
        /var/gdm:gdm所使用的目錄,裏面存放一些系統當前所佔用的console記錄及通過gdm執行的X windows記錄,只有通過gdm窗口的日誌纔會存放在此;
        /var/lib:該目錄下存放很多與應用程序名稱同名的子目錄,每個子目錄下都是應用執行的狀態信息;
        /var/lock:每個服務一開始都會在這個目錄下產生一個該服務的空文件,主要是避免服務啓動衝突;
        /var/log:常用目錄,專門用來存放所有日誌文件的目錄,裏面存放很多系統、軟件、用戶等相關的日誌信息;裏面有一些文件是比較常用的;
                lastlog:記錄用戶最後一次登錄的信息,使用lastlog命令讀取;
                message:記錄系統的幾乎所有信息,主要包括啓動信息,syslogd服務記錄的信息等;
                wtmp:記錄所有用戶登陸及註銷的信息,使用last命令讀取;
                secure:記錄登錄系統訪問數據的文件,如ssh pop3 telnet ftp等都會記錄在此文件中
                /var/log/httpd/access_log:httpd訪問日誌
                /var/log/httpd/error_log:httpd錯誤日誌
                btmp:記錄失敗的用戶登錄
                utmp: 紀錄當前登錄的每個用戶
                xferlog:ftp會話日誌
                boot.log:記錄開機或一些服務啓動時所顯示的啓動和關閉信息
                /var/log/maillog或/var/log/mail/*:記錄郵件訪問或往來的用戶信息
                cron: 記錄crontab例行性服務的內容
                dmesg:開機引導日誌信息
                sudolog:紀錄使用sudo發出的命令
                sulog: 紀錄使用su命令的使用
        /var/named:bind軟件實現的DNS服務器的區域數據文件都存放在這個目錄下;
        /var/nis和/var/yp:都是NIS服務機制所使用的目錄,nis主要記錄所有網絡中每一個client的連接信息;yp是linux的nis服務的日誌文件存放的目錄;
        /var/run:此目錄中的大部分文件都記載目前系統正在執行程序的PID值,每一個文件都是以個獨立的PID記錄;此目錄下存放一個特殊文件utmp,此文件記錄目前誰在使用系統,必須使用utmpdump命令才能看到其中的內容;
        /var/spool:裏面主要都是一些臨時存放,隨時會被用戶所調用的數據;打印機、郵件、代理服務器等假脫機目錄存放在該目錄下;
        /var/tmp:專門爲了一些應用程序在安裝或執行時,需要在重啓後使用的某些文件時,能將該文件暫時存放在這個目錄中,完成後再行刪除;
        /var/www:apache網頁服務器的宿主目錄;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章