檔案系統及各個資料夾的作用

2022-09-02 18:51:09 字數 4650 閱讀 3256

可分享的(shareable)

不可分享的(unshareable)

不變的(static)

/usr (軟體放置處)

/etc (配置檔案)

/opt (第三方協力軟體)

/boot (開機與核心檔)

可變動的(variable)

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

/var/run (程式相關)

/var/spool/news (新聞組)

/var/lock (程式相關)

目錄應放置檔案內容

/bin

系統有很多放置執行檔案的目錄,但/bin比較特殊。因為/bin放置的是在單人維護模式下還能夠被操作的指令。 在/bin底下的指令可以被root與一般賬號所使用,主要有:cat, chmod, chown, date, mv, mkdir, cp, bash等等常用的指令。

/boot

這個目錄主要在放置開機會使用到的檔案,包括linux核心檔案以及開機選單與開機所需配置檔案等等。 linux kernel常用的檔名為:vmlinuz,如果使用的是grub這個開機管理程式, 則還會存在/boot/grub/這個目錄喔!

/dev

在linux系統上,任何裝置與介面裝置都是以檔案的型態存在於這個目錄當中的。 你只要透過訪問這個目錄底下的某個檔案,就等於訪問某個裝置囉~ 比要重要的檔案有/dev/null, /dev/zero, /dev/tty, /dev/lp*, /dev/hd*, /dev/sd*等等

/etc

系統主要的配置檔案幾乎都放置在這個目錄內,例如人員的賬號密碼檔案、 各種服務的啟始檔等等。一般來說,這個目錄下的各檔案屬性是可以讓一般使用者查閱的, 但是只有root有權力修改。fhs建議不要放置可執行檔案(binary)在這個目錄中喔。比較重要的檔案有: /etc/inittab, /etc/init.d/, /etc/modprobe.conf, /etc/x11/, /etc/fstab, /etc/sysconfig/ 等等。另外,其下重要的目錄有:

/home

這是系統預設的使用者家目錄(home directory)。在你新增乙個一般使用者賬號時, 預設的使用者家目錄都會規範到這裡來。比較重要的是,家目錄有兩種代號喔:

~:代表目前這個使用者的家目錄,而

~dmtsai :則代表 dmtsai 的家目錄!

/lib

系統的函式庫非常的多,而/lib放置的則是在開機時會用到的函式庫,

以及在/bin或/sbin底下的指令會呼叫的函式庫而已。

什麼是函式庫呢?妳可以將他想成是『外掛程式』,某些指令必須要有這些『外掛程式』才能夠順利完成程式的執行之意。

尤其重要的是/lib/modules/這個目錄,

因為該目錄會放置核心相關的模組(驅動程式)喔!

/media

media是『**』的英文,顧名思義,這個/media底下放置的就是可移除的裝置啦!

包括軟盤、光碟、***等等裝置都暫時掛載於此。常見的檔名有:/media/floppy, /media/cdrom等等。

/mnt

如果妳想要暫時掛載某些額外的裝置,一般建議妳可以放置到這個目錄中。

在古早時候,這個目錄的用途與/media相同啦!只是有了/media之後,這個目錄就用來暫時掛載用了。

/opt

這個是給第三方協力軟體放置的目錄。什麼是第三方協力軟體啊?

舉例來說,kde這個桌面管理系統是乙個獨立的計畫,不過他可以安裝到linux系統中,因此kde的軟體就建議放置到此目錄下了。

另外,如果妳想要自行安裝額外的軟體(非原本的distribution提供的),那麼也能夠將你的軟體安裝到這裡來。

不過,以前的linux系統中,我們還是習慣放置在/usr/local目錄下呢!

/root

系統管理員(root)的家目錄。之所以放在這裡,是因為如果進入單人維護模式而僅掛載根目錄時,

該目錄就能夠擁有root的家目錄,所以我們會希望root的家目錄與根目錄放置在同乙個分割槽中。

/sbin

linux有非常多指令是用來設定系統環境的,這些指令只有root才能夠利用來『設定』系統,其他使用者最多只能用來『查詢』而已。

放在/sbin底下的為開機過程中所需要的,裡面包括了開機、修復、還原系統所需要的指令。

至於某些伺服器軟體程式,一般則放置到/usr/sbin/當中。至於本機自行安裝的軟體所產生的系統執行檔案(system binary),

則放置到/usr/local/sbin/當中了。常見的指令包括:fdisk, fsck, ifconfig, init, mkfs等等。

/srv

srv可以視為『service』的縮寫,是一些網路服務啟動之後,這些服務所需要取用的資料目錄。

常見的服務例如www, ftp等等。舉例來說,www伺服器需要的網頁資料就可以放置在/srv/www/裡面。

/tmp

這是讓一般使用者或者是正在執行的程式暫時放置檔案的地方。

這個目錄是任何人都能夠訪問的,所以你需要定期的清理一下。當然,重要資料不可放置在此目錄啊!

因為fhs甚至建議在開機時,應該要將/tmp下的資料都刪除唷!

目錄應放置檔案內容

/lost+found

這個目錄是使用標準的ext2/ext3檔案系統格式才會產生的乙個目錄,目的在於當檔案系統發生錯誤時, 將一些遺失的片段放置到這個目錄下。這個目錄通常會在分割槽的最頂層存在, 例如你加裝一顆硬碟於/disk中,那在這個系統下就會自動產生乙個這樣的目錄『/disk/lost+found』

