Linux目錄結構及其命名的規定 Linux - Filessystem Hierarchy Standard / FHS
Linux目錄結構及其命名的規定 Linux Filessystem Hierarchy / LFH
多数Linux发行版遵从FHS标准并且声明其自身政策以维护FHS的要求。但截至2009年,包括由自由标准小组成员参与开发的版本在内的绝大多数发行版,并不完全执行建议的标准。
在FHS中,所有的文件和目录都出现在根目录"/"下,即使他们存储在不同的物理设备中。
FHS:
Filesystem Hierarchy Standard
/bin: 所有用户可用的基本命令程序文件;
/sbin: 供系统管理使用的工具程序;
/boot: 引導加载器必须用到的各静態文件:kernel, initramfs(initrd), grub等;
/dev: 儲存特殊文件或设备文件;
設備有兩種類型:字符設備(线性設備)、块設備(隨機設備);
/etc: 系统程序的配置文件,只能為静態;
/home: 普通的家目錄的集中位置;一般每個普通用户的家目錄默認为此目錄下與用户名同名的子目錄,/home/USERNAME;
/root: 管理員的家目錄,可選;
/lib: 為系统啟動或根文件系统上的應用程序(/bin, /sbin等)提供共享庫,以及為内核提供内核模块
libc.so.*: 動態連接的C库;
ld*: 運行时連接器/加載器;
modules: 用於儲存内核模块的目錄;
/lib64: 64位系统特有的存放64位共享库的路径;
/media: 便携式設備掛載點"mount",cdrom, floppy等;
/mnt: 其它文件系统的臨時掛載點;
/opt: 附加應用程序的安裝位置;可選路徑;
/srv: 當前主機為服務提供的數據;
/tmp: 為那些會產生臨時文件的程序提供的用於儲存臨時文件的目錄;可供所用户執行寫入操作;有特殊權限;
/usr: usr Hierarchy,全局共享的只讀數據路徑;
bin, sbin
lib, lib64
include: C程序頭文件;
share: 命令手册頁和自带文檔等架構特有的文件的儲存位置
local: 另一個層級目錄;
X11R6: X-Window程序的安裝位置
src: 程序源碼文件的儲存位置
/usr/local: Local hierarchy,讓系统管理員安裝本地應用程序;也通常用於安裝第三方程序;
/var: /var Hierarchy,儲存常發生變化的數據的目錄;
cache Application cache data
lib Variable state information
local Variable data for /usr/local
lock Lock files
log Log files and directories
opt Variable data for /opt
run Data relevant to running processes
spool Application spool data
tmp Temporary files preserved between system reboots
/proc: 基於内存的虛擬文件系统,用於為内核及進程儲存其相關信息;它們多為内核参數,
例如net.ipv4.ip_forward, 虛擬為net/ipv4/ip_forward, 儲存於/proc/sys/, 因此其完整路徑為/proc/sys/net/ipv4/ip_forward;
/sys: sysfs虛擬文件系统提供了一種比proc更为理想的訪問内核數據的途徑;其主要作用在於為管理Linux設備提供一种统一模型的的接口;
参考:https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/
Linux系统上的文件類型:
-:常规文件;即f;
d: directory,目錄文件;
b: block device,块設備文件,支持以“block”為單位進行隨機訪問
c:character device,字符設備文件,支持以“character”為單位進行綫性訪問
major number:主設備號,用於(標識/標籤)設備類型,進而確定要加載的驅動程序
minor number:次設備號,用於(標識/標籤)同一類型中的不同的設備;
8位二進制:0-255
l:symbolic link,符號連接文件;
p: pipe,命名管道;
s: socket,套接字文件;
文件系统:層級結構;有索引;
/: 原初起點;
倒置樹狀结構;
/dev/pts/2:
最左侧/: 表示根目錄
其它的/: 表示路徑分隔符
Linux的路径分隔符是/
Windows的是\
文件的路徑表示:
絶對路徑:從根開始表示出的路徑
相對路徑:從當前位置開始表示出的路徑
文件名使用法則:
嚴格區分字符大小寫:file1, File1, FILE1
目錄也是文件,在同一路徑下,兩個文件不能同名;
支持使用除/以外的任意字符;
最長不能超過255個字符;
用户有家目錄:home,
用户的起始目錄;普通用户管理文件的位置;
工作目錄:
/etc/sysconfig/network-scripts/ifcfg-eno16777736
basename:最右侧的文件或目錄名;
dirname:basename左侧的路徑;
命令:(命令及符號)
~]# basename /PATH/TO/SOMEFILE
SOMEFILE
~]# dirname /PATH/TO/SOMEFILE
/PATH/TO
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步