FlossDoc: 請協力 GPLv3 的中文翻譯工作。
改變 FAT 檔案的屬性
FlossDoc,自由中文開源知識庫
FAT 檔案系統中每個檔案主要有以下幾個屬性 (attribute):
- 唯讀 (r, Read-only) - 檔案只可以被讀取而不能被寫入或刪除。
- 隱藏 (h, Hidden) - Windows/MS-DOS 系統預設不會列出此檔案。
- 系統 (s, System) - 檔案為系統檔案 (system file),Windows/MS-DOS 系統預設不會列出此檔案。
- 卷宗標簽 (v, Volume Label) - 表示有關檔案項目實際為一個 volume label (不可以更變屬性),系統會略過此項目。
- 目錄 (d, Directory) - 表示有關檔案項目實際為一個子目錄 (不可以更變屬性)。
- 封存 (a, Archive) - 檔案需要被封存。FAT 檔案系統上的一般檔案預設會開啟封存屬性,當檔案被 XCOPY 等命令備份後,其封存屬性會被關閉,直至檔案內容被更改時才再開啟封存屬性。這樣,XCOPY 等命令可以使用封存屬性判斷檔案在上次備份後內容是否有被改動,這次是否需要備份。
現時的 GNU/Linux 可以使用 chmod -w 檔案名稱 開啟唯讀屬性 (Read-only attribute) 或 chmod +w 檔案名稱 關閉,但其他屬性則要使用 fatattr 或 mtools 中的 mattrib 才可以更改。
目录 |
使用 fatattr 顯示/改變屬性
要在 GNU/Linux 改變掛載中 FAT 檔案系統中檔案的屬性可以使用 fatattr 命令。一般 GNU/Linux 預設都沒有安裝 fatattr,系統管理員一般要自動安裝。在 Ubuntu/Debian 安裝 fatattr 套件:
apt-get install fatattr
使用命令 fatattr 檔案名稱 可以顯示 FAT 檔案的屬性:
$ fatattr "/media/USBDisk/System Volume Information" s d /media/USBDisk/System Volume Information
如果檔案並非在掛載中的 FAT 檔案系統,會出現 Inappropriate ioctl 錯誤。
使用命令 fatattr +屬性 檔案名稱' 可以開啟 FAT 檔案的屬性,而命令 fatattr -屬性 檔案名稱 可以關閉 FAT 檔案的屬性:
$ fatattr +a +r secret.odt $ fatattr secret.odt r a secret.odt $ fatattr -a secret.odt $ fatattr secret.odt r secret.odt
使用 mtools 顯示/改變屬性
除了 fatattr,亦可以使用 mtools 中的 mattrib 在 GNU/Linux 改變 FAT 檔案系統中檔案的屬性。然而,mtools 主會設計處理軟磁碟或 ZIP/JAZ 碟等舊式儲存裝置,有關 FAT 檔案系統需在未掛載況性下使用,fatattr 會較適合包括 USB 磁碟/手指和各類記憶卡等現代儲存裝置。
部份 GNU/Linux 可能預設都沒有安裝 mtools 套件,系統管理員可能要自行安裝。
命令 mattrib 檔案名稱 可以顯示 FAT 檔案的屬性:
# mattrib a:secret.odt A A:/SECRET.odt
檔案名稱中如果沒有 A: 等磁碟名稱會預設為 A: 是第一顆軟磁碟機 (/dev/fd0)。
命令 mattrib +屬性 檔案名稱' 可以開啟 FAT 檔案的屬性,而命令 mattrib -屬性 檔案名稱 可以關閉 FAT 檔案的屬性:
# mattrib +h a:secret.odt
# mattrib a:secret.odt
A H A:/SECRET.odt
# mattrib +a a:secret.odt
# mattrib a:secret.odt
H A:/SECRET.odt
請參看
外部連結
- 維基百科: attrib - 維基百科在 attrib (MS-DOS 改變檔案屬性命令) 中有對 FAT 檔案屬性的說明
- PC Guide: FAT File System Disk Volume Structures - File Attributes (Charles M. Kozierok 2004)
- Ubuntu Manpage: fatattr(1) - Display or change attributes on a FAT filesystem

