自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何更新 Linux 的符號(hào)鏈接

系統(tǒng) Linux
UNIX 和 Linux 用戶發(fā)現(xiàn)鏈接有很多用途,特別是符號(hào)鏈接。我喜歡使用符號(hào)鏈接的一種方式是管理各種 IT 設(shè)備的配置備份。

[[434937]]

UNIX 和 Linux 用戶發(fā)現(xiàn)鏈接有很多用途,特別是符號(hào)鏈接。我喜歡使用符號(hào)鏈接的一種方式是管理各種 IT 設(shè)備的配置備份。

我有一個(gè)目錄結(jié)構(gòu),用來存放我的文檔、更新及網(wǎng)絡(luò)上其他和計(jì)算機(jī)和設(shè)備有關(guān)的文件。設(shè)備可以包括路由器、接入點(diǎn)、NAS 服務(wù)器和筆記本電腦,通常有不同的品牌和版本。配置備份本身可能在目錄樹的深處,例如 /home/alan/Documents/network/device/NetgearRL5000/config。

為了簡化備份過程,我在主目錄中有一個(gè)名為 Configuration 的目錄。我使用這個(gè)目錄的符號(hào)鏈接來指向特定的設(shè)備目錄:

  1. :~/Configuration/ $ ls -F1 
  2. Router@ 
  3. Accesspoint@ 
  4. NAS@ 

注意:ls 命令的 -F 選項(xiàng)在每個(gè)文件名上附加特殊字符以表示其類型。如上所示,@ 符號(hào)表示這些是鏈接。

創(chuàng)建一個(gè)鏈接

符號(hào)鏈接 Router 指向我的 Netgear RL5000 的 config 目錄。創(chuàng)建它的命令是 ln -s:

  1. $ ln -s /home/alan/Documents/network/device/NetgearRL5000/config Router 

然后,用 ls -l 看一下并確認(rèn):

  1. :~/Configuration/ $ ls -l 
  2. Router -> /home/alan/Documents/network/device/NetgearRL5000/config 
  3. NAS -> /home/alan/Documents/network/device/NFSBox/config 
  4. ... 

這樣做的好處是,當(dāng)對(duì)這個(gè)設(shè)備進(jìn)行維護(hù)時(shí),我只需進(jìn)入 ~/Configuration/Router。

如果我決定用一個(gè)新的型號(hào)替換這個(gè)路由器,使用符號(hào)鏈接的第二個(gè)好處就很明顯了。我可能會(huì)把舊的路由器改成一個(gè)接入點(diǎn)。因此,它的目錄并沒有被刪除。相反,我有一個(gè)新的目錄,對(duì)應(yīng)于新的路由器,也許是華碩 DF-3760。我創(chuàng)建這個(gè)目錄并確認(rèn)它的存在:

  1. $ mkdir -p ~/Documents/network/device/ASUSDF-3760/config 
  1. :~/Documents/network/device/ $ ls 
  2. NetgearRL5000 
  3. ASUSDF-3760 
  4. NFSBox 
  5. ... 

另一個(gè)例子是,如果你的辦公室里有幾個(gè)接入點(diǎn)。你可以使用符號(hào)鏈接在邏輯上代表每一個(gè),用一個(gè)通用的名字,如 ap1,ap2,等等,或者你可以使用描述性的詞語,如 ap_floor2,ap_floor3,等等。這樣,當(dāng)物理設(shè)備隨時(shí)間變化時(shí),你不必持續(xù)更新任何可能管理它們的進(jìn)程,因?yàn)樗鼈兪窃谔幚礞溄佣皇菍?shí)際的設(shè)備目錄。

更新一個(gè)鏈接

由于我的主路由器已經(jīng)改變,我想讓路由器的符號(hào)鏈接指向它的目錄。我可以使用 rm 和 ln 命令來刪除和創(chuàng)建一個(gè)新的符號(hào)鏈接,但是有一種方法可以只用 ln 命令和幾個(gè)選項(xiàng)就可以一步完成:

  1. ~/Configuration/ $ ln -vfns ~/Documents/network/device/ASUSDF-3760/config/ Router 
  2. 'Router' -> '/home/alan/Documents/network/device/ASUSDF-3760/config/' 
  3. :~/Configuration/ $ ls -l 
  4. Router -> /home/alan/Documents/network/device/ASUSDF-3760/config 
  5. NAS -> /home/alan/Documents/network/device/NFSBox/config 

根據(jù)手冊(cè)頁,這些選項(xiàng)如下:

  • -v、--verbose:打印每個(gè)鏈接文件的名稱
  • -f、--force:刪除目標(biāo)文件(有必要,因?yàn)橐呀?jīng)存在一個(gè)鏈接)
  • -n、--no-dereference:如果鏈接名是一個(gè)目錄的符號(hào)鏈接,就把它當(dāng)作一個(gè)正常的文件
  • -s、--symbolic:制作符號(hào)鏈接而不是硬鏈接

總結(jié)

鏈接是 UNIX 和 Linux 文件系統(tǒng)中最強(qiáng)大的功能之一。其他操作系統(tǒng)也曾試圖模仿這種能力,但由于他們的文件系統(tǒng)缺乏基本的鏈接設(shè)計(jì),這些系統(tǒng)從來沒有工作得那么好,也沒有那么可用。

上面的演示只是利用鏈接在生活生產(chǎn)環(huán)境中無縫瀏覽不斷變化的目錄結(jié)構(gòu)的眾多可能性中的一種。鏈接提供了一個(gè)永遠(yuǎn)不會(huì)長期靜態(tài)的組織所需的靈活性。

 

責(zé)任編輯:趙寧寧 來源: Linux中國
相關(guān)推薦

2023-02-06 17:49:35

Linux符號(hào)鏈接

2023-02-07 08:13:47

Linux符號(hào)鏈接

2023-02-13 11:26:03

符號(hào)鏈接Linux

2020-06-09 15:35:46

Linux符號(hào)鏈接

2019-09-24 19:00:41

Linuxrm命令unlink命令

2010-05-04 13:09:21

Unix操作系統(tǒng)

2014-08-28 10:18:36

LinuxShebang

2021-03-13 12:17:59

openSUSELinux

2017-01-15 15:27:51

Linux軟連接和硬鏈接

2019-11-08 12:07:04

FedoraLinux更新系統(tǒng)

2018-11-09 10:10:09

Linux硬鏈接軟鏈接

2019-11-01 11:06:02

Linux操作系統(tǒng)Windows

2018-11-09 10:30:05

Linux硬鏈接軟鏈接

2020-06-01 19:00:42

Linux軟鏈接硬鏈接

2022-07-10 21:20:11

C語言Linux

2023-09-12 09:13:24

Shell腳本Dockerfil

2010-10-25 09:58:23

Chrominum 9

2011-08-24 10:53:41

LinuxLua靜態(tài)

2014-08-01 17:12:14

Linux特殊符號(hào)

2023-03-05 16:36:14

Linux鏈接目標(biāo)文件
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)