- 想像一下,你盯著 Linux 中一大堆晦澀難懂的目錄名稱。你想知道應該把特定類型的文件放在哪裡。於是把文件隨意放進了 /usr/share,希望這樣做是正確的。
- 幾天后,你發現應該把它放在 /var/local。
- 我們都有過類似的經驗。 Linux 的目錄結構可能非常令人困惑,甚至有時毫無道理可言。這些名稱究竟代表什麼?哪裡才是放置檔案的「正確」位置?
- 準備好解密 Linux 目錄,因為我們將踏上一段穿越時光的旅程,讓你的未來更加無壓力。在本文中,我們將揭示這些名稱的含義,以及常見類型文件的存放位置。
- /bin
- #這是系統所需的可執行二進位檔案的主要儲存位置(因此被稱為“bin”)。這些基本二進位檔案在啟動過程中由系統需要,以確保成功完成。在這裡,你會找到像 ls 和 top 這樣的基本指令。
- 在啟動過程中,如果 /usr/bin 不可用,/bin 有時會作為一個符號連結提供在頂層。
- /boot
- 這個目錄包含了實際啟動作業系統所需的所有關鍵檔案。其中包括核心檔案、開機載入程式檔案(例如 GRUB)以及適用於現代 UEFI 系統的 EFI 檔案。
- 對於 Linux 系統來說,這個目錄是最重要的目錄之一,因為如果這裡出了問題,你的系統可能無法啟動,甚至不知道從何啟動。
- /dev
- /dev是「device」的縮寫,它是Linux 用來儲存對系統上大多數已連接設備(包括實體設備和虛擬設備)的引用的地方。在這裡,你可以找到硬碟、USB 週邊、虛擬終端甚至空設備的引用,你可以將東西導向這個設備,以便讓它們消失。
- 如果你從命令列存取任何類型的設備,即使它不是實體硬件,很可能它就存在於這裡。
- /etc
- 很有可能你以前曾在 /etc 目錄中研究過。這是 Linux 保存所有核心設定檔的地方,不僅包括自己的程序,還包括你安裝的第三方程式的設定檔。
- 如果你需要修改程式的運作方式、核心網路設定或 crontab,它們都存在於這個目錄中。
- /home
- 這是一個更具描述性的頂層目錄之一。這正是使用者的主目錄所在的位置。可以將其視為每個使用者在作業系統中擁有的獨立空間。通常情況下,他們擁有自己對應主目錄中的所有檔案和子目錄。
- 如果在共享機器上查看此目錄,你可能會發現許多以各個特定使用者命名的子目錄。在大多數系統上登入後,你可以使用路徑中的 ~ 字元來引用自己的主目錄。這對應的路徑是 /home/
。 - 這是存放僅與你相關的個人文件的最佳位置。圖片、音樂檔案、電子表格或下一部偉大的小說,都應該存放在這裡。你不應該在這裡儲存共享的程式配置或系統級資料。
- /lib, /lib32, /lib64, …
- #這些目錄包含了共享的 C 函式庫和核心模組。這些模組和函式庫是之前我們提到的 /bin 目錄中的可執行二進位檔案所需的基礎。換句話說,為了實際啟動作業系統並使用任何預設的二進位文件,我們需要這些目錄中的庫文件。
- 注意:如果存在多個不同架構的庫文件,你會看到其他的 lib
目錄存在。 - /lost found
- 這個目錄很簡單。在這裡,你會找到一些檔案被損壞,但已經嘗試過恢復它們。這通常是由於意外斷電或有時是硬體故障導致的。
- /media
- 這也非常直覺。這是一個掛載點,用於掛載可移動介質。在歷史上,它用於 CD、軟碟甚至 Zip 磁碟機。現在,如果你掛載任何虛擬 ISO 或 CD 鏡像,它們可以出現在這裡,以及 USB 隨身碟和其他可移動快閃媒體。
- /mnt 這是一個更通用的掛載點,你可以在這裡掛載可移動媒體或整個檔案系統。現在,這通常用於存放外部磁碟、NFS 和其他遠端檔案儲存。
- 這個目錄是空的,你可以自行決定在這裡掛載什麼和如何掛載。
- /opt
- 這是「option」的縮寫,最初用於存放任何附加軟體包。這些軟體包在系統最初發行時並不包含在內,並且需要額外的費用。
- 如今,這是少數幾個可以安裝附加軟體套件的位置之一(無論是否需要額外費用)。在某些情況下,發行版可能根本不使用 /opt,但這是你會找到第三方軟體包資料和它們的靜態設定檔的一個位置。
- /proc
- 這是一個獨特的 Linux 目錄。你不會在這裡儲存任何東西,實際上作業系統也不會在這裡儲存任何東西。這是 Linux 核心的資訊中心。這個目錄中的所有「檔案」並不是普通檔案。它們包含有關進程、記憶體和其他子系統的度量資料。這些特殊檔案就像是窺視核心工作狀況的視窗。
- 透過簡單地讀取這個目錄中的文件,你可以取得一些其他二進位檔案所獲得的相同資料。
- /root
- 這是另一個簡單、直覺的目錄。這是 root 使用者的家目錄。如果你以 root 使用者身分登入系統上,你會發現你的家目錄現在在 /root 而不是預期的 /home/root。這是為了安全考慮,以防萬一 /home 被掛載在一個無法存取或更糟糕的破損的遠端分區上。
- /run
- 這個目錄處理更多的啟動和執行時間資訊。通常你會在這個位置找到進程 ID 或 PID 檔。這些檔案描述了進程運行的位置,以便其他程式可以在稍後找到它並控製或引用它。
- 此外,還可以在這裡放置其他臨時文件,例如鎖定文件和套接字資訊。這個目錄旨在保存運行時信息,而不是持久化數據。
- /sbin
- 和 /bin 類似,/sbin 目錄也包含了系統所需的可執行二進位。不同的是,這個目錄中的二進位具有特殊的用途。它們都專門用於在系統上執行管理員功能。這意味著它們具有強大的能力,可以對作業系統進行重大修改或維護,因此它們通常存在於此處。
- 你不會在這裡找到像 echo 或 cat 這樣的二進位。這個目錄保留給像 fdisk 或 usermod 這樣的工具。
- /srv
- 這是另一個非常通用的目錄。這個目錄用於存放系統負責「提供」的文件。例如,如果該主機是一個 Web 伺服器,你可能會將所有的 HTML 和圖像資源放在這裡。
- /sys
- 根據你所使用的發行版及其版本的不同,你的系統上可能會有或沒有 /sys 目錄。這個目錄與 /proc 目錄類似,它包含設備和內核訊息,但以更結構化的格式呈現。
- /tmp
- 又一個簡單的目錄。這是一個用於暫存檔案的目錄。你可以在這裡儲存幾乎任何你(或程式)喜歡的東西,但不能指望它會一直存在。尤其是在重啟之間。
- 如果你需要暫存一些不重要的資料或檢查某個檔案的輸出格式,將其放在這裡是一個選擇。額外的好處是,如果你忘記了它,它可能會自動消失。
- /usr
- 這個目錄可能需要寫一篇專門的文章來介紹。根據Linux 基金會的FHS 規範,它被描述為:
- 「共享的、只讀的數據。」
- 這實質上意味著它應該能夠在主機之間輕鬆傳輸,並且具有相同的未經修改的結構和層次結構。通常情況下,該目錄中不包含任何獨特的主機資料。背後的理念是,/usr 的整體可以以唯讀模式掛載到另一個系統上而不會出現問題。
- 然而,在實踐中,這個目錄確實被用來儲存任意的資訊。在某些情況下,你會發現文件存放在 /usr/share 或 /usr/local 中。你也會發現程式編譯或自訂腳本被放置在 /usr/local/bin 中。
- 一般來說,建議將不屬於前面任何類別的配置或特殊資料儲存在我們下一個、也是最後一個目錄中。
- /var
- 這是「variable」的縮寫,而這裡正是保存變數資料的地方。
- 以下是一些傳統上保存在這裡的內容:
- Lock files
- Debian apt and other running program caches
- E-mail data
- Logs
#主要的目的是將系統在運行時所使用和修改的任何動態資料保存在/var目錄中。如果你需要記錄日誌或保存動態的 .conf 文件,那麼你來到了正確的地方。
此外,還有 /var/local 目錄,在我的經驗中,它經常成為雜項設定檔和其他不太適合其他類別的資料的綜合儲存目錄。
總結
Linux檔案系統的層次結構非常複雜且有著豐富的演進歷史。一旦你熟悉了這些簡短標題背後的含義,它們開始變得非常直觀。花時間在每個目錄中探索並研究標準本身將使你不僅對放置檔案的位置更加熟悉,也對Linux在基本層面上的工作方式更加了解。
以上是破解 Linux 檔案安放之謎:哪裡才是絕佳檔案歸宿?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

