欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Linux中的硬鏈接和軟鏈接-創(chuàng)新互聯(lián)

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)Linux中的硬鏈接和軟鏈接介紹,以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

成都創(chuàng)新互聯(lián)公司于2013年創(chuàng)立,先為常州等服務(wù)建站,常州等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為常州企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

硬鏈接

首先我們來看硬鏈接,我們來用php中變量的引用來對比吧。

$a = 100;
$b = &$a;

可以將$a看做是一個文件,而$b看出是$a文件的硬鏈接。現(xiàn)在的作用是,不管是$a或$b作了修改,都會影響到對方。

那現(xiàn)在將其中一個文件刪除,另一個文件還存在嗎?

unset($b);

即使刪除了$b文件,$a文件還是存在的。

下面,我們來看看是不是和上面所說一樣。創(chuàng)建硬鏈接的命令如下:

ln 源文件 鏈接文件

目前系統(tǒng)有一個1.php文件,現(xiàn)在我們來給他創(chuàng)建個硬鏈接。

# ln 1.php 2.php

# cat 1.php
<?php
$a = 100;
$b = &$a;
$b = 1000;
echo $a;

現(xiàn)在我們來修改下2.php文件,看看1.php文件是否也會被修改。

# echo -e '\n?>' >> 2.php

# cat 1.php
<?php
$a = 100;
$b = &$a;
$b = 1000;
echo $a;

?>

可以看到,修改了2.php,1.php文件也會被修改。現(xiàn)在我們來刪除2.php文件,看看1.php文件是否還存在。

# rm -f 2.php
# ll 1.php
-rw-r--r-- 1 root root 52 Jun 20 08:05 1.php

可以看到,即使刪除了2.php,1.php文件依舊是存在的。

上面介紹了硬鏈接的作用,下面來說下硬鏈接在使用時候的限制:

  • 不能鏈接目錄

  • 不能跨文件系統(tǒng)來做鏈接

由于以上兩點的限制導(dǎo)致日常使用硬鏈接的機(jī)會很少,下面介紹另外一種鏈接——軟鏈接,它沒有上述的限制,所以平時用的很多哦!。

軟鏈接

一般會將軟鏈接和windows系統(tǒng)中的桌面快捷方式來對比,通過創(chuàng)建軟鏈接可以很方便的執(zhí)行一個命令,而不用去找文件的目錄位置。另外,刪除了軟鏈接文件,源文件依舊存在。但是,如果刪除了源文件,那么鏈接文件就沒有作用了。

軟鏈接分為文件及目錄兩種,下面分別介紹下這兩種鏈接的作用。

給文件做軟鏈接

你有沒有想過,為什么你安裝好了mysql后,不用使用絕對路徑,就可以使用mysql來執(zhí)行。這里面就是使用到了軟鏈接。

# which mysql
/usr/bin/mysql
# ll /usr/bin/mysql
lrwxrwxrwx 1 root root 26 Nov  4  2019 /usr/bin/mysql -> /usr/local/mysql/bin/mysql

可以看出,該命令的實際地址是/usr/local/mysql/bin/mysql,但是給該文件做了軟鏈接到了/usr/bin/目錄下,所以就不用使用絕對路徑即可調(diào)用該命令了。

下面我們自己做一個文件軟鏈接,看是不是這樣的。

首先創(chuàng)建一個文件soft.sh

vim soft

#!/bin/bash
echo 'study softlink'

# chmod u+x soft

然后給該文件創(chuàng)建軟鏈接,看看直接執(zhí)行該命令是不是可以了

# ln -s /root/soft  /usr/bin/
# soft
study softlink

給目錄做軟鏈接

首先,我們需要注意的是,做軟鏈接時,目標(biāo)文件或目錄必須不存在。

下面,我們引出一個場景,該場景非常的常見:

網(wǎng)站文件存放在/www/wwwroot目錄下,隨著系統(tǒng)運(yùn)行時間越來越差,該目錄越來越大,由于該目錄是和根目錄在同一個分區(qū),根目錄快要寫滿了。而另外一個分區(qū)目錄/data還剩99G剩余空間。這時候,不想重新分區(qū),那么需要怎樣做才能使得根目錄所在分區(qū)取得解放。

下面,我們使用目錄軟鏈接來解決該問題。首先,在/data目錄下建立wwwroot目錄,然后將/www/wwwroot目錄下所有文件移動到/data/wwwfile下,再刪除/www/wwwroot目錄。最后給/data/wwwfile目錄軟鏈接到/www/wwwroot

mkdir /data/wwwfile
mv /www/wwwroot/* /data/wwwfile
rm -rf /www/wwwroot
ln -s /data/wwwfile /www/wwwroot

現(xiàn)在,我們來測試下問題是否真的解決了。目前根分區(qū)使用率為19%,而/data分區(qū)使用率為9%。

/dev/vda1        40G  7.4G   33G  19% /
/dev/vdb1       500G   43G  458G   9% /data

我們在/www/wwwroot目錄下創(chuàng)建一個2G的大文件,然后看看哪個分區(qū)的容量變大了。我們想要的答案是/data分區(qū)使用率變高,而根分區(qū)不變。

dd if=/dev/zero of=/www/wwwroot/bigfile bs=1G count=2
# 然后看看各分區(qū)使用容量的變化
/dev/vda1        40G  7.4G   33G  19% /
/dev/vdb1       500G   45G  456G   9% /data

可以看到,根分區(qū)可用容量還是33G,但/data分區(qū)已經(jīng)從458G變?yōu)榱?56G,所以說我們解決了問題。

上述就是小編為大家分享的Linux中的硬鏈接和軟鏈接了,看完之后是否對硬鏈接和軟鏈接有進(jìn)一步的了解呢。如果想了解更多相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊。

當(dāng)前標(biāo)題:Linux中的硬鏈接和軟鏈接-創(chuàng)新互聯(lián)
路徑分享:http://chinadenli.net/article32/hjpsc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序網(wǎng)站建設(shè)服務(wù)器托管微信公眾號域名注冊標(biāo)簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站