一文詳解Linux根文件系統(tǒng)各文件夾作用
Linux目錄結(jié)構(gòu)全景圖
/ ├── bin/ (基本命令) ├── boot/ (啟動文件) ├── dev/ (設(shè)備文件) ├── etc/ (配置文件) ├── home/ (用戶目錄) ├── lib/ (共享庫) ├── media/ (可移動媒體) ├── mnt/ (臨時掛載) ├── opt/ (可選軟件) ├── proc/ (進(jìn)程信息) ├── root/ (root用戶家目錄) ├── run/ (運(yùn)行時數(shù)據(jù)) ├── sbin/ (系統(tǒng)命令) ├── srv/ (服務(wù)數(shù)據(jù)) ├── sys/ (系統(tǒng)信息) ├── tmp/ (臨時文件) ├── usr/ (用戶程序) └── var/ (可變數(shù)據(jù))
目錄功能對比表
| 目錄 | 主要用途 | 類比現(xiàn)實(shí)世界 | 典型內(nèi)容 | 是否可刪除 |
|---|---|---|---|---|
| /bin | 基礎(chǔ)命令 | 工具箱 | ls, cp, rm, cat | 否(系統(tǒng)無法啟動) |
| /sbin | 系統(tǒng)管理命令 | 專用工具 | fdisk, ifconfig, reboot | 否 |
| /etc | 配置文件 | 設(shè)置說明書 | passwd, network.conf | 否 |
| /home | 用戶個人文件 | 個人房間 | 用戶文檔、設(shè)置 | 是(但用戶數(shù)據(jù)會丟失) |
| /root | 管理員家目錄 | 經(jīng)理辦公室 | root的配置文件 | 可(但不建議) |
| /dev | 設(shè)備文件 | 設(shè)備插槽 | /dev/sda1, /dev/tty | 否 |
| /lib | 共享庫文件 | 公共圖書館 | .so文件 | 否 |
| /proc | 進(jìn)程和內(nèi)核信息 | 監(jiān)控儀表盤 | cpuinfo, meminfo | 否(虛擬文件系統(tǒng)) |
| /tmp | 臨時文件 | 公共白板 | 緩存、臨時下載 | 是(重啟可能丟失) |
| /usr | 用戶程序資源 | 應(yīng)用商店 | 程序、文檔、庫 | 否 |
| /var | 可變數(shù)據(jù) | 倉庫/日志室 | 日志、郵件、數(shù)據(jù)庫 | 否 |
| /boot | 啟動文件 | 引擎啟動器 | 內(nèi)核、grub | 否 |
| /opt | 可選軟件包 | 擴(kuò)展應(yīng)用區(qū) | 第三方大型軟件 | 是(軟件會丟失) |
| /mnt | 臨時掛載點(diǎn) | 臨時停車位 | 外部硬盤、ISO | 是(但會失去掛載點(diǎn)) |
| /media | 可移動媒體 | 自動掛載區(qū) | U盤、光盤 | 是 |
詳細(xì)目錄解析
1./bin 和 /usr/bin- 命令倉庫
/bin/ /usr/bin/ ├── bash ├── python3 ├── cat ├── gcc ├── ls ├── vim ├── cp ├── git └── rm └── ssh
- /bin: 基礎(chǔ)生存命令(單用戶模式也需要)
- /usr/bin: 大部分用戶命令
- 場景: 系統(tǒng)救援時,/bin必須存在才能執(zhí)行基本操作
2./etc- 系統(tǒng)配置中心
/etc/ ├── passwd # 用戶賬戶信息 ├── group # 用戶組信息 ├── fstab # 文件系統(tǒng)掛載表 ├── hosts # 主機(jī)名映射 ├── network/ # 網(wǎng)絡(luò)配置 ├── ssh/ # SSH服務(wù)器配置 └── apt/ # 包管理器配置
- 特點(diǎn): 幾乎全是文本文件,可直接編輯
- 重要文件:
/etc/passwd(用戶)、/etc/fstab(掛載)
3./home 和 /root- 用戶空間
/home/ /root/
├── alice/ ├── .bashrc
│ ├── Documents/ ├── .ssh/
│ ├── Downloads/ └── scripts/
│ └── .config/
└── bob/
├── Music/
└── projects/
- /home/username: 每個用戶的個人空間
- /root: 超級用戶的家目錄(不在/home下是為了安全)
4./dev, /proc, /sys- 系統(tǒng)接口
/dev/ /proc/ /sys/ ├── sda1 ├── 1/ ├── class/ ├── tty0 │ ├── cmdline ├── devices/ ├── null │ └── status └── kernel/ ├── zero ├── cpuinfo └── random └── meminfo
- /dev: 設(shè)備文件(硬盤、終端等)
- /proc: 進(jìn)程和系統(tǒng)信息(虛擬文件系統(tǒng))
- /sys: 內(nèi)核和設(shè)備信息
5./var- 變化的數(shù)據(jù)
/var/ ├── log/ # 日志文件 │ ├── auth.log # 認(rèn)證日志 │ └── syslog # 系統(tǒng)日志 ├── cache/ # 應(yīng)用程序緩存 ├── lib/ # 程序狀態(tài)信息 ├── mail/ # 用戶郵件 ├── run/ # 運(yùn)行時數(shù)據(jù)(PID文件等) ├── spool/ # 排隊數(shù)據(jù)(打印隊列等) └── www/ # 網(wǎng)站文件(如果運(yùn)行Web服務(wù)器)
6./usr- 用戶軟件資源
/usr/ ├── bin/ # 非必要命令 ├── sbin/ # 非必要系統(tǒng)命令 ├── lib/ # 庫文件 ├── share/ # 架構(gòu)無關(guān)數(shù)據(jù) │ ├── man/ # 手冊頁 │ └── doc/ # 文檔 ├── local/ # 本地安裝軟件 └── src/ # 內(nèi)核源碼
實(shí)際場景理解
場景1:系統(tǒng)啟動過程
1. BIOS/UEFI → /boot/grub/ → /boot/vmlinuz* (內(nèi)核) 2. 內(nèi)核加載 → 掛載根文件系統(tǒng) → 讀取 /etc/fstab 3. 啟動init/systemd → 讀取 /etc/systemd/ 或 /etc/init.d/ 4. 啟動服務(wù) → 日志寫入 /var/log/
場景2:用戶登錄
1. 輸入用戶名密碼 → /etc/passwd 驗(yàn)證 2. 登錄成功 → 進(jìn)入 /home/用戶名/ 3. 讀取個人配置 → ~/.bashrc, ~/.profile 4. 執(zhí)行命令 → 從 /bin/ 或 /usr/bin/ 查找
場景3:安裝軟件
# Debian/Ubuntu sudo apt install nginx # 文件安裝到: # 程序 → /usr/sbin/nginx # 配置 → /etc/nginx/ # 日志 → /var/log/nginx/ # 網(wǎng)頁 → /var/www/html/
重要注意事項
不要隨意刪除的目錄:
/bin,/sbin,/lib,/etc- 系統(tǒng)無法運(yùn)行/boot- 無法啟動/dev- 無法訪問硬件
定期清理的目錄:
/tmp- 臨時文件/var/tmp- 長期臨時文件/var/log- 日志文件(使用logrotate)
權(quán)限注意事項:
/root- 只有root可訪問/home/用戶- 用戶本人和root可訪問/tmp- 所有用戶可讀寫
現(xiàn)代Linux的變化
- /bin, /sbin, /lib 現(xiàn)在通常是到
/usr的符號鏈接 - /run - 取代了
/var/run,存儲運(yùn)行時數(shù)據(jù) - systemd - 改變了
/etc/init.d的啟動方式
記憶技巧
- 靜態(tài)的(很少變):
/bin,/sbin,/boot,/etc - 動態(tài)的(經(jīng)常變):
/home,/var,/tmp - 虛擬的(內(nèi)存中):
/proc,/sys,/dev - 用戶的:
/home,/usr,/opt
實(shí)用命令
# 查看目錄大小 du -sh /* | sort -h # 查看磁盤使用情況 df -h # 查找大文件 find / -type f -size +100M 2>/dev/null # 查看目錄結(jié)構(gòu) tree -L 2 / # 顯示兩級目錄
理解Linux目錄結(jié)構(gòu)是系統(tǒng)管理的基礎(chǔ),每個目錄都有其特定用途,遵循文件系統(tǒng)層次標(biāo)準(zhǔn)(FHS),這保證了不同Linux發(fā)行版之間的一致性。
以上就是一文詳解Linux根文件系統(tǒng)各文件夾作用的詳細(xì)內(nèi)容,更多關(guān)于Linux根文件各文件夾作用的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
關(guān)于Linux vi命令使用詳解(vim編輯器)
這篇文章主要介紹了關(guān)于Linux vi命令使用詳解(vim編輯器),文中詳細(xì)列舉了vi命令的用法,還不熟悉的朋友可以多看一下2023-03-03
如何利用多核CPU來加速你的Linux命令(GNU Parallel)
這篇文章主要介紹了如何利用多核CPU來加速你的Linux命令(GNU Parallel),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-01-01
Ubuntu環(huán)境下安裝、配置和使用Git的全流程
Git 是當(dāng)今最流行的分布式版本控制系統(tǒng),在 Ubuntu 系統(tǒng)中無論是個人開發(fā)還是團(tuán)隊協(xié)作都離不開它,本文將系統(tǒng)地介紹在 Ubuntu 環(huán)境下安裝、配置和使用 Git 的方法,涵蓋從基礎(chǔ)操作到遠(yuǎn)程協(xié)作的全流程,需要的朋友可以參考下2026-05-05
Ubuntu18.04安裝vsftpd的實(shí)現(xiàn)代碼
這篇文章主要介紹了Ubuntu18.04安裝vsftpd的實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
Linux 解決Deepin無法在root用戶啟動Google Chrome瀏覽器的問題
這篇文章主要介紹了Linux 解決Deepin無法在root用戶啟動Google Chrome瀏覽器的問題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-07-07

