NTFS符號連結

NTFS符號連結(Symbolic Link),又稱符號連結,是NTFS檔案系統中指向檔案系統中的另一個對象的一類對象。被指向的對象叫做“目標”。它們可以像普通檔案一樣操作,但所有對符號連結的操作都實際作用於目標對象。符號連結對用戶而言是透明的,符號連結看上去和普通的檔案和資料夾沒有區別,操作方法也一模一樣。NTFS符號連結的設計目的是為了和POSIX標準的作業系統兼容、並用來增進與舊版作業系統的兼容性,它首次出現於Windows Vista。

基本介紹

  • 中文名:NTFS符號連結
  • 外文名:Symbolic Link
簡介,命令及其參數,其他功能,限制,內置符號連結的示例,

簡介

NTFS符號連結(Symbolic Link),又稱符號連結,是NTFS檔案系統中指向檔案系統中的另一個對象的一類對象。被指向的對象叫做“目標”。它們可以像普通檔案一樣操作,但所有對符號連結的操作都實際作用於目標對象。符號連結對用戶而言是透明的,符號連結看上去和普通的檔案和資料夾沒有區別,操作方法也一模一樣。NTFS符號連結的設計目的是為了和POSIX標準的作業系統兼容、並用來增進與舊版作業系統的兼容性,它首次出現於Windows Vista。
Windows 2000開始就有的NTFS連線點,只能用於目錄,且只能用於本地檔案系統。而符號連結既可以指向本地檔案,也可以指向遠程SMB網路路徑。NTFS連線點只支持本地驅動器的絕對路徑,但NTFS符號連結允許使用相對路徑。還有,NTFS符號連結允許跨檔案系統使用,但是對於跨主機的符號連結,還需要遠程機器也支持這一功能才行。
硬連結只能用於檔案,不能用於目錄。硬連結相當於一個實體檔案有多個彼此平等的名字。刪除一個檔案名稱字後,還可以用其它名字訪問該檔案。硬連結只能用於同一個磁碟分區內的檔案。硬連結不能用於空檔案,而符號連結可以用於空檔案或空目錄。

命令及其參數

在NT6核心的作業系統,例如Windows Vista或Windows 7中,符號連結可以由命令mklink創建,mklink是cmd.exe的內部命令,語法如下:
mklink [[/D] | [/H] | [/J]] link target
  • /D–創建指向目錄的符號連結,如果不指定此參數,默認為創建檔案符號連結。
  • /H–創建硬連結(Hardlink),或稱永久連結。
  • /J–創建NTFS連線點(Junction point)。
  • link–指定符號連結的名字
  • target–指定符號連結指向的對象的路徑(相對或絕對皆可)。
和普通檔案一樣,刪除符號連結也可以使用del命令,具體語法如下:
del filename
  • filename–要被刪除的符號連結的名字
和普通目錄(資料夾)一樣,刪除目錄符號連結也可以使用rd命令,具體語法如下:
rd directoryname
  • directoryname–要被刪除的符號連結的名字
需要提升為管理員許可權才能創建符號連結。
複製連結的檔案或目錄時,使用copy /L或xcopy /B,可以複製這些符號連結,而不是複製檔案或目錄實體本身。

其他功能

符號連結可以指向不存在的對象,在創建符號連結時,系統並不會檢查對象是否存在。

限制

Windows作業系統啟動時不支持符號連結。所以不應該對下列資料夾重定向:
  • 目錄包含了hiberfil.sys (如果被配置在根目錄以外)
  • \Windows
  • \Windows\system32
  • \Windows\system32\Config
Windows Installer不完整支持符號連結。對\Windows\Installer重定向會導致多數基於.msi的Windows installers失敗報告error 2755 或 error 1632.
可以重定向下列目錄:
  • \Documents and Settings
  • \ProgramData
  • \Program Files
  • \Program Files (x86)
  • \Users
但是對\Users與\ProgramData重定向不被推薦,因為會打破Windows Update與Windows Store Apps.

內置符號連結的示例

Windows Vista中預先創建了一些符號連結(Junction point),以增進與舊版作業系統(Windows XP)間的兼容性,部分示例如下:
  • C:\Document and Settings → C:\Users(連線點)
  • C:\Users\All Users → C:\ProgramData(目錄符號連結)

相關詞條

熱門詞條

聯絡我們