<del id="d4fwx"><form id="d4fwx"></form></del>
      <del id="d4fwx"><form id="d4fwx"></form></del><del id="d4fwx"><form id="d4fwx"></form></del>

            <code id="d4fwx"><abbr id="d4fwx"></abbr></code>
          • link命令linux link命令代碼意思

            linux 系統(tǒng)中軟連接的創(chuàng)建,修改,刪除

            【軟連接】

            讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:申請域名、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設(shè)、永平網(wǎng)站維護(hù)、網(wǎng)站推廣。

            軟連接是linux中一個常用命令,它的功能是為某一個文件在另外一個位置建立一個同不的鏈接。相當(dāng)于window系統(tǒng)中的快捷方式

            具體用法是:ln -s 源文件 目標(biāo)文件 或者 ln -s 源目錄 目標(biāo)目錄

            當(dāng)我們需要在不同的目錄,用到相同的文件時,我們不需要在每一個需要的目錄下都放一個必須相同的文件,我們只要在其它的 目錄下用ln命令鏈接(link)就可以,不必重復(fù)的占用磁盤空間。

            例如:ln -s /home/test1 /data/test1

            這樣我們就對/home/test1目錄創(chuàng)建了軟連接 ,在/data/test1中打開看到的就是/home/test1目錄下的文件

            使用方式

            創(chuàng)建軟鏈接

            ln -s [源文件或目錄] [目標(biāo)文件或目錄]

            例:當(dāng)前路徑創(chuàng)建test 引向/var/www/test 文件夾

            ln –s /var/www/test ./test (此處建議一定要寫絕對路徑,最好寫到根目錄,而且當(dāng)前目錄中藥刪除test)

            例:創(chuàng)建/var/test 引向/var/www/test 文件夾

            ln –s /var/www/test /var/test

            修改軟鏈接

            這將會修改原有的鏈接地址為新的地址

            ln –snf [新的源文件或目錄] [目標(biāo)文件或目錄]

            例如:

            創(chuàng)建一個軟鏈接

            ln –s /var/www/test /var/test

            修改指向的新路徑

            ln –snf /var/www/test1 /var/test

            刪除軟鏈接

            和刪除普通的文件是一樣的,刪除都是使用rm來進(jìn)行操作,

            例:刪除test

            rm –rf test

            正確的刪除方式(刪除軟鏈接,但不刪除實(shí)際數(shù)據(jù))

            rm -rf ./test

            錯誤的刪除方式

            rm -rf ./test/ (這樣就會把原來test下,源文件的內(nèi)容也刪除)

            建議使用rm test 待顯示刪除確認(rèn)提示的時候

            頁面出現(xiàn) rm: remove symbolic link test yes等字樣 說明你正在操作的是軟連接,而不是目錄。

            一定要注意啊。亂用rm 還刪除目錄下的全部文件,還循環(huán),后果很嚴(yán)重,要再三確認(rèn)

            ln常用參數(shù):

            -f : 鏈結(jié)時先將與 dist 同檔名的檔案刪除

            -d : 允許系統(tǒng)管理者硬鏈結(jié)自己的目錄

            -i : 在刪除與 dist 同檔名的檔案時先進(jìn)行詢問

            -n : 在進(jìn)行軟連結(jié)時,將 dist 視為一般的檔案

            -s : 進(jìn)行軟鏈結(jié)(symbolic link)

            -v : 在連結(jié)之前顯示其檔名

            -b : 將在鏈結(jié)時會被覆寫或刪除的檔案進(jìn)行備份

            -S SUFFIX : 將備份的檔案都加上 SUFFIX 的字尾

            -V METHOD : 指定備份的方式

            --help : 顯示輔助說明

            --version : 顯示版本

            【硬連接】

            硬連接指通過索引節(jié)點(diǎn)來進(jìn)行連接。在Linux的文件系統(tǒng)中,保存在磁盤分區(qū)中的文件不管是什么類型都給它分配一個編號,稱為索引節(jié)點(diǎn)號(Inode Index)。在Linux中,多個文件名指向同一索引節(jié)點(diǎn)是存在的。一般這種連接就是硬連接。硬連接的作用是允許一個文件擁有多個有效路徑名,這樣用戶就可以建立硬連接到重要文件,以防止“誤刪”的功能。其原因如上所述,因?yàn)閷?yīng)該目錄的索引節(jié)點(diǎn)有一個以上的連接。只刪除一個連接并不影響索引節(jié)點(diǎn)本身和其它的連接,只有當(dāng)最后一個連接被刪除后,文件的數(shù)據(jù)塊及目錄的連接才會被釋放。也就是說,文件真正刪除的條件是與之相關(guān)的所有硬連接文件均被刪除。

            link的linux中l(wèi)ink函數(shù)

            頭文件

            #include unistd.h

            函數(shù)原型

            int link (const char * oldpath,const char * newpath);

            說明

            link()以參數(shù)newpath指定的名稱來建立一個新的連接(硬連接)到參數(shù)oldpath所指定的已存在文件。如果參數(shù)newpath指定的名稱為一已存在的文件則不會建立連接。函數(shù)在執(zhí)行成功時則返回0,失敗時則返回-1,錯誤原因存于errno。 link()所建立的硬連接無法跨越不同文件系統(tǒng),如果需要請改用symlink()。

            errno錯誤代碼:

            EXDEV 參數(shù)oldpath與newpath不是建立在同一文件系統(tǒng)。

            EPERM 參數(shù)oldpath與newpath所指的文件系統(tǒng)不支持硬連接

            EROFS 文件存在于只讀文件系統(tǒng)內(nèi)

            EFAULT 參數(shù)oldpath或newpath 指針超出可存取內(nèi)存空間。

            ENAMETOLLONG 參數(shù)oldpath或newpath太長

            ENOMEM 核心內(nèi)存不足

            EEXIST 參數(shù)newpath所指的文件名已存在。

            EMLINK 參數(shù)oldpath所指的文件已達(dá)最大連接數(shù)目。

            ELOOP 參數(shù)pathname有過多符號連接問題

            ENOSPC 文件系統(tǒng)的剩余空間不足。

            EIO I/O 存取錯誤。

            范例

            /* 建立/etc/passwd 的硬連接為pass */ #includeunistd.hmain(){link(/etc/passwd,pass);}

            Linux軟鏈接和硬鏈接的區(qū)別之ln命令詳解

            1. 先來了解一下Linux數(shù)據(jù)是如何保存和查詢的

            對操作系統(tǒng)來說,數(shù)據(jù)分為兩種:1. 用戶數(shù)據(jù) (user data) 2.元數(shù)據(jù) (metadata)。用戶數(shù)據(jù)就是保存和記錄文件的內(nèi)容。比如一個1M的ppt文件,500K的txt文件。這都屬于用戶數(shù)據(jù)。這個文件總有屬性吧,比如大小、修改時間、訪問時間、創(chuàng)建時間、存儲的位置(文件所在的inode)、文件創(chuàng)建者等等信息。這些屬性信息或者理解為匯總信息,我們稱它為元數(shù)據(jù)。一句話,用戶數(shù)據(jù)是文件的真實(shí)內(nèi)容,而元數(shù)據(jù)則是匯總信息。

            在 Linux 中,元數(shù)據(jù)中的 inode 號(inode 號即索引節(jié)點(diǎn)號)才是文件的唯一標(biāo)識而非文件名。文件名僅是為了方便人們的記憶和使用,系統(tǒng)或程序通過 inode 號尋找正確的文件數(shù)據(jù)塊。

            2. 查看文件對應(yīng)的inode號

            134474678 latest.tar.gz

            linux查看文件對應(yīng)的inode號

            可以看出latest.tar.gz這個文件, inode 號是134474678,Linux查找讀寫該文件時,以為個inode號碼為標(biāo)識,而不是文件名。文件名類似于網(wǎng)站域名,僅僅是方便人類記憶。

            也就是說, inode134474678有一個硬鏈接,它就是latest.tar.gz。

            3. 根據(jù)inode號查找對應(yīng)的文件

            那么,問題來了,系統(tǒng)上有沒有第二個文件,它的inode號碼也是13447467。

            使用find查找一下:

            查找結(jié)果如下:

            /root/latest.tar.gz

            /root/latest2.tar.gz

            linux根據(jù)inode號查找對應(yīng)的文件

            硬盤上真的有第二個文件它的inode號碼也是134474678,像這種情況,我們認(rèn)為inode134474678有兩個硬鏈接。當(dāng)然,這是本文作者提前準(zhǔn)備好的。

            為解決文件的共享使用,Linux 系統(tǒng)引入了兩種鏈接:硬鏈接 (hard link) 與軟鏈接(又稱符號鏈接,即 soft link 或 symbolic link)。鏈接為 Linux 系統(tǒng)解決了文件的共享使用,還帶來了隱藏文件路徑、增加權(quán)限安全及節(jié)省存儲等好處。

            4. 確認(rèn)硬鏈接的數(shù)量

            查看一下文件latest.tar.gz

            輸出結(jié)果如下:

            -rwxr-xr-x. 2 root root 8743850 Oct 11 15:00 latest.tar.gz

            請留意輸出的結(jié)果中的數(shù)字2,表示該文件存在2個硬鏈接。

            正常情況下,一個inode只有一個鏈接,如下例

            輸出結(jié)果:

            -rw-r--r--. 1 root root 9 Nov 21 11:39 abc.txt

            請留意輸出的結(jié)果中的數(shù)字1,表示該文件只存在1個硬鏈接,默認(rèn)情況下,文件都是只有一個硬鏈接的。

            5. 查看軟鏈接

            再來看一個文件

            lrwxrwxrwx. 1 root root 15 Sep 26 15:57 /dev/stdout - /proc/self/fd/1

            linux查看軟鏈接

            我們發(fā)現(xiàn),/dev/stdout實(shí)際上指向另一個文件/proc/self/fd/1,這就是軟鏈接。類似于Windows系統(tǒng)上的快捷方式。

            6. 軟鏈接與硬鏈接的區(qū)別

            6.1 軟鏈接特點(diǎn)

            6.2 硬鏈接特點(diǎn)

            ln鏈接符原理如下:

            Linux ln鏈接符原理圖

            7. 創(chuàng)建文件的鏈接

            Linux ln命令是一個非常重要而且常用命令,它用于為文件或者目錄創(chuàng)建鏈接。

            7.1 創(chuàng)建軟鏈接

            創(chuàng)建一個文件,用于演示軟鏈接。

            創(chuàng)建軟鏈接示例:

            檢查結(jié)果:

            輸出文件屬性

            lrwxrwxrwx. 1 root root 8 Nov 26 17:48 soft123.txt - soft.txt

            linux創(chuàng)建軟鏈接

            可以看出這個文件指向當(dāng)前目錄soft.txt,配置成功。7.2 創(chuàng)建硬鏈接

            創(chuàng)建一個文件,用于演示硬鏈接。

            創(chuàng)建硬鏈接,沒有使用選項(xiàng)

            檢查結(jié)果:

            輸出文件屬性:

            -rw-r--r--. 2 root root 0 Nov 26 17:47 hard123.txt

            linux創(chuàng)建硬鏈接

            留意以上輸出數(shù)字2,表明該文件有2個副本。

            8. 總結(jié)

            ln命令可以創(chuàng)建文件的副本,也可以創(chuàng)建軟鏈接。

            linux創(chuàng)建連接命令ln?-s軟鏈接

            這是linux中一個非常重要命令,請大家一定要熟悉。它的功能是為某一個文件在另外一個位置建立一個同不的鏈接,這個命令最常用的參數(shù)是-s,具體用法是:ln

            -s

            源文件

            目標(biāo)文件。

            當(dāng)

            我們需要在不同的目錄,用到相同的文件時,我們不需要在每一個需要的目錄下都放一個必須相同的文件,我們只要在某個固定的目錄,放上該文件,然后在其它的

            目錄下用ln命令鏈接(link)它就可以,不必重復(fù)的占用磁盤空間。例如:ln

            -s

            /bin/less

            /usr/local/bin/less-s

            是代號(symbolic)的意思。

            里有兩點(diǎn)要注意:第一,ln命令會保持每一處鏈接文件的同步性,也就是說,不論你改動了哪一處,其它的文件都會發(fā)生相同的變化;第二,ln的鏈接又軟鏈接

            和硬鏈接兩種,軟鏈接就是ln

            -s

            **

            **,它只會在你選定的位置上生成一個文件的鏡像,不會占用磁盤空間,硬鏈接ln

            **

            **,沒有參數(shù)-s,

            它會在你選定的位置上生成一個和源文件大小相同的文件,無論是軟鏈接還是硬鏈接,文件都保持同步變化。

            如果你用ls察看一個目錄時,發(fā)現(xiàn)有的文件后面有一個@的符號,那就是一個用ln命令生成的文件,用ls

            -l命令去察看,就可以看到顯示的link的路徑了。摘自

            ComeOnTom的專欄

            本文名稱:link命令linux link命令代碼意思
            網(wǎng)頁URL:http://www.jbt999.com/article46/hgcchg.html

            成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、虛擬主機(jī)軟件開發(fā)、App開發(fā)、網(wǎng)站收錄、手機(jī)網(wǎng)站建設(shè)

            廣告

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

            商城網(wǎng)站建設(shè)

              <del id="d4fwx"><form id="d4fwx"></form></del>
              <del id="d4fwx"><form id="d4fwx"></form></del><del id="d4fwx"><form id="d4fwx"></form></del>

                    <code id="d4fwx"><abbr id="d4fwx"></abbr></code>
                  • 免费无码又爽又高潮的网站 | 操逼视频国产 | 变态另类TS人妖一区二区 | 亚洲曰韩第一页 | 午夜影院一区 |