linux入門必知

咱們這裏假設,咱們就是設計者,若是咱們設計一個文件系統,咱們會如何去作呢?mysql

咱們須要一個起點, 這個起點就叫根目錄,用「/」來表示,而後咱們須要啓動Linux,那麼咱們就會把全部核心的啓動文件(包括Linux核心自己)都放到一個「/boot」目錄下。linux

當系統啓動後,咱們須要執行一些基本命令在操做系統,這些命令都會放到「/bin」目錄下。而後這些命令可能會用到一些庫,這些庫就被放到「/lib」下面,而這些庫可能會會用到一些設備驅動文件,sql

那麼這些驅動文件就會放到「/dev」目錄下。apache

/:根目錄
/boot:系統啓動和內核
/bin :系統基本命令 (bin是binary的縮寫)
/lib : 系統庫(不能直接運行的代碼)(lib是libary的縮寫)
/dev : 設備驅動 (dev是device的縮寫)
到目前爲止只用5個目錄,很簡單吧。網絡

什麼是」/usr」 ,」/etc」和「/var「操作系統

當用戶啓動系統之後,要作一些更加複雜的工做,這時候就會涉及到一個叫「/usr」,這個狀況稍微有些複雜,是一個難點。不過也很容易解釋清楚。設計

早期的unix系統都有不少塊硬盤,當時硬盤的容量都很小, 因此每每一個硬盤只放一個目錄,好比「/boot」能夠放在一個單獨的」boot」盤上,上面提到的5個目錄,是系統運行必不可少的。unix

而當系統啓動之後,咱們須要其餘一些用於具體工做的程序時,咱們就會加載一個「/usr」目錄,上面放重要的運行程序。it

容易引發疑惑的是」usr」這個名字, 在歷史上,原來這個確實是user的縮寫,不過如今和user沒有任何關係了, 你能夠把它當作是」universal software resource」的縮寫。io

這個「/usr」有點相似Windows裏面的Program Files。

所以 /bin 和 /usr/bin的區別,就是 /bin裏面的程序更加核心

這時候,不少人會有疑問, 咱們記住哪些命令在/bin 仍是在/usr/bin呢?

放心,因爲全部的bin目錄都會登記到系統變量PATH裏面, 所以不管你在任何當前目錄中,只要輸入命令文件的名稱,系統都會幫你找到這個命令並運行。

要點:

一、/usr上面通常都是隻讀文件,數據文件和配置文件不放在上面(放到哪裏,後面會講)

2,沒有「/usr」,linux系統也能正常運行

二、/usr能夠被多臺電腦共享(這裏體現Linux系統的網絡性)

因爲/usr只放只讀文件,那麼配置文件和數據文件放哪裏呢?這裏就出現了2個新的目錄「/etc」和「/var」

這裏容易初學者迷惑的就是這個2個目錄的名字。

在歷史上 「etc「是 「etcetera」,中文意爲「其餘」, 如今這個和「其餘」沒有任何關係, 就是專門存放配置文件的地方,能夠理解爲「editable text configuration」的縮寫

好比 /etc/mysql就是放mysql的配置文件 /ect/apache2/就是apache2的配置文件

在歷史上「var」 是 「variable」,中文意爲「變更」,如今主要用來存放log,lock等文件。

例如 /var/mysql就是用來存放mysql的log

當咱們運行程序後,會產生不少本身的成果,這些成果放哪裏呢? 這裏就出現了一個「/home」目錄,不過你不能直接放到「/home」目錄下, 由於Linux是個多用戶操做系統, 因此係統會有一個以用戶的名字命名的目錄。

例如:用戶是xiaoming ,那麼目錄就是/home/xiaoming ,這個目錄也能夠用「~「來表示。

相關文章
相關標籤/搜索