Linux 20180413 軟鏈接硬鏈接
所謂軟鏈接就是存儲路徑。路徑越長,文件越大。軟鏈接可以節省空間,省去了拷貝。
如何做軟鏈接?
ln -s 源文件 軟鏈接文件
不僅僅是可以軟鏈接文件, 也可以軟鏈接目錄。
盡量使用據對路徑,下面的紅色說明不存在,原因就是使用了相對路徑。使用了絕對路徑之後就沒有問題了。
實際工作場景的例子:
df -h 查看磁盤分區
假設其中的一個磁盤的內存即將使用完畢,同時還有進程在不停的寫入數據,可能會導致磁盤滿導致問題。
解決辦法:
把寫的文件放到另外的有足夠空間的分區下面。但是前提是不能弄這個文件的路徑。
假設 boot下有一個文件bill.log已經很大了但是還在寫,怎麽操作?
1, 首先把/boot/bill.log拷貝到另一個目錄 cp /boot/bill.log /bill.log
2. 刪掉原來的log文件 rm /boot/bill.log
3. 做軟鏈接 ln -s /bill.log /boot/bill.log
就是說將軟鏈接替換了文件,文件放到其他位置,用軟鏈接繼續工作,但是內容都到了其他位置。
硬鏈接文件
inode ls -i 顯示inode號碼
這一列表示了多少個文件使用了相同的inode號
硬鏈接:
創建了一個文件,另一個文件和它的inode號一樣,這倆個相互為硬鏈接。
軟鏈接不能刪除,一旦刪除就會出現無法鏈接的情況。但是硬鏈接不受影響。因為互為硬鏈接而且互相都是實打實的存在,刪除一個後,同一個inode號的文件少了一個而已。或者這樣理解,inode才是真正存數據的地方,其他的指向inode都是皮。刪掉一個硬鏈接也只是少了個皮,指向該inode的文件少了一個而已。
硬鏈接再多也不會多站空間,因為inode本身占據空間。所以多少個硬鏈接都沒有影響存儲空間。
不能對目錄做硬鏈接。硬鏈接只能對文件做,但是不能跨分區。
Linux 20180413 軟鏈接硬鏈接