/proc

這個目錄本身是乙個『虛擬檔案系統(virtual filesystem)』喔!他放置的資料都是在記憶體當中, 例如系統核心、行程資訊(process)、周邊裝置的狀態及網路狀態等等。因為這個目錄下的資料都是在記憶體當中, 所以本身不佔任何硬碟空間啊!比較重要的檔案例如:/proc/cpuinfo, /proc/dma, /proc/interrupts, /proc/ioports, /proc/net/* 等等。

/sys

這個目錄其實跟/proc非常類似,也是乙個虛擬的檔案系統,主要也是記錄與核心相關的資訊。 包括目前已載入的核心模組與核心偵測到的硬體裝置資訊等等。這個目錄同樣不佔硬碟容量喔!

目錄應放置檔案內容

/usr/x11r6/

為x window system重要資料所放置的目錄,之所以取名為x11r6是因為最後的x版本為第11版,且該版的第6次發布之意。

/usr/bin/

絕大部分的使用者可使用指令都放在這裡!請注意到他與/bin的不同之處。(是否與開機過程有關)

/usr/include/

c/c++等程式語言的檔頭(header)與包含檔(include)放置處,當我們以tarball方式 (*.tar.gz 的方式安裝軟體)安裝某些資料時,會使用到裡頭的許多包含檔喔!

/usr/lib/

包含各應用軟體的函式庫、目標檔案(object file),以及不被一般使用者慣用的執行檔或指令碼(script)。 某些軟體會提供一些特殊的指令來進行伺服器的設定,這些指令也不會經常被系統管理員操作, 那就會被擺放到這個目錄下啦。要注意的是,如果你使用的是x86_64的linux系統, 那可能會有/usr/lib64/目錄產生喔!

/usr/local/

/usr/sbin/

非系統正常運作所需要的系統指令。最常見的就是某些網路伺服器軟體的服務指令(daemon)囉!

/usr/share/

/usr/src/

一般原始碼建議放置到這裡,src有source的意思。至於核心原始碼則建議放置到/usr/src/linux/目錄下。

目錄應放置檔案內容

/var/cache/

應用程式本身運作過程中會產生的一些暫存檔;

/var/lib/

程式本身執行的過程中,需要使用到的資料檔案放置的目錄。在此目錄下各自的軟體應該要有各自的目錄。 舉例來說,mysql的資料庫放置到/var/lib/mysql/而rpm的資料庫則放到/var/lib/rpm去!

/var/lock/

某些裝置或者是檔案資源一次只能被乙個應用程式所使用,如果同時有兩個程式使用該裝置時, 就可能產生一些錯誤的狀況,因此就得要將該裝置上鎖(lock),以確保該裝置只會給單一軟體所使用。 舉例來說,燒錄機正在燒錄一塊光碟,你想一下,會不會有兩個人同時在使用乙個燒錄機燒片? 如果兩個人同時燒錄,那**寫入的是誰的資料?所以當第乙個人在燒錄時該燒錄機就會被上鎖, 第二個人就得要該裝置被解除鎖定(就是前乙個人用完了)才能夠繼續使用囉。

/var/log/

重要到不行!這是登入檔案放置的目錄!裡面比較重要的檔案如/var/log/messages, /var/log/wtmp(記錄登入者的資訊)等。

/var/mail/

放置個人電子郵件信箱的目錄,不過這個目錄也被放置到/var/spool/mail/目錄中! 通常這兩個目錄是互為鏈結檔案啦!

/var/run/

某些程式或者是服務啟動後,會將他們的pid放置在這個目錄下喔! 至於pid的意義我們會在後續章節提到的。

/var/spool/

這個目錄通常放置一些佇列資料,所謂的『佇列』就是排隊等待其他程式使用的資料啦! 這些資料被使用後通常都會被刪除。舉例來說,系統收到新信會放置到/var/spool/mail/中, 但使用者收下該信件後該封信原則上就會被刪除。信件如果暫時寄不出去會被放到/var/spool/mqueue/中, 等到被送出後就被刪除。如果是工作排程資料(crontab),就會被放置到/var/spool/cron/目錄中!

SDK各個資料夾的作用

預設在android sdk安裝目錄的docs reference packages.html下。下面是android的sdk api及工程目錄說明 sdk下包的說明 1 add ons android開發需要的第三方檔案和軟體庫 3 extras 擴充套件的附加包 6 samples 所有的樣例程...

Tomcat各個資料夾的作用

今天晚上需要產品上線,先學習一下tomcat各個資料夾的作用,以前了解過一些,但是都不是特別的全面,這次系統的了解一下tomcat資料夾的作用。1 bin目錄 這個資料夾包含的是啟動 關閉tomcat的指令碼,裡面有startup.sh linux環境下啟動tomcat指令碼 和startup.ba...

Linux各個資料夾的作用

根目錄,包含了幾乎所有檔案目錄 boot 引導程式,核心等存放的目錄。sbin 超級使用者可以使用的命令的存放目錄。存放大多涉及系統管理的命令。凡是sbin中包含的都需要root許可權才能執行。bin 普通使用者可以使用的命令的存放目錄。系統需要的命令位於此目錄。類似的目錄還有 usr bin,us...