Linux中各個目錄作用

来源:https://www.cnblogs.com/DDgougou/archive/2018/03/01/8489096.html
-Advertisement-
Play Games

linux各個目錄介紹,文件夾介紹,linux安裝軟體放在哪兒 ...


對於linux新手來說,最感到迷惑的問題之一就是文件都存在哪裡呢?特別是對於那些從windows轉過來的新手來說,linux的目錄結構看起來有些奇怪哦。比如沒有C盤,沒有分盤符,一大堆不知道用途的文件夾。所以,在這裡講一下linux下的主要目錄以及它們都是用來乾什麼的(網上資料很多,我做了個整合)。

 

1、總說

LINUX有四種基本文件系統類型:普通文件、目錄文件、連接文件和特殊文件,可用file命令來識別。

 1)普通文件:如文本文件、C語言元代碼、SHELL腳本、二進位的可執行文件等,可用cat、less、more、vi、emacs來察看內容,用mv來改名。

 2)目錄文件:包括文件名、子目錄名及其指針。它是LINUX儲存文件名的唯一地方,可用ls列出目錄文件。

 3)連接文件:是指向同一索引節點的那些目錄條目。用ls來查看是,連接文件的標誌用l開頭,而文件面後以"->"指向所連接的文件。

 4)特殊文件:LINUX的一些設備如磁碟、終端、印表機等都在文件系統中表示出來,則一類文件就是特殊文件,常放在/dev目錄內。例如,軟碟機A稱為/dev/fd0。LINUX無C:的概念,而是用/dev/had來自第一硬碟。

 

2、詳說

1) /

這就是根目錄。對你的電腦來說,有且只有一個根目錄。所有的東西,我是說所有的東西都是從這裡開始。舉個例子:當你在終端里輸入“/home”,你其實是在告訴電腦,先從/(根目錄)開始,再進入到home目錄。

2) /bin

linux系統所需要的那些命令位於此目錄,比如 ls、cp、mkdir等命令;功能和/usr/bin類似,這個目錄中的文件都是可執行的、普通用戶都可以使用的命令。這個目錄已經包含在你的“path”系統變數裡面了。什麼意思呢?就是當你在終端里輸入ls,系統就會去/bin目錄下麵查找是不是有ls這個程式。作為基礎系統所需要的最基礎的命令就是放在這裡(/usr/bin和/usr/sbin 類似與“/”根目錄下對應的目錄(/bin和/sbin),但不用於基本的啟動(譬如,在緊急維護中)。大多數命令在這個目錄下。 )。

3) /boot

Linux的內核及引導系統程式所需要的文件目錄,比如 vmlinuz initrd.img 文件都位於這個目錄中。在一般情況下,GRUB或LILO系統引導管理器也位於這個目錄。

4) /dev

 這裡主要存放與設備(包括外設)有關的文件(unix和linux系統均把設備當成文件)。想連線印表機嗎?系統就是從這個目錄開始工作的。另外還有一些包括磁碟驅動、USB驅動等都放在這個目錄。

 5)/etc

這裡主要存放了系統配置方面的文件。舉個例子:你安裝了samba這個套件,當你想要修改samba配置文件的時候,你會發現它們(配置文件)就在/etc/samba目錄下。

 6) /home

這裡主要存放你的個人數據。具體每個用戶的設置文件,用戶的桌面文件夾,還有用戶的數據都放在這裡。每個用戶都有自己的用戶目錄,位置為:/home/用戶名。當然,root用戶除外。

 7) /lib

存放許多被 /bin 和 /sbin 中的程式使用的庫文件。

 8)/lost+found

在ext2或ext3文件系統中,當系統意外崩潰或機器意外關機,而產生一些文件碎片放在這裡。當系統啟動的過程中fsck工具會檢查這裡,並修複已經損壞的文件系統。 有時系統發生問題,有很多的文件被移到這個目錄中,可能會用手工的方式來修複,或移到文件到原來的位置上。

 9) /media

有些linux的發行版使用這個目錄來掛載那些usb介面的移動硬碟(包括U盤)、CD/DVD驅動器等等。

 10)/mnt

這個目錄一般是用於存放掛載儲存設備的掛載目錄的,比如有cdrom 等目錄。可以參看/etc/fstab的定義。有時我們可以把讓系統開機自動掛載文件系統,把掛載點放在這裡也是可以的。主要看/etc/fstab中怎 麽定義了;比如光碟機可以掛載到/mnt/cdrom 。

 11)/opt

這裡主要存放那些可選的程式。該目錄主要被第三方開發者用來簡易地安裝和卸裝他們的軟體包。安裝到/opt目錄下的程式,它所有的數據、庫文件等等都是放在同個目錄下麵。你想嘗試最新的firefox測試版嗎?那就裝到/opt目錄下吧,這樣,當你嘗試完,想刪掉firefox的時候,你就可 以直接刪除它,而不影響系統其他任何設置。