NGINX適合處理高並發請求,Apache適合需要復雜配置和功能擴展的場景。 1.NGINX採用事件驅動、非阻塞架構,適用於高並發環境。 2.Apache採用進程或線程模型,提供豐富的模塊生態系統,適合複雜配置需求。

NGINX可用於提升網站性能、安全性和可擴展性。 1)作為反向代理和負載均衡器,NGINX可優化後端服務和分擔流量。 2)通過事件驅動和異步架構,NGINX高效處理高並發連接。 3)配置文件允許靈活定義規則,如靜態文件服務和負載均衡。 4)優化建議包括啟用Gzip壓縮、使用緩存和調整worker進程。

NGINXUnit支持多種編程語言,通過模塊化設計實現。 1.加載語言模塊:根據配置文件加載相應模塊。 2.應用啟動:調用語言運行時執行應用代碼。 3.請求處理:將請求轉發給應用實例。 4.響應返回:將處理後的響應返回給客戶端。

NGINX和Apache各有優劣,適合不同場景。 1.NGINX適合高並發和低資源消耗場景。 2.Apache適合需要復雜配置和豐富模塊的場景。通過比較它們的核心特性、性能差異和最佳實踐,可以幫助你選擇最適合需求的服務器軟件。

確認 Nginx 是否啟動的方法:1. 使用命令行:systemctl status nginx(Linux/Unix)、netstat -ano | findstr 80(Windows);2. 檢查端口 80 是否開放;3. 查看系統日誌中 Nginx 啟動消息;4. 使用第三方工具,如 Nagios、Zabbix、Icinga。

要關閉 Nginx 服務,請按以下步驟操作:確定安裝類型:Red Hat/CentOS(systemctl status nginx)或 Debian/Ubuntu(service nginx status)停止服務:Red Hat/CentOS(systemctl stop nginx)或 Debian/Ubuntu(service nginx stop)禁用自動啟動(可選):Red Hat/CentOS(systemctl disable nginx)或 Debian/Ubuntu(syst

如何在 Windows 中配置 Nginx?安裝 Nginx 並創建虛擬主機配置。修改主配置文件並包含虛擬主機配置。啟動或重新加載 Nginx。測試配置並查看網站。選擇性啟用 SSL 並配置 SSL 證書。選擇性設置防火牆允許 80 和 443 端口流量。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

記事本++7.3.1
好用且免費的程式碼編輯器