1. 程式人生 > >馬哥教育第二周博客

馬哥教育第二周博客

usermod 創建用戶 def 展示 omd adb ffffff 不同的 log

一軟鏈接與硬鏈接的區別與聯系
我們知道文件都有文件名與數據,這在linux上被分為兩部分:用戶數據與元數據。用戶數據,即文件數據塊,數據塊是記錄文件真實內容的地方;而元數據則是文件的附加屬性,如文件大小,創建時間,所有者等信息。在linux中,元數據的inode號才是文件的唯一標識並非文件名。文件名僅是為了方便人們記憶和使用,系統或程序通過inode號尋找正確的文件數據塊。下圖展示了程序通過文件名獲取文件內容
技術分享圖片

在linux系統中查看inode號可使用命令ls -I
為解決文件的共享使用,linux系統引入了兩種鏈接:硬鏈接和軟鏈接。鏈接為linux系統解決了文件的共享使用,還帶來了隱藏文件路徑,增加權限安全及節省存儲等好處。若一個inode號對應多個文件名,則稱這些文件為硬鏈接。換言之,硬鏈接就是同一個文件上使用了多個別名(如下圖 hard link就是file的一個別名,他們有共同的inode硬鏈接可由命令link或ln創建。如下是對文件oldfile創建硬鏈接)

技術分享圖片
由於硬鏈接是有著相同inode號僅文件名不同的文件,因此硬鏈接存在以下幾點特性:
1文件有著相同的inode及data block
2只能對已存在的文件進行創建
3不能交叉文件系統進行硬鏈接的創建
4不能對目錄進行創建,只能對文件進行創建
5刪除一個硬鏈接文件並不影響其他有相同inode號的文件

軟鏈接與硬鏈接不同,若文件用戶數據塊中存放的內容是另一個文件路徑名的指向則該文件就是軟鏈接,只是數據塊內容有點特殊。軟鏈接有著自己的inode號以及用戶數據塊。因此軟鏈接的創建與使用沒有類似硬鏈接的諸多限制
1軟鏈接有自己的文件屬性及權限等
2可對不存在的文件或目錄創建軟鏈接
3軟鏈接可交叉文件系統
4軟鏈接可對文件或目錄創建

5創建軟鏈接時,鏈接計數不會增加
6刪除軟鏈接並不影響被指向的文件,若被指向的原文件被刪除,則相關軟鏈接被稱為死鏈接
軟鏈接的訪問技術分享圖片

當然軟鏈接的用戶數據也可以是另一個軟鏈接的路徑,其解析過程是遞歸的,需要註意;軟鏈接創建時原文件的路徑指向使用決定路徑比較好。使用相對路徑創建的軟鏈接被移動後該軟鏈接文件將成為一個死鏈接,因為鏈接數據塊中記錄的亦是相對路徑指向

二常用命令
ln 創建硬鏈接
ln -s 創建軟連接
重定向
2>重定向錯誤信息
》追加文件

| 強行覆蓋文件
tr 轉換刪除字符 處理文本
tree 顯示目錄樹
df 顯示磁盤信息
file 識別文件類型
du 查看文件大小
chomd 變更文件或目錄的權限

useradd 創建用戶
usermod – U 解鎖賬號
mv 移動命令 重新命名
rename 批量改文件
echo file{1,2,3} 結果為 file1 file2 file3
雙擊tab鍵補全命令
Useradd 創建新的系統用戶
groupadd 創建新的工作組

馬哥教育第二周博客