在Linux系統中,目錄被組織成一個: 單根倒置樹結構 ,文件系統從根目錄開始,用/來表示。文件名稱 區分大小寫 ( 大小寫敏感還需要看具體的文件系統格式 ),以.開頭的為隱藏文件, 路徑用/來進行分割 (windows中使用\來分割),文件有兩個種類: 元數據與數據本身 .在操作linux系統時, ...
在Linux系統中,目錄被組織成一個:單根倒置樹結構,文件系統從根目錄開始,用/來表示。文件名稱區分大小寫( 大小寫敏感還需要看具體的文件系統格式 ),以.開頭的為隱藏文件,路徑用/來進行分割(windows中使用\來分割),文件有兩個種類:元數據與數據本身.在操作linux系統時,通常會遵循以下的分層結構規則:
LSB (Linux Standard Base) / FHS(Filesystem Hierarchy Standard)
1.文件系統結構
/:根目錄,位於Linux文件系統目錄結構的頂層,一般根目錄下只存放目錄,不要存放文件,/etc、/bin、/dev、/lib、/sbin應該和根目錄放置在一個分區中。
/bin : 提供用戶使用的基本命令, 存放二進位命令,不允許關聯到獨立分區,OS啟動會用到裡面的程式。
/boot:用於存放引導文件,內核文件,引導載入器.
/sbin:管理類的基本命令,不能關聯到獨立分區,OS啟動時會用到的程式(重要的命令通常處於bin,不重要的則安裝在sbin)。
/lib:存放系統在啟動時依賴的基本共用庫文件以及內核模塊文件. 系統使用的函數庫的目錄 也存放了大量的腳本庫文件 ,程式在執行過程中,需要調用時會用到
/lib64:存放64位系統上的輔助共用庫文件.
/etc: 系統配置文件存放的目錄,該目錄存放系統的大部分配置文件和子目錄,不建議在此目錄下存放可執行文件 。
/home:普通用戶主目錄,當新建賬戶時,都會分配在此,建議單獨分區,並分配額外空間用於存儲數據。
/root: 系統管理員root的宿主目錄,系統第一個啟動的分區為/,所以最好將/root和/放置在一個分區下。
/media:攜帶型移動設備掛載點目錄.
/mnt:臨時文件系統掛載點.
/dev: 設備(device)文件目錄,存放linux系統下的設備文件,訪問該目錄下某個文件,相當於訪問某個設備,存放連接到電腦上的設備(終端、磁碟驅動器、光碟機及網卡等)的對應文件 (b 隨機訪問,c 線性訪問)
/opt:第三方應用程式的安裝位置.
/srv: 服務啟動之後需要訪問的數據目錄,存放系統上運行的服務用到的數據,如www服務需要訪問的網頁數據存放在/srv/www內。
/tmp:存儲臨時文件, 任何人都可以訪問,重要數據一定不要放在此目錄下。
/usr: 應用程式存放目錄,/usr/bin 存放保證系統擁有完整功能而提供的應用程式, /usr/share 存放共用數據,/usr/lib 存放不能直接運行的,卻是許多程式運行所必需的一些函數庫文件,_/usr/local 存放軟體升級包,第三方應用程式的安裝位置,/usr/share/doc _系統說明文件存放目錄。
/var :放置系統中經常要發生變化的文件,如日誌文件。/var/log 日誌目錄及文件./var/tmp:保存系統兩次重啟之間產生的臨時數據.
/proc: 用於輸出內核與進程信息相關的虛擬文件系統,目錄中的數據都在記憶體中,如系統核心,外部設備,網路狀態,由於數據都存放於記憶體中,所以不占用磁碟空間
/sys : 用於輸出當前系統上硬體設備相關的虛擬文件系統.
/selinux:存放selinux相關的信息安全策略等信息.
2.Linux下的文件類型
文件類型
在Linux中,使用命令查看文件,首字母會標記該文件的文件類型,一般有以下幾種類型:
- – : 普通文件
- d: 目錄文件
- b:塊文件
- c:字元文件
- l:符號鏈接文件
- p:管道文件pipe
- s:套位元組文件socket
3.文件名規則
文件名最長為255位元組(位元組,不是字元)。包括路徑在內的文件名稱最長為4095位元組。
文件顏色顯示不同,代表了不同的文件格式。(以下為預設格式,可以自定義)
藍色 -> 文件夾。
綠色 -> 可執行文件
紅色 -> 壓縮文件
淺藍色 -> 鏈接文件
灰色 ->其他文件
在Linux中,除了斜杠和NUL字元,都是合法的。不推薦使用特殊符號來命名文件或者目錄,容易引發混淆.比如空格, -,非要創建就用””引用起來,但如果遇到用特殊字元命名的特殊文件,在該文件上加上:文件路徑後即可進行查看,創建,刪除。
.. 表示父目錄 .表示當前目錄
4.絕對路徑與相對路徑
絕對路徑 :以正斜杠開始,表示該文件從根目錄開始的完整位置路徑,必須以根開始。
相對路徑 :不以斜杠開始,指該文件相對於該目錄的路徑或某個目錄的路徑,不以根開始。可以作為一個簡短的形式來指定一個文件名。
兩個常用的小命令:
basename : 取文件本身的名稱 不帶目錄
dirname : 取文件目錄 ,不帶文件名