1. 程式人生 > 其它 >1 Linux 目錄基礎介紹

1 Linux 目錄基礎介紹

使用者的概述

windows系統當中有⼀個管理員Administrator,Linux系統有⼀個超級⽤戶root

su(switch user)切換⽤戶

普通⽤戶切換到任何⽤戶都需要輸⼊密碼 root⽤戶切換到任何⽤戶都不需要輸⼊密碼 su - username su命令切換⽤戶如果不加"-",只是shell層⾯的切換,⽤戶的環境變數實際上是沒有變的 su -和su - root 是⼀樣的,沒有區別

目錄的結構

“/”表示根⽬錄,根⽬錄是Linux⽬錄結構中的最頂級的⽬錄,類似於windows的C:\ D:\

/boot⽬錄存放的是系統的啟動配置⽂件和核心⽂件
/dev⽬錄 存放的是Linux的裝置⽂件
/etc⽬錄 存放的是Linux的配置⽂件
/home⽬錄 存放的是Linux普通⽤戶的家⽬錄
/media⽬錄 掛載點⽬錄
/mnt⽬錄 掛載點⽬錄
/run⽬錄 掛載點⽬錄
/opt⽬錄 存放軟體⽂件的⽬錄
/proc⽬錄 存放的是程序⽂件
/srv⽬錄 存放⼀些資源⽂件
/sys⽬錄 存放⼀些資源⽂件(系統資源)
/tmp⽬錄 存放的是⼀些臨時⽂件(⾮常重要)
/usr⽬錄 Linux軟體預設安裝的⽬錄
/var⽬錄 存放log⽇志⽂件的⽬錄(⾮常重要)
/root 是root⽤戶的家⽬錄

絕對路徑和相對路徑

什麼是絕對路徑:以頂級⽬錄開頭的路徑就是絕對路徑,在Linux⾥⾯"/"就是頂級⽬錄,以"/"開頭的路徑就是絕對路徑

什麼是相對路徑:不以"/"開頭的路徑就是相對路徑

“/”目錄下的軟連線

/bin->/usr/bin存放的是普通⽤戶能執⾏的命令
/sbin->/usr/sbin 存放的是超級⽤戶能執⾏的命令
/lib->/usr/lib 存放的是32位的函式⽂件
/lib64->/usr/lib64 存放的是64位的函式⽂件

軟連線和硬連結

建立方法

軟連線:
ln -s oldfile slink 硬連結:
ln oldfile hlink

軟連線和硬連結的區別

  原理上,硬連結和原始檔的inode節點號相同,兩者互為硬連結。軟連線和原始檔的inode節點號不同,進而指向的block也不同,軟連線block中存放了原始檔的路徑名。

  實際上,硬連結和原始檔是同一份檔案,而軟連線是獨立的檔案,類似於快捷方式,儲存著原始檔的位置資訊便於指向。

  使用限制上,不能對目錄建立硬連結,不能對不同檔案系統建立硬連結,不能對不存在的檔案建立硬連結;可以對目錄建立軟連線,可以跨檔案系統建立軟連線,可以對不存在的檔案建立軟連線。

硬連結的特點

  1. 具有相同inode節點號的多個檔案互為硬連結檔案;

  2. 刪除硬連結檔案或者刪除原始檔任意之一,檔案實體並未被刪除;

  3. 只有刪除了原始檔和所有對應的硬連結檔案,檔案實體才會被刪除;

  4. 硬連結檔案是檔案的另一個入口;

  5. 可以通過給檔案設定硬連結檔案來防止重要檔案被誤刪;

  6. 可以通過ls -i看到Index;

  7. 硬連結檔案是普通檔案,可以用rm刪除;

  8. 對於靜態檔案(沒有程序正在呼叫),當硬連結數為0時檔案就被刪除。注意:如果有程序正在呼叫,則無法刪除或者即使檔名被刪除但空間不會釋放。

軟連結的特點:

  1. 軟連結類似windows系統的快捷方式;

  2. 軟連結裡面存放的是原始檔的路徑,指向原始檔;

  3. 刪除原始檔,軟連結依然存在,但無法訪問原始檔內容;

  4. 軟連結失效時一般是白字紅底閃爍;

  5. 建立軟連結命令 ln -s 原始檔 軟連結檔案;

  6. 軟連結和原始檔是不同的檔案,檔案型別也不同,inode號也不同;

  7. 軟連結的檔案型別是“l”,可以用rm刪除。

目錄的切換

cd(change directory)

cd .. 表示切換到上級⽬錄

cd ~ 表示切換到當前shell⽤戶的家⽬錄,相當於直接cd命令

cd - 表示切換到上次所在的⽬錄(重複該命令,會在兩個⽬錄下反覆的切換)

目錄的檢視

ls [-parameter] [filename]

引數:

    • -a 顯示所有檔案及目錄 (ls內定將檔名或目錄名稱開頭為"."的視為隱藏檔,不會列出)

    • -l 除檔名稱外,亦將檔案型態、許可權、擁有者、檔案大小等資訊詳細列出

    • -r 將檔案以相反次序顯示(原定依英文字母次序)

    • -t 將檔案依建立時間之先後次序列出

    • -A 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄)

    • -F 在列出的檔名稱後加一符號;例如可執行檔則加 "*", 目錄則加 "/"

    • -R 若目錄下有檔案,則以下之檔案亦皆依序列出