智能地帶

歡迎你登陸【智能地帶】
請點擊登陸,選擇快速登錄
選擇註冊,跳轉到註冊頁面
選擇不再顯示,以後不再顯示此對話框

    微軟Windows 7操作系統中NTFS高級應用-第一彈

    分享
    avatar
    Admin
    Admin

    文章數 : 26
    注冊日期 : 2009-06-25
    年齡 : 29
    來自 : 深圳

    微軟Windows 7操作系統中NTFS高級應用-第一彈

    發表 由 Admin 于 周一 7月 06, 2009 1:38 pm

    微软从Windows 2000开始引入了NTFS文件系统,但此时用户可以选择将系统安装在非NTFS格式的分区中。到了当前,Windows 7却只能安装在NTFS格式中了。这其中我们可以看到微软对NTFS的器重,当然和当年相比其特性和功能有了很大的扩展和提升。不过,对于NTFS的诸如压缩、加密、安全授权等功能大家比较熟悉,本文将以Windows 7系统为例,谈谈其下的NTFS高级特性和应用。

    1、高效、节省的硬链接

    通常情况下,我们需要将同一个文件显示在不同的位置。例如,有时需要将一篇位于网络共享中的文档提供给所有的用户使用,但某些应用程序可能必须要从另外一个特定的位置才能打开该文档,以便进行正常的读写操作。此时,我们并不需要将文件移动到应用程序要求的目录或给特定的用户分配访问受保护目录的权限,只需借助Windows 7的NTFS特性通过“fsutilhardlink”命令 给该文档创建硬链接,以便使其可以被用户和应用程序单独访问。

    (1).硬链接为管理员带来的便利

    很明显,Windows 7中通过硬链接实现文档的访问方式无疑是非常高效的。一个命令可以轻松搞定,且省去了文件复制的麻烦。此外,还有一点也是令我们幸喜的。无论一个文件有多少个硬链接,相关的目录项都将指向某个卷上现有的同一个文件,而这正式硬链接和文件副本的不同。我们知道文件的副本,文件的数据实际上是存在于多个位置下的。据此,使用硬链接无疑节省了我们的磁盘空间。

    还有一点也是我们乐见的,通过使用硬链接,文件会显示为存在多个位置,但实际上只存在于一个位置,因此如果使用其中的一个硬链接修改并保存了这个文件,而其他人通过不同的硬链接打开该文件,修改后的内容一样可以显示出来。此外,因为具有多个硬链接的文件实际上只有一个副本,因此硬链接并不会有多个安全描述,只有源文件具有安全描述。所以如果希望更改某个文件任何一个硬链接的访问权限,只需对该硬链接指向的实际源文件物理副本进行更改,这样该文件副本关联的所有硬链接都会被用于新的安全设置。

    除此之外,硬链接也提高了文件的安全性。比如,我们为一个文件创建了多个硬链接,那么除非将所有的硬链接都删除掉,否则该文件就无法从卷上删除。这样的话,如果有人无意删除了一个有多个硬链接的文件,文件本身并不会被删除,被删除的只是受影响的硬链接,而其他硬链接和文本本身不受影响。


    微軟Windows 7操作系統中NTFS高級應用 (2)


    (2).創建硬鏈接

    要創建硬鏈接,需要使用“fsutil hardlink”命令。其命令格式為“fsutil hardlink create newfilepath currentfilepath”。其中newfilepath是要為該文件創建的硬鏈接的路徑,而currentfilepath是要鏈接到的現有文件的名稱。例如,我們要為c:\test目錄中的test.doc文件創建新的硬鏈接c:\ctocio\ctocio.doc,需要執行命令“fsutil hardlink create c:\ctocio\ctocio.doc c:\test\test.doc”。命令執行完畢後,硬鏈接創建成功。此時,當我們雙擊 c:\ctocio\ctocio.doc打開的則是c:\test\test.doc文件。

    (3).硬鏈接的不足

    筆者在使用硬鏈接的過程中也發現了其中的一些不變或者不足之處。其一是,硬鏈接只能在NTFS卷上創建,不能在一個卷上同時創建指向另一個卷的硬鏈接。也就是說,我們無法在C盤上創建指向D盤文件的硬鏈接。其二是,硬鏈接並不適合多個用戶需要並發修改同一個文件的環境,比如協同辦公。具體來說,假設用戶A使用一個硬鏈接打開了這個文件,並修改了該文件,但同時用戶B使用另外一個硬鏈接打開同一個文件,並進行修改,如果兩人嘗試同時保存修改內容就會出現問題。
    微軟Windows 7操作系統中NTFS高級應用 (3)

    2、記錄文件信息的數據流

    不同於Vista,Windows 7只能安裝在NTFS分區中,這應該是出於對其安全可靠性的考慮。在NTFS卷上的每個文件都有其相關的數據流,這些數據流記錄了文件的詳細信息,相當於該文件的“名片”。其實所謂的數據流,就是包含在文件內容中的一系列字節的內容,數據流分為主數據流和可命令數據流。主數據流是未命名的,並且只能被文件系統查看。命名數據流中包含了與該文件有關的額外信息,例如自定義的屬性和摘要信息。這樣,我們就可以給文件關聯額外的信息,但文件和信息仍將作為一個整體。

    在創建命名數據流並將其關聯給文件後,任何知道如何處理命名數據流的應用程序都可以通過名稱讀取數據流,並讀取額外信息。例如,我們熟悉的Microsoft Office是可以讀取數據流的。這樣我們就可以為Word文檔設置摘要信息,例如標題、主題、作者,並將這些信息和文件一起保存。

    通常情況下,我們要查看文件的數據流信息,可用鼠標右鍵單擊保存NTFS分區中的任何文件,選擇“屬性”,並切換到“詳細信息”選項卡,都可以看到關聯到文件的數據流信息。一般來說,關聯到文件的命名數據流可用於設置其屬性選項卡的名稱,以及生成這些選項卡下顯示的信息。因為某些類型的文檔可能包含額外的選項卡,例如我們可以看到是文件略縮圖就保存在文件中。當然,在文件屬性對話框的“詳細信息”選項卡下,我們可以選擇性地刪除關聯到文件的屬性及其個人信息。只需單擊“刪除屬性和個人信息”鏈接,並選擇相應的刪除方式,系統就會通過從文件相關的數據流中刪除相應的值來實現我們的目的。

    相信大家註意到,當我們將保護命名數據流的文件移動或復制到FAT分區上時,就會看到一個名為“確認數據流丟失”的警告對話框,這說明FAT分區是不支持數據流的。筆者還是建議大家的Windows 7系統除了系統分區是NTFS之外,其他分區最好都使用NTFS分區,這樣能夠提升系統的安全穩定性,而且NTFS的特性在我們進行系統管理是非常有用的。

    微軟Windows 7操作系統中NTFS高級應用 (4)

    3、了解文件變動信息的變動日誌

    在Windows 7中,NTFS分區具有文件變動信息的記錄功能。變動日誌可以針對卷的所有操作記錄完整的日誌,記錄的內容可包含添加、刪除和修改操作,無論那個用戶進行的操作,或者進行的添加、刪除和修改操作都會記錄在案。這和系統日誌類似,變動日誌是持續的,因此就算是關閉或重啟系統,這些內容依舊可以保留。當發生NTFS檢查點事件後,系統就會將記錄寫入到NTFS變動日誌中,檢查點會告訴系統寫入變動,以便讓NTFS可以在發生故障後恢復到特定的檢查點狀態下。

    要了解有關變動日誌功能的摘要信息,我們只需在命令行下運行“fsutil usn queryjournal DriveDesignator”命令即可,其中DriveDesignator的我們要查詢的卷。例如我們要查看C盤的變動日誌摘要,可運行命令“fsutil usn queryjournal c:”。在筆者的Windows 7中,命令的輸出結果如下:

    Usn Journal ID : 0x01c9cb581f565250

    First Usn : 0x00000000004c0000

    Next Usn : 0x000000000224be08

    Lowest Valid Usn : 0x0000000000000000

    Max Usn : 0x7fffffffffff0000

    Maximum Size : 0x0000000002000000

    Allocation Delta : 0x0000000000400000

    “Usn Journal ID”是USN日誌ID,這是該變動日誌的唯一標識符。“First Usn”是第一個USN,這是日誌中的第一個USN。“Next Usn”是下一個USN,這時變動日誌下一個可以被寫入的USN。“Lowest Valid Usn”是最低有效USN,這是可以被寫入變動日誌的最低有效USN。“Max Usn”是最大USN,這是可以被分配的最大USN。“Maximum Size ”是最大值,這是變動日誌可以使用的字節最大值,如果變動日誌超過該值,以前的項目就會被覆蓋。“Allocation Delta”是分配差,這是當變動日誌裝滿後,可以被添加到日誌的末尾,或者從日誌的開頭處刪除的,被分配的內容空間大小。

      現在的時間是 周五 五月 26, 2017 7:04 pm