微軟從Windows 2000開始引入了NTFS文件系統,但此時用戶可以選擇將系統安裝在非NTFS格式的分區中。到了當前,Windows 7卻只能安裝在NTFS格式中了。這其中我們可以看到微軟對NTFS的器重,當然和當年相比其特性和功能有了很大的擴展和提升。不過,對於NTFS的諸如壓縮、加密、安全授權等功能大家比較熟悉,本文將以Windows 7系統為例,談談其下的NTFS高級特性和應用。Vista下的NTFS管理請參考文章《打通NTFS權限 文件共享各取所需》(http://winsystem.ctocio.com.cn/Windows2003/389/8211889.sHtml)
1、高效、節省的硬鏈接
通常情況下,我們需要將同一個文件顯示在不同的位置。例如,有時需要將一篇位於網絡共享中的文檔提供給所有的用戶使用,但某些應用程序可能必須要從另外一個特定的位置才能打開該文檔,以便進行正常的讀寫操作。此時,我們並不需要將文件移動到應用程序要求的目錄或給特定的用戶分配訪問受保護目錄的權限,只需借助Windows 7的NTFS特性通過“fsutilhardlink”命令 給該文檔創建硬鏈接,以便使其可以被用戶和應用程序單獨訪問。
(1).硬鏈接為管理員帶來的便利
很明顯,Windows 7中通過硬鏈接實現文檔的訪問方式無疑是非常高效的。一個命令可以輕松搞定,且省去了文件復制的麻煩。此外,還有一點也是令我們幸喜的。無論一個文件有多少個硬鏈接,相關的目錄項都將指向某個卷上現有的同一個文件,而這正式硬鏈接和文件副本的不同。我們知道文件的副本,文件的數據實際上是存在於多個位置下的。據此,使用硬鏈接無疑節省了我們的磁盤空間。
還有一點也是我們樂見的,通過使用硬鏈接,文件會顯示為存在多個位置,但實際上只存在於一個位置,因此如果使用其中的一個硬鏈接修改並保存了這個文件,而其他人通過不同的硬鏈接打開該文件,修改後的內容一樣可以顯示出來。此外,因為具有多個硬鏈接的文件實際上只有一個副本,因此硬鏈接並不會有多個安全描述,只有源文件具有安全描述。所以如果希望更改某個文件任何一個硬鏈接的訪問權限,只需對該硬鏈接指向的實際源文件物理副本進行更改,這樣該文件副本關聯的所有硬鏈接都會被用於新的安全設置。
除此之外,硬鏈接也提高了文件的安全性。比如,我們為一個文件創建了多個硬鏈接,那麼除非將所有的硬鏈接都刪除掉,否則該文件就無法從卷上刪除。這樣的話,如果有人無意刪除了一個有多個硬鏈接的文件,文件本身並不會被刪除,被刪除的只是受影響的硬鏈接,而其他硬鏈接和文本本身不受影響。
(2).創建硬鏈接
要創建硬鏈接,需要使用“fsutil hardlink”命令。其命令格式為“fsutil hardlink create newfilepath currentfilepath”。其中newfilepath是要為該文件創建的硬鏈接的路徑,而currentfilepath是要鏈接到的現有文件的名稱。例如,我們要為c:test目錄中的test.doc文件創建新的硬鏈接c:ctocioctocio.doc,需要執行命令“fsutil hardlink create c:ctocioctocio.doc c:testtest.doc”。命令執行完畢後,硬鏈接創建成功。此時,當我們雙擊 c:ctocioctocio.doc打開的則是c:testtest.doc文件。(圖1)
(3).硬鏈接的不足
筆者在使用硬鏈接的過程中也發現了其中的一些不變或者不足之處。其一是,硬鏈接只能在NTFS卷上創建,不能在一個卷上同時創建指向另一個卷的硬鏈接。也就是說,我們無法在C盤上創建指向D盤文件的硬鏈接。其二是,硬鏈接並不適合多個用戶需要並發修改同一個文件的環境,比如協同辦公。具體來說,假設用戶A使用一個硬鏈接打開了這個文件,並修改了該文件,但同時用戶B使用另外一個硬鏈接打開同一個文件,並進行修改,如果兩人嘗試同時保存修改內容就會出現問題。
2、記錄文件信息的數據流
不同於Vista,Windows 7只能安裝在NTFS分區中,這應該是出於對其安全可靠性的考慮。在NTFS卷上的每個文件都有其相關的數據流,這些數據流記錄了文件的詳細信息,相當於該文件的“名片”。其實所謂的數據流,就是包含在文件內容中的一系列字節的內容,數據流分為主數據流和可命令數據流。主數據流是未命名的,並且只能被文件系統查看。命名數據流中包含了與該文件有關的額外信息,例如自定義的屬性和摘要信息。這樣,我們就可以給文件關聯額外的信息,但文件和信息仍將作為一個整體。
在創建命名數據流並將其關聯給文件後,任何知道如何處理命名數據流的應用程序都可以通過名稱讀取數據流,並讀取額外信息。例如,我們熟悉的Microsoft Office是可以讀取數據流的。這樣我們就可以為Word文檔設置摘要信息,例如標題、主題、作者,並將這些信息和文件一起保存。
通常情況下,我們要查看文件的數據流信息,可用鼠標右鍵單擊保存NTFS分區中的任何文件,選擇“屬性”,並切換到“詳細信息”選項卡,都可以看到關聯到文件的數據流信息。一般來說,關聯到文件的命名數據流可用於設置其屬性選項卡的名稱,以及生成這些選項卡下顯示的信息。因為某些類型的文檔可能包含額外的選項卡,例如我們可以看到是文件略縮圖就保存在文件中。當然,在文件屬性對話框的“詳細信息”選項卡下,我們可以選擇性地刪除關聯到文件的屬性及其個人信息。只需單擊“刪除屬性和個人信息”鏈接,並選擇相應的刪除方式,系統就會通過從文件相關的數據流中刪除相應的值來實現我們的目的。(圖2)
相信大家注意到,當我們將保護命名數據流的文件移動或復制到FAT分區上時,就會看到一個名為“確認數據流丟失”的警告對話框,這說明FAT分區是不支持數據流的。筆者還是建議大家的Windows 7系統除了系統分區是NTFS之外,其他分區最好都使用NTFS分區,這樣能夠提升系統的安全穩定性,而且NTFS的特性在我們進行系統管理是非常有用的。
2、記錄文件信息的數據流
不同於Vista,Windows 7只能安裝在NTFS分區中,這應該是出於對其安全可靠性的考慮。在NTFS卷上的每個文件都有其相關的數據流,這些數據流記錄了文件的詳細信息,相當於該文件的“名片”。其實所謂的數據流,就是包含在文件內容中的一系列字節的內容,數據流分為主數據流和可命令數據流。主數據流是未命名的,並且只能被文件系統查看。命名數據流中包含了與該文件有關的額外信息,例如自定義的屬性和摘要信息。這樣,我們就可以給文件關聯額外的信息,但文件和信息仍將作為一個整體。
在創建命名數據流並將其關聯給文件後,任何知道如何處理命名數據流的應用程序都可以通過名稱讀取數據流,並讀取額外信息。例如,我們熟悉的Microsoft Office是可以讀取數據流的。這樣我們就可以為Word文檔設置摘要信息,例如標題、主題、作者,並將這些信息和文件一起保存。
通常情況下,我們要查看文件的數據流信息,可用鼠標右鍵單擊保存NTFS分區中的任何文件,選擇“屬性”,並切換到“詳細信息”選項卡,都可以看到關聯到文件的數據流信息。一般來說,關聯到文件的命名數據流可用於設置其屬性選項卡的名稱,以及生成這些選項卡下顯示的信息。因為某些類型的文檔可能包含額外的選項卡,例如我們可以看到是文件略縮圖就保存在文件中。當然,在文件屬性對話框的“詳細信息”選項卡下,我們可以選擇性地刪除關聯到文件的屬性及其個人信息。只需單擊“刪除屬性和個人信息”鏈接,並選擇相應的刪除方式,系統就會通過從文件相關的數據流中刪除相應的值來實現我們的目的。(圖2)
相信大家注意到,當我們將保護命名數據流的文件移動或復制到FAT分區上時,就會看到一個名為“確認數據流丟失”的警告對話框,這說明FAT分區是不支持數據流的。筆者還是建議大家的Windows 7系統除了系統分區是NTFS之外,其他分區最好都使用NTFS分區,這樣能夠提升系統的安全穩定性,而且NTFS的特性在我們進行系統管理是非常有用的。
假如我們要了解某個文件最新的變動日志項,只需在命令行下執行命令“fsutil usn readdate filepath”即可,其中filepath是要查看變動信息的文件的路徑和名稱。例如,如果要查看C:Windowssetupact.log文件的最新變動日志信息,可執行命令“fsutil usn readdata C:Windowssetupact.log”,命令的輸出結果如下:
Major Version : 0x2
Minor Version : 0x0
FileRef# : 0x0001000000002abe
Parent FileRef# : 0x0001000000000210
Usn : 0x0000000002246948
Time Stamp : 0x0000000000000000 12:00:00 AM 1/1/1601
Reason : 0x0
Source Info : 0x0
Security Id : 0x0
File Attributes : 0x20
File Name Length : 0x18
File Name Offset : 0x3c
FileName : setupact.log
(圖3)
這些數據的開始位置顯示了該文件在根文件索引中的索引編號以及父項,同時還顯示了該文件當前的USN已經文件屬性標記。所有這些有關該文件的最新變動日志,方便了特定的系統服務直接查詢,以判斷對文件的修改情況,不僅速度更快,而且對系統資源是使用也更高效。
4、方便的壓縮(Zipped)文件夾
在Windows 7中不需要安裝第三方的壓縮/解壓工具,利用其提供的“壓縮(Zipped)文件夾”就能夠滿足我們的需求。在使用這種方式壓縮數據時,實際上的使用Zipped壓縮技術減少文件和文件夾的字節,以達到占用較少磁盤空間的目的。Zip壓縮是對系統的擴展,因此它不僅支持NTFS卷,還支持FAT卷。同時,Zipped文件夾還可以使用密碼保護,以實現通過電子郵件、FTP、Http發送。筆者感覺Zipped文件夾一個非常好的特性是,我們直接可以從被壓縮文件夾內部運行程序,而不用先將其解壓縮。
要創建Zipped文件夾,我們可以在Windows 7的資源管理器中需要壓縮的文件、文件夾或者它們的組合,用鼠標右鍵單擊指向“發送到”,選擇“壓縮(Zipped)文件夾”。Zipped文件夾會自動使用所選的最後一個項目的名稱命名,同時會添加.ZIP的擴展名。要訪問壓縮(Zipped)文件夾,只需雙擊即可打開,然後和直接運行或者打開其中的程序或者文件。(圖4
我們在使用Zipped文件夾時,可執行的操作工作就像針對一般文件夾的操作一樣,同時還可以執行這樣的操作:用拖動的方式添加其他文件、程序或者文件夾到Zipped文件夾;將Zipped文件夾中的文件復制並粘貼到其他文件夾;使用剪切命令從Zipped文件夾中刪除文件,並將其粘貼到其他位置;通過右鍵單擊Zipped壓縮文件夾選擇“全部提取”可啟動提取向導,然後將其中的所有文件提取出來,並復制到新的位置。另外,我們還可以單擊該文件,給文件添加密碼,以控制用戶對該文件夾的訪問。(圖5)
總結:NTFS是一個成功的文件系統,它帶給Windows以安全和高效。當然,它也是一個在不斷擴展完善中的文件系統,作為用戶其中的很多特性需要我們進一步去挖掘和應用,希望本文能夠為大家提供幫助。