舉個例子:剛纔裝的測試版firefox,就可以裝到/opt/firefox_beta目錄下,/opt/firefox_beta目錄下麵就包含了運 行firefox所需要的所有文件、庫、數據等等。要刪除firefox的時候,你只需刪除/opt/firefox_beta目錄即可,非常簡單。

 在Linux中,/opt目錄是存放某些大型軟體或者某些特殊軟體的目錄,比如谷歌瀏覽器 (Google Chrome)預設就是安裝在/opt中。但是我們一般不會把opt單獨分在一個區,因為/opt中大多數時候是空的,即使安裝了軟體也不會太多,而且有 些軟體的容量還比較大,這樣就會占用/的容量,我們可以在其它你願意的地方建立一個目錄來將/opt“轉移”到別處,比如我的的/usr是單獨分在一個 區,容量有50G,這麼大的空間不要浪費了不是?而且/usr本來就是安裝軟體的地方,所以我可以/usr下建立一個叫opt的文件夾,然後右鍵點擊這個 /usr下的opt,選擇“創建鏈接”,得到一個名為“到 opt 的鏈接”文件,然後把這個文件剪切到/下,將原來的/opt刪除,再將“到 opt 的鏈接”改名為opt就可以了,以後我們安裝在/opt的軟體實際上是安裝到了/usr/opt下(實際上是一個符號鏈接)。

12) /proc

操作系統運行時,進程信息及內核信息(比如cpu、硬碟分區、記憶體信息等)存放在這裡。/proc目錄偽裝的文件系統proc的掛載目錄,proc並不是真正的文件系統,它的定義可以參見 /etc/fstab 。 

13)/root

這是系統管理員(root user)的目錄。對於系統來說,系統管理員就好比是上帝,它能對系統做任何事情,甚至包括刪除你的文件。因此,請小心使用root帳號。

14)/sbin

大多是涉及系統管理的命令的存放,是超級許可權用戶root的可執行命令存放地,普通用戶無許可權執行這個目錄下的命令,這個目錄和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目錄是相似的;我們記住就行了,凡是目錄sbin中包含的都是root許可權才能執行的。

15)/tmp

這是臨時目錄。給予所有系統用戶讀寫權。對於某些程式來說,有些文件被用了一次兩次之後,就不會再被用到,像這樣的文件就放在這裡。有些linux系統會定期自動對這個目錄進行清理,因此,千萬不要把重要的數據放在這裡。

16)/usr

這個是系統存放程式的目錄,比如命令、幫助文件等。你可以把不適合放在/bin或/etc目錄下的程式安裝到這裡,這個目錄下有很多的文件和目錄。當我們安裝一個Linux發行版官方提供的軟體包時,大多安裝在這裡。 如果有涉及伺服器配置文件的,會把配置文件安裝在/etc目錄中。普通用戶可執行文件目錄/usr/bin 或/usr/local/bin 或/usr/X11R6/bin ,超級許可權用戶root的可執行命令存放目錄,比如 /usr/sbin 或/usr/X11R6/sbin 或/usr/local/sbin 等;還有程式的頭文件存放目錄/usr/include。

16.1) /usr/bin

目錄用於存放程式。

16.2) /usr/lib

用於存放那些不能直接運行的,但卻是許多程式運行所必需的一些函數庫文件。

16.3) /usr/local

這裡主要存放那些手動安裝的軟體,即不是通過“新立得”或apt-get安裝的軟體。它和/usr目錄具有相類似的目錄結構。讓軟體包管理器來管理/usr目錄,而把自定義的腳本(scripts)放到/usr/local目錄下麵,我想這應該是個不錯的主意。這個目錄一般是用來存放用戶自編譯安裝軟體的存放目錄;一般是通過源碼包安裝的軟體,如果沒有特別指定安裝目錄的話,一般是安裝在這個目錄中。

16.4) /usr/share

系統共用的東西存放地,存放一些共用的數據,比如 /usr/share/fonts 是字體目錄,/usr/share/doc和/usr/share/man幫助文件。 

17)/var

這個目錄的內容是經常變動的,看名字就知道,我們可以理解為vary的縮寫,/var下有/var/log 這是用來存放系統日誌的目錄。/var/www目錄是定義Apache伺服器站點存放目錄;/var/lib 用來存放一些庫文件,比如MySQL的,以及MySQL資料庫的的存放地;/var/spool 用來存放印表機、郵件、代理伺服器等假離線目錄;

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 當你在頁面上用 form post 內容時,可能會遇到以下異常: The required antiforgery cookie "????????" is not present. 咱們來重現一下錯誤。新建一個 ASP.NET Core 項目,模板選【空】就行了,這是老周最喜歡的項目模板,空 == ...
  • 使用反射改進後的策略模式 public abstract class CashSpuer { public abstract double acceptCash(double money); } public class CashNormal : CashSpuer { public overrid ...
  • Digital Control of High-Frequency Switched-Mode Power Converters ...
  • tar 命令可以為linux的文件和目錄創建檔案。利用 tar,可以為某一特定文件創建檔案(備份文件),也可以在檔案中改變文件,或者向檔案中加入新的文件。tar 最初被用來在磁帶上創建檔案,現在,用戶可以在任何設備上創建檔案。利用 tar 命令,可以把一大堆的文件和目錄全部打包成一個文件,這對於備份 ...
  • 原因: ubuntu存在一個bug:在/var/run/目錄下缺少一個文件夾sshd 解決方法: 在命令行輸入: sudo mkdir /var/run/sshd sudo /usr/sbin/sshd netstat -nlt 出現以下日誌問題就解決了: Active Internet conne ...
  • 實例1:直接遠程連接某台主機: 命令:sshpass -p xxx ssh [email protected] 實例2:遠程連接指定ssh的埠: 命令:sshpass -p 123456 ssh -p 1000 [email protected] (當遠程主機不是預設的22埠時候) 實例3: ...
  • MySQL是一個關係型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。MySQL 是最流行的關係型資料庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關係資料庫管理 ...
  • 歡迎來到windows編程的世界,先給我們的windows打個招呼吧: #include <Windows.h> #include <iostream> using namespace std; int main() { int iSelect=MessageBox(NULL,TEXT("你好,wi ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...