Linux常用指令 硬鏈結 軟鏈結

2021-10-11 01:56:03 字數 3762 閱讀 6658

sync # 將資料由記憶體同步到硬碟中。

shutdown # 關機指令,你可以man shutdown 來看一下幫助文件。例如你可以執行如下命令關機:

shutdown –h 10 # 計算機在10分鐘後關機

shutdown –h now # 立馬關機

shutdown –h 20:25 # 系統會在今天20:25關機

shutdown –h +10 # 十分鐘後關機

shutdown –r now # 系統立馬重啟

shutdown –r +10 # 系統十分鐘後重啟

reboot # 就是重啟,等同於 shutdown –r now

halt # 關閉系統,等同於shutdown –h now 和 poweroff

在linux中第乙個字元代表這個檔案是目錄、檔案或鏈結檔案等等:

當為[ d ]則是目錄

當為[ - ]則是檔案;

若是[ l ]則表示為鏈結文件 ( link file );

若是[ b ]則表示為裝置檔案裡面的可供儲存的介面裝置 ( 可隨機訪問裝置 );

若是[ c ]則表示為裝置檔案裡面的串列埠裝置,例如鍵盤、滑鼠 ( 一次性讀取裝置 )。

接下來的字元中,以三個為一組,且均為『rwx』 的三個引數的組合。

其中,[ r ]代表可讀(read)、[ w ]代表可寫(write)、[ x ]代表可執行(execute)。

要注意的是,這三個許可權的位置不會改變,如果沒有許可權,就會出現減號[ - ]而已。

每個檔案的屬性由左邊第一部分的10個字元來確定(如下圖):

第0位確定檔案型別,第1-3位確定屬主(該檔案的所有者)擁有該檔案的許可權。第4-6位確定屬組(所有者的同組使用者)擁有該檔案的許可權,第7-9位確定其他使用者擁有該檔案的許可權。

其中:第1、4、7位表示讀許可權,如果用"r"字元表示,則有讀許可權,如果用"-"字元表示,則沒有讀許可權;

第2、5、8位表示寫許可權,如果用"w"字元表示,則有寫許可權,如果用"-"字元表示沒有寫許可權;

第3、6、9位表示可執行許可權,如果用"x"字元表示,則有執行許可權,如果用"-"字元表示,則沒有執行許可權。

對於檔案來說,它都有乙個特定的所有者,也就是對該檔案具有所有權的使用者。

同時,在linux系統中,使用者是按組分類的,乙個使用者屬於乙個或多個組。

檔案所有者以外的使用者又可以分為檔案所有者的同組使用者和其他使用者。

因此,linux系統按檔案所有者、檔案所有者同組使用者和其他使用者來規定了不同的檔案訪問許可權。

修改檔案屬性

linux檔案屬性有兩種設定方法,一種是數字,一種是符號。r:4 w:2 x:1

例如:給某個檔案設所有人可讀可寫可執行:chmod 777 filename

linux 鏈結分兩種,一種被稱為硬鏈結(hard link),另一種被稱為符號鏈結(symbolic link)。

硬連線

硬連線指通過索引節點來進行連線。在 linux 的檔案系統中,儲存在磁碟分割槽中的檔案不管是什麼型別都給它分配乙個編號,稱為索引節點號(inode index)。在 linux 中,多個檔名指向同一索引節點是存在的。比如:a 是 b 的硬鏈結(a 和 b 都是檔名),則 a 的目錄項中的 inode 節點號與 b 的目錄項中的 inode 節點號相同,即乙個 inode 節點對應兩個不同的檔名,兩個檔名指向同乙個檔案,a 和 b 對檔案系統來說是完全平等的。刪除其中任何乙個都不會影響另外乙個的訪問。

硬連線的作用是允許乙個檔案擁有多個有效路徑名,這樣使用者就可以建立硬連線到重要檔案,以防止「誤刪」的功能。其原因如上所述,因為對應該目錄的索引節點有乙個以上的連線。只刪除乙個連線並不影響索引節點本身和其它的連線,只有當最後乙個連線被刪除後,檔案的資料塊及目錄的連線才會被釋放。也就是說,檔案真正刪除的條件是與之相關的所有硬連線檔案均被刪除。

軟連線

另外一種連線稱之為符號連線(symbolic link),也叫軟連線。軟鏈結檔案有類似於 windows 的快捷方式。它實際上是乙個特殊的檔案。在符號連線中,檔案實際上是乙個文字檔案,其中包含的有另一檔案的位置資訊。比如:a 是 b 的軟鏈結(a 和 b 都是檔名),a 的目錄項中的 inode 節點號與 b 的目錄項中的 inode 節點號不相同,a 和 b 指向的是兩個不同的 inode,繼而指向兩塊不同的資料塊。但是 a 的資料塊中存放的只是 b 的路徑名(可以根據這個找到 b 的目錄項)。a 和 b 之間是「主從」關係,如果 b 被刪除了,a 仍然存在(因為兩個是不同的檔案),但指向的是乙個無效的鏈結。

[root@st/]

# cd /home

[root@st home]

# touch f1 # 建立乙個測試檔案f1

[root@st home]

# ls

f1[root@st home]

# ln f1 f2 # 建立f1的乙個硬連線檔案f2

[root@st home]

# ln -s f1 f3 # 建立f1的乙個符號連線檔案f3

[root@st home]

# ls -li # -i引數顯示檔案的inode節點資訊

397247

-rw-r--r-- 2 root root 0 mar 13 00:50 f1

397247

-rw-r--r-- 2 root root 0 mar 13 00:50 f2

397248 lrwxrwxrwx 1 root root 2 mar 13

00:50 f3 -

> f1

從上面的結果中可以看出,硬連線檔案 f2 與原檔案 f1 的 inode 節點相同,均為 397247,然而符號連線檔案的 inode 節點不同。

# echo 字串輸出 >> f1 輸出到 f1檔案

[root@st home]

# echo "i am f1 file" >>f1

[root@st home]

# cat f1

i am f1 file

[root@st home]

# cat f2

i am f1 file

[root@st home]

# cat f3

i am f1 file

[root@st home]

# rm -f f1

[root@st home]

# cat f2

i am f1 file

[root@st home]

# cat f3

cat: f3: no such file

or directory

通過上面的測試可以看出:當刪除原始檔案 f1 後,硬連線 f2 不受影響,但是符號連線 f1 檔案無效;

可以得到以下全部結論:

linux硬鏈結 軟鏈結

1.linux鏈結概念 linux鏈結分兩種,一種被稱為硬鏈結 hard link 另一種被稱為符號鏈結 symbolic link 預設情況下,ln命令產生硬鏈結。硬連線 硬連線指通過索引節點來進行連線。在linux的檔案系統中,儲存在磁碟分割槽中的檔案不管是什麼型別都給它分配乙個編號,稱為索引節...

linux硬鏈結軟鏈結

1.linux鏈結概念 linux鏈結分兩種,一種被稱為硬鏈結 hard link 另一種被稱為符號鏈結 symbolic link 預設情況下,ln命令產生硬鏈結。硬連線 硬連線指通過索引節點來進行連線。在linux的檔案系統中,儲存在磁碟分割槽中的檔案不管是什麼型別都給它分配乙個編號,稱為索引節...

軟鏈結 硬鏈結

硬鏈結與軟鏈結的聯絡與區別 我們知道檔案都有檔名與資料,這在 linux 上被分成兩個部分 元資料 metadata 是檔案的附加屬性,如檔案大小 建立時間 所有者等資訊。使用者資料 user data 即檔案資料塊 data block 資料塊是記錄檔案真實內容的地方 元資料則在 linux 中,...