Linux 系統檔案結構中,有這麼一個神奇的目錄那就是usr。之前一直都沒有去關注過它,反正程式已經安裝在裡面,我也不知道有什麼用就放在哪裡了,後來 fedora 要簡化整個檔案系統體系,這才看到才想到它的存在,usr 到底是什麼的縮寫呢,它又是怎麼來的呢?這裡小編要給你們講述的是Linux系統中的usr目錄,下面也列舉了usr目錄下一些重要子目錄所包含檔案的功能,有需要的網友可以參考學習下。
1.usr 是 unix system resources 的縮寫;
2.usr 是 user 的縮寫;
3.usr 是 unix software resources 的縮寫。
根據常識判斷,是 user 縮寫的可能性不大,因為和 /home 衝突了嘛。不過是 system resources 還是 software resources 的縮寫還真不好說。特此查了好多東西,卻發現竟然連 wikipedia 也模稜兩可。/usr 是Linux系統核心所在,包含了所有的共用檔案。
它是 unix 系統中最重要的目錄之一,涵蓋了二進位檔案,各種文檔,各種標頭檔,x,還有各種庫檔案;還有諸多程式,例如 ftp,telnet 等等。
曾經的 /usr 還是使用者的家目錄,存放著各種使用者檔案 —— 現在已經被 /home 取代了(例如 /usr/someone 已經改為 /home/someone)。
現代的 /usr 只專門存放各種程式和資料,使用者目錄已經轉移。雖然 /usr 名稱未改,不過其含義已經從“使用者目錄”變成了“unix 系統資源”目錄。值得注意的是,在一些 unix 系統上,仍然把 /usr/someone 當做使用者家目錄,如 Minix。
/usr 檔案系統經常很大,因為所有程式安裝在這裡。 /usr 裡的所有檔案一般來自Linux distribution;本地安裝的程式和其他東西在/usr/local 下。這樣可能在升級新版系統或新distribution時無須重新安裝全部程式。
由於/usr中的檔案不和特定的電腦相關,也不會在通常使用中修改,因此可以通過網際網路共用這個目錄(檔案系統),這樣,當管理員安裝了新的軟體之後,所有共用這一檔案系統的電腦均可以使用新的軟體。
至此,真相大白。看來就像前一陣子的 /var/run 移到 /run 一樣。
真的是不看不知道,一看嚇一跳呀。原來Linux 幾經進化,好多目錄的誕生和用途已經產生了根本的變化。
/usr 目錄結構
/usr/bin : 所有可執行檔,如 gcc,firefox 等(指不包含在 /sbin 和 /bin 內的);
/usr/include : 各種標頭檔,編譯檔案等時需要使用;
/usr/include/’package-name’ : 程式特定的標頭檔;
/usr/lib : 所以可執行檔所需要的庫檔案;
/usr/local : 這裡主要存放那些手動安裝的軟體,即 不是通過“新立得”或apt-get安裝的軟體 。 它和/usr目錄具有相類似的目錄結構 。讓軟體包管理器來管理/usr目錄,而把自訂的指令碼(scripts)放到/usr/local目錄下面,我想這應該是個不錯的主意。
/usr/X11R6 : x 系統的二進位檔案,庫檔案,文檔,字型等。它不等同於 /usr 的作用,只有 x 才能調用這些庫檔案等,其他程式不讀取或者使用。因為Linux 沒有原生圖形介面,而且 Linux大部分情況下是 for server 的,所以圖形介面沒有意義;其中 X11R6 代表 version 11 release 6;
/usr/X11R6/bin : x 的二進位檔案,包含運行 x 的必須檔案;
/usr/X11R6/include : x 相關的標頭檔;
/usr/X11R6/lib : x 庫檔案;
/usr/X11R6/lib/modules : x 的模組,啟動時載入。缺少 video4linux, DRI and GLX 和 輸入輸出裝置 模組,將工作不正常;
/usr/X11R6/lib/X11/fonts : x font server 的字型檔;
/usr/doc : 文檔。實際是 /usr/share/doc 的軟連結;
/usr/etc : 一個極少用到的設定檔存放地;
/usr/games : 曾經包含遊戲等檔案,現在很少用到;
/usr/info : 系統相關資訊,是 /usr/share/info 的軟連結;
/usr/man : man 手冊,已經移至 /usr/share/man;
/usr/sbin : 類似 /sbin,root 可以執行。但此目錄不包含在環境變數 $PATH 中,它包含的程式類似於 chroot, useradd, in.tftpd and pppconfig;
/usr/share : 它包含了各種程式間的共用檔案,如字型,表徵圖,文檔等。(/usr/local 對應的目錄是 /usr/loca/share);
/usr/share/doc : 類似應用程式的 man 手冊。它包含程式的說明檔案,預設設定檔等;
/usr/share/info : 不常用,已經被 man 代替;
/usr/share/man : app 的 manual;
/usr/share/icons : 應用程式的表徵圖等檔案,分為 png,svg 等多種格式;
/usr/share/fonts : 字型檔,系統範圍內可使用,~/.fonts 僅目前使用者可用;
/usr/src :Linux 核心的源碼和說明文檔等;
/usr/src/linux :Linux原始碼;
/usr/src/linux/.config : 核心編譯過程產生的檔案;通常由命令 ‘make config’ , ‘make menuconfig’ 或 ‘make xconfig’ 執行後產生;
/usr/src/linux/.depend, /usr/src/linux/.hdepend : ‘make dep’ 檢測編譯依賴時需要的檔案,由 /usr/src/linux/.config 產生;
/usr/src/linux/COPYING : GNU license;
/usr/src/linux/Makefile : 編譯核心所需的 Makefile;
/usr/src/linux/Rules.make : 當有多個 Makefile 時,根據它的規則執行 make;
/usr/tmp : 已經被眾多發行版拋棄的臨時檔案夾。