在 AI 時代,你是否也覺得硬碟空間越來越不夠用?從繪圖模型到大型語言模型,這些動輒數十、數百 GB 的檔案,正以前所未有的速度吞噬你的儲存空間。每當系統碟的紅條警示頻頻亮起,你是不是也厭倦將檔案搬去其他硬碟來騰出空間又要取回?
不用再煩惱了!本文將介紹聰明的方法,讓你既能完整保留所有寶貴的 AI 模型,又能輕鬆釋放系統空間,徹底告別移來移去的困擾!
事前準備
要使用 mklink 指令,你的磁碟必須採用 NTFS 檔案系統,這是所有連結類型的必要條件。NTFS 是 Windows 2000 之後的預設格式,因此現代電腦都已符合此要求。如果你不確定,發現以下無法實作時,可以到磁碟分區檢查檔案系統格式。
內容主體
如何建立目錄連結,我們會使用到 CMD 的 mklink 指令,根據文件主要有三種連結方式,我們依序介紹。
mklink [/h 或 /j 或 /d] [全新連結地址] [資料來源地址]
硬連結 Hard Link
硬連結可為同個檔案建立多個存取點,技術上共用磁區配置表,實際上都指向相同的實體檔案資料,不過該技術限制使用於檔案。它不能跨越磁碟分割區,即使原始檔案被刪除,本質上只是配置表上少條名稱,直到數量清零之前,檔案仍實際存在且有效。而當我們對硬連結檔案進行修改時,所有變更會立即傳播到每個連結上。
麻煩的是,檔案的目錄大小和屬性資訊的變動只會顯示於進行變更的那個連結處,也沒有任何的標記提示。這些特性讓日常使用中容易造成混淆,可能會忘記最後一次的修改。因此使用硬連結時,建議保持良好的管理與紀錄習慣。即使如此,這種技術在需要跨專案,同樣使用某種核心時,就不必複製貼上而有兩倍大小囉!


目錄連接點 Junction (Soft Link)
接點是 Windows 特有且古老的目錄連結方式,可以跨越磁碟分割區。其核心運作方式是透過 NTFS 檔案系統的重新分析點 (reparse point) 功能,專門處理目錄的重新導向。運作範圍僅限於本機,無法用於連結網路上的共享資料夾。接點屬於單向指標,它嚴格要求使用絕對路徑來定義目標。若原始目錄的路徑有任何變動,所有指向它的接點都會立刻失效。不同於另外兩者,當應用程式呼叫接點時,這一切是完全透明的,它們不會察覺這是一個指標。
常見的應用場景是將佔用大量空間的檔案轉移到較大的儲存裝置上,同時確保應用程式能順利存取。舉例來說,筆者 512GB 的系統碟已不堪負荷,但託管軟體限制我的 Stable Diffusion 安裝於系統碟,這時便能將這些的模型移至 4TB 的外接硬碟上,透過接點有效釋放系統碟的空間。


符號連結 Symbolic Link
符號連結是最泛用的選擇,支援建立檔案與目錄的指標。可簡單看作進階版的檔案捷徑,它能幫忙建立一個分身,讓系統和應用程式呼叫使用。不同於接點,這種模式可以跨網路傳輸。無論是網路芳鄰,或者是 OneDrive 或 GDrive 資料。同樣屬於單向指標,若原始目錄的路徑有任何變動,所有指向它的接點都會立刻失效。
後話
這些工具的核心目的,都在於讓你更有效率地利用硬碟空間,同時保持檔案結構的彈性。這些連結技術各自有其獨特的優勢和限制,選擇合適的工具,你便能徹底告別因檔案重複或龐大而帶來的種種困擾。
參考資料
- 指令
- 連接種類與區隔
額外讀物
官方解說 – 磁碟檔案系統
https://learn.microsoft.com/en-us/troubleshoot/windows-client/backup-and-storage/fat-hpfs-and-ntfs-file-systems