① 五分鍾讓你明白linux的軟鏈接和硬鏈接的用法
什麼是軟鏈接和硬鏈接,很多人對這個概念比較模糊,這里幫助你明白他們之間的區別和用法。
為解決文件的共享使用,Linux 系統引入了兩種鏈接:硬鏈接 (hard link) 與軟鏈接(又稱符號鏈接,即 soft link 或 symbolic link)。
在 Linux 中,元數據中的 inode 號(inode 號即索引節點號)才是文件的唯一標識而非文件名,文件內容要通過inode 號來尋找,就像交通指示牌一樣,指示著數據找尋的方向。
軟鏈接可以理解成快捷方式,和原文件的inode號不一樣。它和windows下的快捷方式的作用是一樣的,軟鏈接數據塊中記錄的亦是相對路徑指向。
硬鏈接和原文件對應一個inode,就是對應一個文件,可以理解成一個文件有幾個別名.
下面這張圖表明了他們之間的區別了。
這二張圖詳細的給出這二個文件的異同處。
1,軟鏈接可以理解成快捷方式,也清楚知道原文件在哪兒。它和windows下的快捷方式的作用是一樣的,和windows一樣,刪除源文件,快捷方式也用不了。
2,硬鏈接可以說做了一個備份,但並沒有增加空間,因為文件就一個,這種可以防止源文件刪除後不能使用的問題,但也有局限性,不能對目錄和跨文件系統使用。
相信通過上面的說明,你已經明白了二者之間的區別和用途了。
② Linux軟鏈接和硬鏈接的區別之ln命令詳解
1. 先來了解一下Linux數據是如何保存和查詢的
對操作系統來說,數據分為兩種:1. 用戶數據 (user data) 2.元數據 (metadata)。用戶數據就是保存和記錄文件的內容。比如一個1M的ppt文件,500K的txt文件。這都屬於用戶數據。這個文件總有屬性吧,比如大小、修改時間、訪問時間、創建時間、存儲的位置(文件所在的inode)、文件創建者等等信息。這些屬性信息或者理解為匯總信息,我們稱它為元數據。一句話,用戶數據是文件的真實內容,而元數據則是匯總信息。
在 Linux 中,元數據中的 inode 號(inode 號即索引節點號)才是文件的唯一標識而非文件名。文件名僅是為了方便人們的記憶和使用,系統或程序通過 inode 號尋找正確的文件數據塊。
2. 查看文件對應的inode號
134474678 latest.tar.gz
linux查看文件對應的inode號
可以看出latest.tar.gz這個文件, inode 號是134474678,Linux查找讀寫該文件時,以為個inode號碼為標識,而不是文件名。文件名類似於網站域名,僅僅是方便人類記憶。
也就是說, inode134474678有一個硬鏈接,它就是latest.tar.gz。
3. 根據inode號查找對應的文件
那麼,問題來了,系統上有沒有第二個文件,它的inode號碼也是13447467。
使用find查找一下:
查找結果如下:
/root/latest.tar.gz
/root/latest2.tar.gz
linux根據inode號查找對應的文件
硬碟上真的有第二個文件它的inode號碼也是134474678,像這種情況,我們認為inode134474678有兩個硬鏈接。當然,這是本文作者提前准備好的。
為解決文件的共享使用,Linux 系統引入了兩種鏈接:硬鏈接 (hard link) 與軟鏈接(又稱符號鏈接,即 soft link 或 symbolic link)。鏈接為 Linux 系統解決了文件的共享使用,還帶來了隱藏文件路徑、增加許可權安全及節省存儲等好處。
4. 確認硬鏈接的數量
查看一下文件latest.tar.gz
輸出結果如下:
-rwxr-xr-x. 2 root root 8743850 Oct 11 15:00 latest.tar.gz
請留意輸出的結果中的數字2,表示該文件存在2個硬鏈接。
正常情況下,一個inode只有一個鏈接,如下例
輸出結果:
-rw-r--r--. 1 root root 9 Nov 21 11:39 abc.txt
請留意輸出的結果中的數字1,表示該文件只存在1個硬鏈接,默認情況下,文件都是只有一個硬鏈接的。
5. 查看軟鏈接
再來看一個文件
lrwxrwxrwx. 1 root root 15 Sep 26 15:57 /dev/stdout -> /proc/self/fd/1
linux查看軟鏈接
我們發現,/dev/stdout實際上指向另一個文件/proc/self/fd/1,這就是軟鏈接。類似於Windows系統上的快捷方式。
6. 軟鏈接與硬鏈接的區別
6.1 軟鏈接特點
6.2 硬鏈接特點
ln鏈接符原理如下:
Linux ln鏈接符原理圖
7. 創建文件的鏈接
Linux ln命令是一個非常重要而且常用命令,它用於為文件或者目錄創建鏈接。
7.1 創建軟鏈接
創建一個文件,用於演示軟鏈接。
創建軟鏈接示例:
檢查結果:
輸出文件屬性
lrwxrwxrwx. 1 root root 8 Nov 26 17:48 soft123.txt -> soft.txt
linux創建軟鏈接
可以看出這個文件指向當前目錄soft.txt,配置成功。7.2 創建硬鏈接
創建一個文件,用於演示硬鏈接。
創建硬鏈接,沒有使用選項
檢查結果:
輸出文件屬性:
-rw-r--r--. 2 root root 0 Nov 26 17:47 hard123.txt
linux創建硬鏈接
留意以上輸出數字2,表明該文件有2個副本。
8. 總結
ln命令可以創建文件的副本,也可以創建軟鏈接。
③ 怎麼在linux命令操作在/usr/local下,新建一個文件夾,命名為soft
mkdir -p /usr/local/softx0dx0a或者者磨:x0dx0acd /usr/local/x0dx0amkdir softx0dx0ax0dx0a如果不是root,請加上sudo,前提返胡是你在sudoers列首世斗表裡,如果不在,老老實實切root用戶吧
④ Linux系統裡面怎麼安裝軟體
linux系統怎麼安裝軟體呢,我們以ubuntu為例
打開系統,可以看到桌面,找到軟體中心,打開軟體中心
在這里你可以安裝一些軟體,但是軟體比較少
你還可以直接從網站上下好deb的安裝包,然後雙擊進行安裝
雙擊後,會在應用市場打開它,然後點擊安裝就可以了
或者你在安裝包在的文件夾,按住shift,點擊滑鼠右鍵,會彈出如下界面,點擊在終端中打開
輸入下面的命令,-i後面是你的文件名,如果許可權不夠,就要在前面輸入sudo,然後回車後再輸入密碼
最後還有一種安裝方法,輸入如下命令,softname是你的軟體名,必須准確才可以安裝,建議你安裝前上網查一下野嫌該輸入什麼,然後回車直接安裝襲顫就可以了
安裝軟體還需要考慮到依賴以及軟體源和許可權的問題,如果你在安裝什麼軟體的時候出問題,請及時給頌禪手我留言,我會幫你解答的
⑤ 將文件上傳到linux系統中soft目錄下,沒有soft目錄怎麼辦
遇到出現上面的問題,可能有如下兩種可以:
1、命令不正確。
2、路徑正確。
我們要察旁做的就是根據可能的思路去解決。如下是我的解決辦法敗春橡。
cd後要添森敗加空隔,然後添加路徑。