mount 中文手冊

名稱 mount - 掛載文件系統 語法 mount [-lhV] mount -a [-fFnrsvw] [-t vfstype] [-O optlist] mount [-fnrsvw] [-o option[,option]...] device|dir mount [-fnrsvw] [-t vfstype] [-o options] device dir 描述 此命令的標準格式是 mount -t type device dir 原 dir 裏面的 內容/屬主/權限 將被屏蔽,直到此設備被卸載。 如果只給出了 dir 或者只給出了 device ,那麼將根據 /etc/fstab 的設置進行掛載。 如果想避免 dir 與 device 之間的混淆,可以使用 --target(表示dir) 或 --source(表示device) 進行明確標明: mount --target /mountpoint 關於 device 的說明: 大多數的 device 是一個類似 /dev/sda1 這樣的塊設備文件名, 但是對於NFS來說則可能是 knuth.cwi.nl:/dir 的樣子。 此外還可以通過 LABEL(-L) 或 UUID(-U) 來標識一個塊設備(uuid 中必須使用小寫字母)。 對於使用GPT分區格式的硬盤來說,還可以使用 PARTUUID 或 PARTLABEL 來標識。 不要理所當然的認爲 UUID 一定是唯一的,應該使用如下命令 lsblk -o +UUID,PARTUUID 檢查其是否真的在你的系統上是唯一的。 推薦在 /etc/fstab 中使用 LABEL=label 來標記設備, 而不是 /dev/disk/by-{label,uuid,partuuid,partlabel} 這樣的符號鏈接。 因爲 LABEL 可讀性更好,可移植性也更強。 注意,mount 將 UUID 視爲字符串(而不是16進制數)。UUID 中的字母必須小寫。 由於 proc 文件系統並不與特定的設備相關,所以掛載的時候通常使用"proc"來代替。 /etc/fstab, /etc/mtab, /proc/mounts /etc/fstab(參見 fstab(5))中包含了描述 設備-掛載點-掛載選項 之間的對應關係。 此文件的默認位置可以通過 --fstab 命令行選項進行修改(詳見"命令行選項"小節) 如下命令(通常用於啓動腳本中) mount -a [-t type] [-O optlist] 將會掛載 /etc/fstab 中所有列出的所有設備(明確標記爲"noauto"的除外)。 如果額外加上 -F 選項,那麼將同時並行掛載多個文件系統。 如果掛載一個 fstab 或 mtab 中的文件系統,那麼只要指定設備或掛載點之一就可以了。 mount 和 umount 程序會在 /etc/mtab 中維護一份當前已掛載文件系統的列表。 如果不傳遞任何參數,直接調用 mount 將會打印出此列表。 如果同時給出了 device(或 LABEL, UUID, PARTUUID, PARTLABEL) 和 dir , 那麼 mount 將不會讀取 /etc/fstab 中的設置。例如: mount /dev/foo /dir 如果想在 /etc/fstab 已有選項的基礎上追加選項(追加到已有選項之後),可以使用下面的命令: mount device|dir -o options 當 proc 文件系統被掛載(假定掛載到 /proc)之後,/etc/mtab 和 /proc/mounts 中的內容差不多, 但通常 /etc/mtab 中的內容更豐富一些(包含掛載選項),但是更新可能不夠及時(受 -n 選項的影響)。 可以將 /etc/mtab 替換成指向 /proc/mounts 的符號鏈接,這有助於提升掛載/卸載大量文件系統的速度。 當然,這樣做會導致無法使用"user"選項,而且也會丟失一些信息。 非root用戶的掛載 通常只有root用戶可以掛載文件系統, 但是如果在 fstab 中包含"user"選項,那麼所有用戶都可以掛載此文件系統。 例如,如果在 fstab 中包含如下的行: /dev/cdrom /cd iso9660 ro,user,noauto,unhide 那麼所有用戶都可以通過下面的命令掛載 CDROM 上的 iso9660 文件系統: mount /dev/cdrom 或 mount /cd 使用了"user"選項的文件系統,只有掛載該文件系統的用戶纔可以卸載它。 若想允許任何其他用戶卸載,那麼可以使用"users"代替"user"來實現。 "owner"選項與"user"類似,表示僅允許設備的屬主掛載它。 "group"選項與"owner"類似,表示僅允許設備的屬組中的用戶掛載它。 綁定掛載 可以將文件系統同時綁定到兩個不同的位置: mount --bind olddir newdir 或者其短格式: mount -B olddir newdir 或者在 fstab 中添加如下的條目: /olddir /newdir none bind 這樣,就可以從兩個不同的位置訪問完全相同的內容了。 甚至可以將同一個文件或目錄綁定到自身(只是創建了一個掛載點而已): mount --bind foo foo 上面的綁定掛載只能綁定一個單獨的文件系統,而不包含其下級子目錄上的文件系統。 如果想要遞歸綁定整個目錄樹上所有的文件系統,可以使用: mount --rbind olddir newdir 或者其短格式: mount -R olddir newdir 使用 --bind/--rbind 綁定掛載文件系統的時候,並不能改變其原有的掛載選項。 如果想要改變掛載選項,必須在綁定之後,再使用 remount 選項來修改: mount --bind olddir newdir mount -o remount,ro newdir 需要注意的是,remount 的行爲受 /etc/mtab 的控制。 第一個命令將'bind'標記記錄到 /etc/mtab 文件,而第二個命令又會從 /etc/mtab 中讀取到'bind'標記。 如果你的系統上沒有 /etc/mtab 文件,又或者你爲 remount 明確的指定了 device 與 dir 兩個參數, 那麼 /etc/mtab 將不會被讀取,這就意味着你必須在此情況下明確使用 bind 標記: mount --bind olddir newdir mount -o remount,ro,bind olddir newdir 注意,remount,ro,bind 將會創建一個只讀的掛載點,但是原始文件系統的超級塊依然是可寫的。 也就是說,olddir 是可寫的,但是 newdir 卻是隻讀的。 移動操作 可以通過下面的命令將一個目錄移動到另一個地方,而保持文件的物理位置不變 mount --move olddir newdir 或者其短格式: mount -M olddir newdir 這將導致 olddir 中的內容完全轉移到 newdir 中來訪問,但是文件的真實物理位置保持不變。 注意:(1) olddir 必須是一個掛載點。(2) olddir 不能位於帶有"shared"屬性的掛載點之下(參見下文)。 [提示]可以使用"findmnt -o TARGET,PROPAGATION /dir"命令查看掛載點 /dir 的屬性。 共享子樹 可以爲一個掛載點(可以包含子掛載點)設置傳播類型標記(shared, private, slave, unbindable)。 shared 表示允許創建鏡像,一個鏡像內的掛載和卸載操作會被自動傳播到所有其他鏡像中。 slave 表示自動繼承主掛載點中掛載和卸載操作,但是自身的掛載和卸載操作不會反向傳播到主掛載點中。 private 表示既不繼承主掛載點中掛載和卸載操作,自身的掛載和卸載操作也不會反向傳播到主掛載點中。 unbindable 表示禁止對該掛載點進行任何綁定(--bind|--rbind)操作。 詳見 Documentation/filesystems/sharedsubtree.txt 文檔。 支持的操作: mount --make-shared mountpoint mount --make-slave mountpoint mount --make-private mountpoint mount --make-unbindable mountpoint 下面的命令表示遞歸的改變一個掛載點及其下的所有子掛載點的傳播類型標記: mount --make-rshared mountpoint mount --make-rslave mountpoint mount --make-rprivate mountpoint mount --make-runbindable mountpoint [注意](1) 每個 mount 命令只能修改一個傳播類型標記,也就是說不可以一次指定多個傳播類型標記。 (2) mount 在進行 --make-* 操作時不會讀取 fstab(5) 文件,你必須在命令行上指定所有掛載選項。 從 util-linux-2.23 版本開始,可以在 fstab(5) 中的"掛載選項"字段設置傳播類型標記: (private, slave, shared, unbindable, rprivate, rslave, rshared, runbindable) 命令行選項 完整的最終生效的選項由下列三部分組成: (1)首先,從 fstab 中得到的選項; (2)其次,命令行選項 -o 中設置的參數; (3)最後,再加上 -r 或 -w 選項(如果存在)。 所有可用的命令行選項如下: -V, --version 打印版本信息後退出 -h, --help 打印幫助信息後退出 -v, --verbose 囉嗦模式,顯示處理過程的詳細信息 -a, --all 掛載 /etc/fstab 中所有(符合指定類型的)的文件系統,但包含"noauto"標記的行除外。 -F, --fork (與 -a 連用)爲每個設備都產生一個新進程來掛載。這樣可以並行地掛載不同的設備或連接不同的NFS服務器。 這樣做的好處是掛載速度更快;同時NFS服務器延時也是並行的。缺點是掛載順序是不定的。 因此,如果你想掛載 /usr 和 /usr/spool 的話就不能使用這個選項。 -f, --fake 除了不實際執行掛載的系統調用之外,其它都和不使用這個選項相同。 通常和 -v 選項聯用以查看掛載動作究竟做了些什麼事情。 也通常用於向 /etc/mtab 中添加先前被 -n 屏蔽掉的掛載信息。 -f 選項會檢查 /etc/mtab 中已有的條目,並在已有重複條目的情況下返回失敗的結果。 -i, --internal-only 不調用 /sbin/mount.TYPE 輔助程序,即使它真實存在。 -l, --show-labels 在掛載後輸出文件系統的卷標籤。mount 必須有讀取磁盤設備的權限。 -n, --no-mtab 不將掛載信息寫入 /etc/mtab ,當此 /etc 位於只讀文件系統上的時候,通常就需要使用它。 -c, --no-canonicalize 不對路徑(path)進行規範化。 mount 默認會將所有來自命令行和 fstab 的路徑進行規範化之後再寫入 /etc/mtab 文件。 這個選項可以和 -f 一起用於已經規範化了的絕對路徑。 -s 忽略文件系統不支持的掛載選項而不是導致掛載失敗。 目前只有 mount.nfs 掛載幫助程序支持此選項。 --source src 如果只爲 mount 給出了一個參數,爲避免混淆(掛載點/設備), 可以使用此選項強制表示 src 是"設備"而不是"掛載點"。 -r, --read-only 以只讀模式掛載。等價於"-o ro"。 注意,指定此選項後內核仍然有可能向磁盤寫入數據(取決於不同的文件系統)。 例如 ext3/ext4 會在檢測到文件系統未被正確卸載的情況下,重放日誌。 要避免這種行爲,你可以在掛載 ext3/ext4 的時候,使用"ro,noload"選項, 或者用 blockdev(8) 工具將相應的塊設備設置爲"只讀"模式。 -w, --rw, --read-write 以讀寫模式掛載,這是默認值。等價於"-o rw"。 -L, --label label 掛載標籤名爲"label"的分區。此選項要求 /proc/partitions 文件必須存在。 -U, --uuid uuid 掛載UUID爲"uuid"的分區。此選項要求 /proc/partitions 文件必須存在。 -T, --fstab path 明確指定 fstab 文件的位置(默認是 /etc/fstab )。 如果 path 是一個目錄,那麼此目錄中的文件將由 strverscmp(3) 工具進行排序, 並且以"."開頭或者不以 .fstab 結尾的文件都將被忽略。 可以多次使用此選項,以指定多個 fstab 文件。 此選項的主要目的是用於 initramfs 或 chroot 環境中。 注意,mount 本身並不將 --fstab 選項傳遞給 /sbin/mount.TYPE 幫助程序。 也就是說,掛載幫助程序本身並看不到這裏設定的 fstab 文件。 所由於無法驗證是否具有"user"這樣的權限,以不能用於普通用戶(非root)的掛載。 -t, --types vfstype 指定要掛載的文件系統類型。可以使用逗號分割多種類型。當前可用的類型有(實際情況取決於內核的配置): adfs, affs, autofs, cifs, coda, cramfs, debugfs, devpts, efs, ext2, ext3, ext4, hfs, hfsplus, hpfs, iso9660, jfs, minix, msdos, ncpfs, nfs, nfs4, ntfs, proc, qnx4, ramfs, reiserfs, romfs, squashfs, smbfs, sysv, tmpfs, ubifs, udf, ufs, umsdos, usbfs, vfat, xfs mount 與 umount 還支持通過'.subtype'後綴定義的文件系統"子類型"(subtype),例如'fuse.sshfs'。 對於大多數文件系統,只要執行一個簡單的 mount(2) 系統調用即可,並不需要明確指定文件系統的類型。 但少數文件系統(nfs, nfs4, cifs, smbfs, ncpfs)則需要 /sbin/mount.TYPE 程序的幫助。 如果沒有給出此選項或者參數爲"auto",mount 將會使用 blkid 庫進行猜測。 如果猜測失敗,mount 將讀取 /etc/filesystems 文件,並嘗試其中所有未被標記爲"nodev"的文件系統類型。 如果 /etc/filesystems 不存在,則 mount 將繼續讀取 /proc/filesystems 並進行同樣的嘗試。 另一方面,如果 /etc/filesystems 以只包含單個 * 的一行結束的話,mount 將繼續讀取 /proc/filesystems 文件。 所有這些探測的文件都將使用"silent"選項進行掛載。 "auto"類型在掛載移動設備時很有用, 而 /etc/filesystems 文件在改變探測順序時很有用(特別是使用了內核模塊自動加載功能的情況下)。 例如,在 msdos 之前先嚐試 vfat,或者在 ext2 之前先嚐試 ext3 之類。 可以用逗號分隔的列表來指定多個類型。也可以前綴"no"指示不使用這些文件系統。 這種做法對於選項 -a 十分有用。例如: mount -a -t nomsdos,ext2 將掛載 msdos 和 ext2 之外的所有文件系統。 --target dir 如果只爲 mount 給出了一個參數,爲避免混淆(掛載點/設備), 可以使用此選項強制表示 dir 是"掛載點"而不是"設備"。 -O, --test-opts opts 與 -a 聯用以限制 -a 處理的文件系統的集合。下面的命令 mount -a -O no_netdev 表示掛載所有文件系統,但在 /etc/fstab 的選項字段中指定了 _netdev 的文件系統除外。 它與 -t 的區別在於每個選項都被精確匹配;在一個選項開頭前綴 no 不會影響其餘選項。 選項 -t 和 -O 的效果是累積的,也就是說,命令 mount -a -t ext2 -O _netdev 掛載所有指定了 _netdev 選項的 ext2 文件系統,而不是 ext2 或指定了 _netdev 選項文件系統。 -o, --options opts opts 是逗號分割的選項列表。例如: mount LABEL=mydisk -o noatime,nouser 更多信息參見下面的"文件系統無關的掛載選項"和"文件系統特定的掛載選項"。 -B, --bind 將某個目錄樹綁定掛載到其它地方,這樣就可以同時從兩個地方進行訪問。 -R, --rbind 將某個目錄樹綁定掛載到其它地方,並且其子目錄如果是掛載點的話也遞歸的進行綁定。 -M, --move 將某個目錄樹移動到另外一個地方。 文件系統無關的掛載選項 這部分選項的當前值可以通過 /proc/mounts 查看。而其中一部分的默認值由內核編譯時的配置決定。 這裏的選項與文件系統無關(適用於所有類型的文件系統),並且都不可用於"rootflags="內核引導參數。 下面的選項僅能在 /etc/fstab 文件中使用: auto 可以使用 -a 選項掛載。 noauto 不能被自動掛載,也就是 -a 選項不會掛載它。 group 允許非root用戶掛載,如果該用戶所屬組之一匹配設備的屬組。 該選項隱含了 nosuid 和 nodev 選項,除非你特意進行了修改(比如:group,dev,suid)。 owner 允許非root用戶掛載,如果該用戶是此設備文件的宿主的話。 該選項隱含了 nosuid 和 nodev 選項,除非你特意進行了修改(比如:owner,dev,suid)。 user 允許非root用戶掛載此文件系統,此用戶的名字將記入 mtab 中以便於隨後再卸載。 該選項隱含了 noexec, nosuid, nodev 選項,除非你特意進行了修改(比如:user,exec,dev,suid)。 nouser 禁止非root用戶掛載,這是默認值。 users 允許所有用戶掛載此文件系統。 該選項隱含了 noexec, nosuid, nodev 選項,除非你特意進行了修改(比如:users,exec,dev,suid)。 下面的選項既可以在 /etc/fstab 文件中使用,也可以在命令行中使用: async 所有的I/O操作都異步進行。 sync 所有的I/O操作都同步進行(僅對 ext2, ext3, fat, vfat, ufs 有意義)。 對於U盤/SSD之類的閃存設備,此選項可能縮短其壽命。 dirsync 所有對目錄的更新操作都同步進行。這將影響下列系統調用: creat, link, unlink, symlink, mkdir, rmdir, mknod, rename atime 每一次訪問文件都更新inode訪問時間(access time) noatime 禁止更新文件的inode訪問時間,以獲得更快的訪問速度。 diratime 每一次訪問目錄都更新inode訪問時間 nodiratime 禁止更新目錄的inode訪問時間,以獲得更快的訪問速度。 iversion 在每次修改inode的同時遞增一次索引節點inode結構中"i_version"字段的值。 noiversion 禁止更新索引節點inode結構中"i_version"字段(被文件系統用來記錄索引節點的改變)的值。 relatime 按照文件被修改的時間更改inode訪問時間。也就是僅在文件的修改時間比訪問時間新時才更新訪問時間。 與 noatime 類似,但是可以讓 mutt 之類需要知道文件在最後一次被修改後是否被訪問過的程序正常工作。 從 Linux 2.6.30 起,這是默認值(除非指定了 noatime)。 從 Linux 2.6.30 起,如果文件的最後訪問時間已超過24小時未更新,也會被強制更新。 norelatime 禁止使用 relatime 特性,參見 strictatime 選項。 strictatime 允許明確的指定更新inode訪問時間的方式, 這樣內核就可以在默認使用"relatime"或"noatime"的同時又允許用戶空間的程序進行更改。 更多默認的系統掛載選項可參見 /proc/mounts nostrictatime 使用內核的默認行爲更新inode訪問時間 context=context fscontext=context defcontext=context rootcontext=context context= 選項用於掛載不支持擴展屬性的文件系統,比如 VFAT 或在非SELinux系統下格式化的 ext3 分區。 context= 還可以用於掛載你不信任的文件系統,比如軟盤和U盤等可移動存儲(軟盤/U盤/光盤/移動硬盤/閃存卡)。 例如,最常見用法的是:context="system_u:object_r:removable_t" 另外兩個選項 fscontext= 和 defcontext= 都與 context= 選項互斥。 也就是說,你可以同時使用 fscontext= 和 defcontext= 選項,但是它們都不能和 context= 選項一起使用。 fscontext= 可以用於所有文件系統,無論其是否有 xattr 支持。 fscontext= 選項將超越不同架構的文件系統標籤設置爲一個特定的安全內容(security context)。 此文件系統標籤與單獨的文件標籤之間各自獨立, 它提供了某些針對整個文件系統範圍的權限檢查(例如在掛載時或創建文件時)。 單獨的文件標籤依然可以從文件自身的xattr中獲取。 除了爲每個文件提供相同的標籤之外,context= 選項實際上設置了 fscontext= 選項提供的內容的集合。 你可以使用 defcontext= 選項爲不可標記的文件設置默認的安全內容(security context)。 這將會覆蓋策略中(policy)爲不可標記的文件設置的值,前提是文件系統必須支持 xattr 標籤。 rootcontext= 選項允許你在文件系統被掛載之前就先對根inode進行明確的標記。 這對於諸如Stateless Linux這樣的無狀態系統很有用。 注意,內核會拒絕任何包含這四個選項的 remount 請求,即使這些請求並未對內容(context)做出任何改變。 警告:當 context 的值中包含逗號(,)時,必須要用引號進行界定,否則會導致錯誤或難以預料的結果。例如: mount -t tmpfs none /mnt -o'context="system_u:object_r:tmp_t:s0:c127,c456",noexec' 更多詳情,請參閱 selinux(8) 手冊頁。 ro 以只讀模式掛載 rw 以讀寫模式掛載 defaults 等價於使用如下默認選項:rw, suid, dev, exec, auto, nouser, async mand 允許強制鎖定(mandatory locks)此文件系統,參見fcntl(2)。 nomand 禁止強制鎖定(mandatory locks)此文件系統,參見fcntl(2)。 有兩種對文件加鎖的方式:勸告鎖(advisory lock)和強制鎖(mandatory lock) 勸告鎖沒有強制性,內核只提供加鎖以及檢測文件是否已經加鎖的手段, 但是內核並不參與鎖的控制和協調。如果有進程不遵守“遊戲規則”, 不檢查目標文件是否已經由別的進程加了鎖就往其中寫入數據,那麼內核是不會加以阻攔的。 強制鎖是一種內核強制採用的文件鎖,每當有系統調用 open()、read()、write() 發生的時候, 內核都要檢查並確保這些系統調用不會違反在所訪問文件上加的強制鎖約束。 也就是說,如果有進程不遵守遊戲規則,硬要往加了鎖的文件中寫入內容,內核就會加以阻攔。 dev 允許使用其中的字符設備和塊設備文件。 nodev 禁止使用其中的字符設備和塊設備文件。 exec 允許直接執行其中的二進制文件。 noexec 禁止直接執行其中的二進制文件。 suid 允許SUID和SGID位生效。 nosuid 禁止SUID或SGID位生效。此選項表面上安全,但是如果安裝了 suidperl(1) 就不安全了。 _netdev 表明此文件系統位於網絡上。用於防止網絡未啓用的時候就掛載。 nofail 即使指定的設備不存在也不報錯 silent 打開 silent 標記 loud 關閉 silent 標記 remount 重新掛載一個已經掛載了的文件系統而不修改其掛載點。通常用於更改掛載選項(比如從 ro 變爲 rw)。 remount 對於命令行選項和 fstab 中選項的處理方式和 mount 完全相同, 僅在 device 和 dir 都明確指定的情況下,fstab 與 mtab 纔會被忽略。 mount -o remount,rw /dev/foo /dir 這個命令表示所有原來的掛載選項都將被替換,並且忽略 fstab 中預設的選項(除了loop=)。 mount -o remount,rw /dir 這個命令表示將 fstab(或 mtab)中預設的選項與此處的命令行選項合併後得到新的掛載選項。 x-* 所有以"x-"爲前綴的選項都被看做註釋或者特定於用戶空間程序的選項。 這些選項不會被記入 mtab 文件、發送給 mount.TYPE 幫助程序、mount(2) 系統調用。 建議的格式是 x-APP.OPTION (例如 x-systemd.automount) x-mount.mkdir[=MODE] 允許創建掛載點,MODE 用於指定訪問權限,其默認值是"0755"。此選項僅允許root用戶使用。 文件系統特定的掛載選項 下面這些 -o 選項的標誌僅可以用於特定的文件系統。 注意,只有文件系統特定的掛載選項纔可以用於"rootflags="內核引導參數中 更多信息可以查看 Documentation/filesystems/ 目錄 devpts devpts 是一個僞文件系統,一般掛載到 /dev/pts 目錄,用於獲取僞終端。 進程打開 /dev/ptmx 所獲取的爲終端(slave)將可以通過 /dev/pts/NUM 訪問。 uid=value 與 gid=value 爲新創建的 PTY 指定 UID 和 GID 。如果未指定,那麼將被設置爲創建此設備的進程的 UID 和 GID 。 mode=value 爲新創建的 PTY 設置權限模式。默認值是"0600"。 newinstance 創建一個單獨的 devpts 文件系統實例。 所有未使用此選項掛載的 devpts 實例之間共享同一個命名空間(pty編號共享)。 而每個使用此選項掛載的 devpts 實例之間命名空間各自獨立,也就是編號完全相同的pty之間也互不相干。 此選項主要用於支持內核中的容器(container)功能。 此選項僅在內核開啓了 CONFIG_DEVPTS_MULTIPLE_INSTANCES 的時候纔可用。 爲了更有效的使用此選項,/dev/ptmx 必須是一個連接到 pts/ptmx 的符號鏈接。 詳見 Documentation/filesystems/devpts.txt 文檔。 ptmxmode=value 爲新創建的 ptmx 設備節點設置默認的權限模式。默認值是"0000"(出於和舊內核的兼容性考量)。 與 newinstance 聯用可讓每個實例在 devpts 文件系統的根(通常是 /dev/pts/ptmx)下都有專用的 ptmx 節點。 此選項僅在內核開啓了 CONFIG_DEVPTS_MULTIPLE_INSTANCES 的時候纔可用。 proc uid=value 和 gid=value 可以接受這兩個選項,但是似乎並沒有什麼效果。 tmpfs Glibc 要求必須在 /dev/shm 上掛載 tmpfs 以滿足POSIX共享內存的需要。 size=字節數|百分比 設置最大尺寸。默認的最大值是內存總量的一半。"size=0"表示沒有限制。 還可以使用百分數表示使用物理內存總數的比例。比如:size=50% nr_blocks= 和 size= 一樣,但是通過塊(PAGE_CACHE_SIZE)的數量來設置。nr_blocks=0 表示沒有限制。 nr_inodes= 設置最大inode數量。 默認值:物理內存頁數量的一半、所有lowmem內存頁,兩者中較小者。 上面三個參數接受 K, M, G 作爲後綴的尺寸。並且可以通過 remount 修改。 uid= 設置掛載點根的初始UID。不可以通過 remount 修改。 gid= 設置掛載點根的初始GID。不可以通過 remount 修改。 mode= 設置掛載點根的初始權限。不可以通過 remount 修改。 mpol=[default|prefer:Node|bind:NodeList|interleave|interleave:NodeList] 爲此實例中的所有文件設置NUMA內存分配策略,僅在內核支持NUMA(CONFIG_NUMA)時纔可以使用。 此選項可以在運行中通過"mount -o remount ..."進行調整。 default 優先從本地節點分配內存 prefer:Node 優先從給定的 Node 節點分配內存 bind:NodeList 僅爲 NodeList 列表中的節點分配內存 interleave 優先以循環輪轉方式在每個節點間分配內存 interleave:NodeList 優先以循環輪轉方式在 NodeList 指定的節點間分配內存 NodeList 的格式是逗號分隔的十進制數列表及用連字符表示的區間。例如:mpol=bind:0-3,5,7,9-15 如果內核不支持NUMA,或者 NodeList 中存在離線節點,此選項都會失敗。 ext2 這是最傳統的Linux標準文件系統。 大多數選項的默認值都由文件系統的超級塊(superblock)決定,並可以使用 tune2fs(8) 工具調整。 acl|noacl 是否支持 POSIX Access Control Lists(需要內核開啓CONFIG_EXT2_FS_POSIX_ACL) bsddf|minixdf 設置系統調用 statfs 的行爲。 minixdf 表示在"f_blocks"字段返回文件系統的總塊數, bsddf(默認值)則表示要減去被 ext2 文件系統所用而無法再存儲文件的塊數。 因此會出現如下的差異: % mount /k -o minixdf; df /k; umount /k Filesystem 1024-blocks Used Available Capacity Mounted on /dev/sda6 2630655 86954 2412169 3% /k % mount /k -o bsddf; df /k; umount /k Filesystem 1024-blocks Used Available Capacity Mounted on /dev/sda6 2543714 13 2412169 0% /k debug 在每次 (re)mount 的時候輸出調試信息。 errors={continue|remount-ro|panic} 定義遇到錯誤時的行爲: continue 表示忽略錯誤,只將文件系統標記爲不正確的,然後繼續; remount-ro 重新只讀掛載它; panic 則掛起系統。 grpid|nogrpid 定義新創建的文件應該獲得怎樣的GID。默認值是"nogrpid"。 grpid 表示使用其父目錄的GID; nogrpid 的含義如下: (1)如果新建文件的父目錄沒有 setgid 位,那麼使用創建此文件的進程的GID。 (2)如果新建文件的父目錄帶有 setgid 位,那麼使用其父目錄的GID; (3)並且如果新建的是目錄時,還要同樣設置 setgid 位。 nouid32 禁用 32-bit UID/GID 以保持與舊版內核互操作 oldalloc|orlov oldalloc 表示使用舊的塊分配算法,orlov(默認)表示使用新的更快速的Orlov塊分配算法。 resgid=n resuid=n ext2會保留一定比例的可用空間(默認5%,參見mke2fs(8)和tune2fs(8))。 這些選項決定了誰(擁有指定UID或者屬於指定GID組的用戶)可以使用這些保留的空間。 sb=n 使用第 n 塊而不是第一塊作爲超級塊。在文件系統被損壞時,這樣很有用。 以前,超塊在每8192個塊處都會複製一個:1, 8193, 16385 ... 如果文件系統很大,將被複制很多次。 後來 mke2fs 便默認使用 -s(稀疏超塊)選項,可以減少超塊備份的數量。 這樣做意味着使用較新的 mke2fs 創建的ext2文件系統無法在 Linux-2.0.* 中以讀寫方式掛載。 這裏塊編號的單位是1k。因此,如果想使用以4k爲單位的文件系統中的第32768塊,應當用"sb=131072"。 user_xattr|nouser_xattr 是否支持"user."擴展屬性(需要內核開啓CONFIG_EXT2_FS_XATTR) xip 如果可能儘量使用就地執行(execute in place)特性 ext3 ext3是ext2的日誌加強版,除了上述ext2選項外,它還支持以下額外的選項 journal=update 更新 ext3 文件系統的日誌爲當前的格式。 journal=inum 如果一個日誌已存在,這個選項將被忽略。否則,將用指定編號的inode保存日誌文件, ext3將創建一個新日誌,覆蓋inode編號爲inum的文件的原有內容。 journal_dev=devnum/journal_path=path 當外部日誌設備的主/次設備號變化的時候,這個選項可以讓用戶重新指定日誌的存儲位置。 這個位置既可以是"XXxx"十六進制形式表示的設備,也可以是 path 指定的設備節點文件。 norecovery/noload 在掛載時不讀取 ext3 文件系統的日誌。用於掛載已經損壞的文件系統。 但是跳過文件系統日誌重放,可能會導致各種錯誤。 data={journal|ordered|writeback} 指定文件數據的日誌模式。元數據(metadata)總是被記入日誌。 要在根文件系統上指定日誌模式,那麼就必須使用例如"rootflags=data=journal"這樣的內核引導參數 journal 在寫入文件系統之前,所有數據都首先被提交到日誌中。這是最安全、性能最低的模式。 ordered 這是默認的模式,所有數據在它的元數據被提交給日誌之前,被強制直接寫入文件系統。 writeback 寫入順序不定,數據可能在元數據已被提交給日誌之後寫入文件系統。這是效率最高的方式。 它保證了文件系統內部的一致性,但是在崩潰和恢復後文件內可能出現舊數據。 data_err={ignore|abort} 在 ordered 日誌模式下,遇到文件內容的數據出錯時如何處理。 默認值 ignore 忽略錯誤,但是打印出錯誤消息,而 abort 則直接退出。 barrier=0 / barrier=1 開啓/關閉barrier特性。barrier=0 關閉,barrier=1 開啓。ext3 默認關閉此特性。 磁盤上配有內部緩存,以便重新調整批量數據的寫操作順序,優化寫入性能, 因此文件系統必須在日誌數據寫入磁盤之後才能寫 commit 記錄, 若 commit 記錄寫入在先,而日誌有可能損壞,那麼就會影響數據完整性。 barrier 強制日誌以正確的次序提交到磁盤,這樣就可安全的使用磁盤上的內部緩存,代價是降低一些性能。 除非你的硬盤有後備電池之類的裝載,請務必開啓 barrier 特性,否則意外掉電可能會造成數據錯誤。 commit=nrsec 每 nrsec 秒向磁盤上刷新一次數據和 metadata ,默認值是5秒,0表示默認值。 這樣,即使忽然掉電,你也最多隻損失最近 nrsec 秒的數據。較大的 nrsec 值帶來更好的性能。 5 秒或者更小的數字對性能有顯著的不利影響,但是能讓損失降到最低。 vfat uid=value gid=value umask=value dmask=value fmask=value 設置該文件系統上所有文件的 uid/gid/umask/dmask/fmask 默認值是當前進程的 uid/gid/umask/dmask/fmask allow_utime=value 這個選項控制着對mtime/atime的權限檢查 20 如果當前進程和文件的GID相同,就可以更改時間戳 2 所有用戶都可以更改時間戳 默認值從dmask選項中獲得(如果目錄可寫,utime(2)也是被允許的,也就是 ~dmask & 022) utime(2)會檢查當前進程是文件的屬主還是擁有CAP_FOWNER特權,但是FAT文件系統本身並沒有uid/gid信息, 所以嚴格的權限檢查根本行不通。通過這個選項,可以實現一些控制。 codepage=value 設置轉換FAT和VFAT上的短文件名字符時使用的代碼頁。 默認使用內核的FAT_DEFAULT_CODEPAGE值。簡體中文一般使用936代碼頁(codepage=936)。 iocharset=value 用於在8bit字符和16bit Unicode字符轉換時的字符集。默認使用內核的FAT_DEFAULT_IOCHARSET值。 磁盤中的長文件名是以Unicode格式存儲的。反對使用"iocharset=utf8",推薦使用utf8選項。 utf8 UTF8是文件系統安全的8位Unicode編碼,用於終端(console)。它可以在支持它的文件系統中啓用。 utf8=0, utf8=no, utf8=false 表示禁用。設置了'uni_xlate'後,UTF8就自動被禁止。 uni_xlate 將原始的Unicode字符轉換爲特殊的轉義序列。這樣允許你保存和恢復含有任意Unicode字符的文件名。 沒有這個選項的話,對於無法轉換的名稱將使用'?'代替。 轉義字符是':',因爲它在VFAT文件系統中是無效字符。 nonumtail 首先試着創建不帶序列號碼的短名稱,然後再嘗試 name~num.ext 比如"longfilename.txt"將首先嚐試"longfile.txt"是否衝突,然後再嘗試"longfi~1.txt" usefree 直接使用存儲在FSINFO中的"可用簇數(free clusters)"值,而不是通過掃描磁盤來獲得該值。 因爲Windows並不總是更新此值,所以僅在你確定FSINFO中的信息可靠的情況下才能使用此選項。 quiet 打開quiet標誌。即使某些操作失敗也不顯示錯誤信息。小心使用! check=value 可以選擇三種不同的文件名文件名大小寫檢查級別: s[trict] 大小寫敏感 r[elaxed] 忽略大小寫 n[ormal] 默認值。當前等價於r[elaxed] shortname={lower|win95|winnt|mixed} 定義創建和顯示滿足8.3格式的短文件名時的行爲。如果存在對應的長名字,那麼總是顯示長名字。 有四種模式: lower 強制短名稱在顯示時轉換爲小寫;當短名稱不都是大寫時保存一個長名稱。 win95 強制短名稱在顯示時轉換爲大寫;當短名稱不都是大寫時保存一個長名稱。 winnt 原樣顯示短名稱;當短名稱不都是小寫,也不都是大寫時保存一個長名稱。(推薦) mixed 原樣顯示短名稱;當短名稱不都是大寫時保存一個長名稱。這是默認值。 tz=UTC 禁止將文件系統的時間戳在本地時間(Windows)和UTC時間(Linux)之間進行轉換。 在掛載原本就使用UTC時間戳的FAT設備(例如,數碼相機存儲卡)時該選項就很有用處了。 showexec 如果設置了此標記,那麼僅當文件名後綴是EXE,COM,BAT之一時,才擁有執行權限。 默認不設置此標記,所有文件都擁有執行權限。 debug 打開debug標記,將輸出文件系統的版本信息和參數列表(如果參數不一致,也會輸出這些數據)。 sys_immutable 如果設置了此標記,FAT上的ATTR_SYS(系統文件)屬性將被作爲Linux上的IMMUTABLE(只讀)標記處理。 默認不設置此標記。 flush 如果設置了此標記,文件系統將比通常情況下更早的刷新緩存。默認不設置此標記。 rodir 在Windows上,目錄的ATTR_RO(只讀)屬性已經沒有實際意義。 設置此標記可以讓目錄的ATTR_RO屬性生效。 errors=panic|continue|remount-ro 定義遇到錯誤時的行爲:continue忽略錯誤,只將文件系統標記爲不正確的,然後繼續; remount-ro重新只讀掛載它;panic則掛起系統。默認值是remount-ro ntfs nls=name 返回文件名時使用的字符集。與VFAT不同,NTFS不允許文件名中包含無法轉換的字符。 uid=value, gid=value, umask=value 設置文件系統中文件的權限。umask值以八進制值給出。 默認情況下,文件所有者是root,不能被其他人讀取。 ntfs-3g uid=value/gid=value 設置文件和目錄的UID和GID,默認值是當前進程的UID和GID。 umask=value fmask=value dmask=value 設置文件/目錄的umask(8進制),默認值是'000',表示對所有用戶都不屏蔽任何權限。 usermapping=file-name 使用file-name文件代替 .NTFS-3G/UserMapping 作爲用戶映射文件。 如果file-name是絕對路徑,那麼該文件必須已經存在於一個先前已掛載的文件系統上。 如果file-name是相對路徑,那麼該文件將被解釋爲相對於即將掛載的NTFS分區的目錄。 定義了用戶映射文件之後,uid=, gid=, umask=, fmask=, dmask=, dsilent= 選項將被忽略。 inherit 當創建新文件時,根據父目錄中定義的繼承規則設置其屬主和權限, 這個規則違反了Posix標準,但是與Windows標準一致。 用戶映射文件的存在時此選項纔有意義。 ro 以只讀模式掛載。掛載windows休眠狀態下的磁盤時很有用處。 remove_hiberfile 與只讀掛載不同,對於處於休眠狀態的NTFS分區是禁止讀寫掛載的。 要麼喚醒windows並正常關閉,要麼使用這個選項來移除windows休眠文件。 但是請注意,使用此選項後已保存的Windows會話將會被全部移除。小心使用! recover, norecover 在可能的情況下恢復或修復不一致或損壞的NTFS卷,默認值是recover atime 選項會在每次訪問文件時更新inode上的訪問時間。 noatime 禁止更新訪問時間以加速文件操作,並可以阻止硬盤不斷被從休眠狀態中喚醒, 並能達到節省能源和延長硬盤壽命的好處。 relatime 類似於 noatime 但僅在文件的修改時間晚於訪問時間時才更新訪問時間。這是默認值。 它可以讓需要知道文件在最後一次被修改後是否被訪問過的程序正常工作。 show_sys_files 顯示"系統"屬性的文件,默認不顯示。由於Glibc的bug,即使使用此選項,"$MFT"也可能不可見。 無論show_sys_files是否開啓,所有文件都可以直接通過文件名進行訪問。 例如 ls -l '$UpCase' 命令總能夠成功執行。 max_read=value 設置最大讀操作的尺寸,默認爲無限。 silent 除非使用了 uid, gid, umask, fmask, dmask 選項之一開啓了對訪問權限的處理, 否則即使chown/chmod無法正確執行也不報錯。這個選項默認開啓。 streams_interface={none|windows|xattr} 此選項控制用戶如何處理NTFS備選數據流(ADS, Alternate Data Streams)特性。 ADS讓一個文件存在不同的數據流,這個特性平常幾乎不被使用,但幾乎總被惡意程序利用。 none 表示禁用ADS特性,每個文件的備選數據流都將被忽視。 windows 表示正常開啓ADS特性,用戶可以像在Windows環境中一樣使用這個特性(例如 cat file:stream) xattr 表示將ADS特性映射到 xattr ,用戶可以通過 {get,set}fattr 工具操作備選數據流。這是默認值。 efs_raw 以原始(raw)數據流方式訪問NTFS文件系統,這個選項只應該在備份或者恢復的場合下使用。 它會改變文件的顯示尺寸和讀寫操作的方式,這樣加密文件可以在備份或者恢復時不必先進行解密。 關聯到文件的user.ntfs.efsinfo擴展屬性也被保存和恢復。 debug 讓ntfs-3g不從終端脫離,而是打印出許多驅動調試信息。 no_detach 和debug一樣,只是輸出的信息較少。 reiserfs conv 告訴3.6版的reiserfs軟件要掛載的是3.5版的文件系統,對於新創建的對象使用3.6版的格式。 這個文件系統不再與3.5版的工具兼容。 hash={rupasov|tea|r5|detect} 選擇使用哪種hash函數來在目錄內查找文件: rupasov 不要使用這個選項,因爲這種方法可能帶來很高概率的hash碰撞。 tea 隨機性高,碰撞較少,但CPU佔用率較高。可以在r5散列遇到EHASHCOLLISION錯誤時使用。 r5 默認值,也是最好的選擇,只要文件系統目錄樹不是那麼大,沒有特殊的文件名模式。 detect 指示mount檢測正在使用哪種散列函數,將信息寫入reiserfs超級塊。 這個選項只在第一次掛載舊格式的文件系統時纔有用。 hashed_relocation no_unhashed_relocation 調整塊分配器。某些情況下可以帶來性能提高。 noborder 禁止 border allocator 算法,某些情況下可以帶來性能提高。 nolog 禁止文件系統日誌。某些情況下可以帶來性能輕微提高,代價是失去了從崩潰中快速恢復的能力。 即使使用這個選項,reiserfs 仍然進行所有日誌動作,將實際的寫入保存到日誌區域。 nolog 的實現工作還在開發中。 notail 默認情況下,reiserfs 將小文件和"文件零頭(file tails)"直接保存在樹中。 這樣做會給某些工具帶來麻煩,例如LILO(8)。這個選項用來禁止將文件放入樹中。 replayonly 重放日誌中的事務,但不真正掛載文件系統。主要由 reiserfsck 使用。 resize=number remount 的一個選項,允許在線擴展reiserfs分區。指示reiserfs假定設備上有number個塊。 這個選項被設計爲用於邏輯卷管理(LVM)下的設備。 user_xattr 支持"user."擴展屬性,參見attr(5)手冊頁。 acl 是否支持POSIX Access Control Lists特性,參見acl(5)手冊頁。 barrier=none / barrier=flush 開啓/關閉barrier特性。barrier=0 關閉,barrier=1 開啓。reiserfs 默認關閉此特性。 磁盤上配有內部緩存,以便重新調整批量數據的寫操作順序,優化寫入性能, 因此文件系統必須在日誌數據寫入磁盤之後才能寫 commit 記錄, 若 commit 記錄寫入在先,而日誌有可能損壞,那麼就會影響數據完整性。 barrier 強制日誌以正確的次序提交到磁盤,這樣就可安全的使用磁盤上的內部緩存,代價是降低一些性能。 除非你的硬盤有後備電池之類的裝載,請務必開啓 barrier 特性,否則意外掉電可能會造成數據錯誤。 xfs allocsize=size 設置在執行延時分配寫入(delayed allocation writeout)操作時,文件尾預分配的IO緩衝區尺寸(默認64k)。 有效值是頁大小(一般是4k)的2的指數倍,最大值是"1g"。比如:allocsize=16m 默認的尺寸是根據一系列文件系統行爲進行動態預測的。 如果使用此選項指定一個明確的值,那麼將會關閉動態預測算法。 attr2|noattr2 啓用/禁用啓用一個"投機性"改進:在磁盤上存儲內聯擴展屬性。 默認值取決於磁盤上的特徵比特位。建議啓用此特性以提升性能。 barrier|nobarrier 開啓/關閉 barrier 特性。默認爲開啓(barrier)。 磁盤上配有內部緩存,以便重新調整批量數據的寫操作順序,優化寫入性能, 因此文件系統必須在日誌數據寫入磁盤之後才能寫 commit 記錄, 若 commit 記錄寫入在先,而日誌有可能損壞,那麼就會影響數據完整性。 barrier 強制日誌以正確的次序提交到磁盤,這樣就可安全的使用磁盤上的內部緩存,代價是降低一些性能。 除非你的硬盤有後備電池之類的裝載,否則切勿關閉 barrier 特性,否則意外的掉電可能會造成數據錯誤。 discard|nodiscard 是否發出要求塊設備回收無用空間的命令。默認值是"nodiscard"。 此選項對於SSD(固態硬盤)、thin-provision設備(CONFIG_DM_THIN_PROVISIONING)、虛擬機鏡像比較有意義。 [注意]由於開啓此項後對性能有明顯的不利影響,所以推薦使用 Util-Linux 包中的 fstrim 程序進行回收。 grpid|nogrpid 定義新創建的文件應該獲得怎樣的GID。默認值是"nogrpid"。 grpid 表示使用其父目錄的GID; nogrpid 的含義如下: (1)如果新建文件的父目錄沒有 setgid 位,那麼使用創建此文件的進程的GID。 (2)如果新建文件的父目錄帶有 setgid 位,那麼使用其父目錄的GID; (3)並且如果新建的是目錄時,還要同樣設置 setgid 位。 filestreams 讓數據分配器使用文件流(filestreams)分配模式跨越整個文件系統, 而不是僅僅侷限於使用分配好的目錄。 ikeep|noikeep ikeep 表示不刪除空白的 inode 集羣,而是將它們依然保留在磁盤上。 noikeep 表示將空白的 inode 集羣作爲自由空間回收使用。 默認值是"noikeep"。 inode32|inode64 inode32 表示僅創建32位的 inode 。這主要是出於兼容老舊系統的原因。 inode64 允許在文件系統的任意位置創建 inode,包括那些需要64位 inode 編號的位置。 默認值是"inode64"。 largeio|nolargeio nolargeio 表示系統調用stat(2)儘可能報告較小的最佳IO參數"st_blksize"(通常等於內存頁的尺寸), 以避免用戶空間應用程序低效率的 read/modify/write 磁盤操作。 largeio 表示最佳IO參數"st_blksize"的值: (1)在指定了"swidth"值的文件系統上,等於"swidth"的值; (2)在未指定"swidth"值、但指定了"allocsize"值的文件系統上,等於"allocsize"的值; (3)如果"swidth"和"allocsize"都未指定,那麼其行爲和"nolargeio"完全一樣。 默認值是"nolargeio"。 logbufs=value 設置內存中的日誌緩存塊數量。取值範圍是2-8之間。默認值是"8"。 數字越大性能越好,但是在內存緊張的嵌入式系統上,可以考慮減小此值。 logbsize=value 設置內存中每個日誌緩存塊的大小。取值範圍是:16k,32k,64k,128k,256k 默認值是 32k 與 log_sunit 中的較大者。 logdev=device rtdev=device 使用外部元數據日誌和/或實時設備。 一個XFS文件系統最多可由3部分組成:data, log(可與data分離), real-time(可選)。 noalign 分配數據時不按照條帶單元的邊界進行對齊。 此選項僅適用於 mkfs 在格式化時使用了非零的數據對齊參數(sunit, swidth)所創建的文件系統。 norecovery 在掛載文件系統時不執行日誌恢復(log recovery)操作。 如果文件系統曾經被異常卸載(如掉電),那麼使用此選項將會導致文件系統出現不一致, 比如一些文件或目錄將無法訪問。 使用此選項的同時必須以只讀模式掛載文件系統,否則掛載將會失敗。 nouuid 在掛載文件系統時不檢查 uuid 是否重複。 這在掛載LVM快照時很有用(通常與"norecovery"聯用以掛載只讀LVM快照)。 noquota 強制關閉所有文件系統限額功能 uquota/usrquota/uqnoenforce/quota 啓用針對單個用戶的磁盤限額功能。需要內核開啓 CONFIG_XFS_QUOTA 選項。詳見 xfs_quota(8) 手冊頁。 gquota/grpquota/gqnoenforce 啓用針對用戶組的磁盤限額功能。需要內核開啓 CONFIG_XFS_QUOTA 選項。詳見 xfs_quota(8) 手冊頁。 pquota/prjquota/pqnoenforce 啓用針對項目(文件夾)的磁盤限額功能。需要內核開啓 CONFIG_XFS_QUOTA 選項。詳見 xfs_quota(8) 手冊頁。 sunit=value swidth=value 用於指定RAID設備或者stripe卷的條帶單元大小(sunit)與寬度(swidth)。 此選項僅適用於 mkfs 在格式化時使用了非零的數據對齊參數(sunit, swidth)所創建的文件系統。 "value"值的含義是512字節(一個扇區)的倍數,必須是正整數。 所設定的 sunit/swidth 值必須符合文件系統的實際對齊特徵。 也就是說,合法的 sunit 值必須以2的指數倍增長(最小=1);而合法的 swidth 值又必須是 sunit 的整數倍。 [注意]必須同時指定或同時忽略這兩個選項,不應該只單獨設置其中之一。 通常僅在文件系統創建之後,底層RAID的磁盤排列又發生改變的情況下,才需要使用此選項。 例如,向一個 RAID5 lun中新增一塊硬盤,並重新整理(reshape)之後。 swalloc 在當前文件的尾部被擴展,並且文件的大小超過條帶寬度的時候,數據的分配將會被向上取整到條帶寬度的邊界。 wsync 強制以同步方式執行所有文件系統名字空間的操作。 這可以確保在文件系統名字空間操作(create, unlink 等)完成之後,所作變更立即被永久寫入磁盤中。 此選項對於高可用羣集(HA)環境很有意義。在HA環境中,失敗切換(failover)不應被客戶端感知, 也就是說,客戶端不應該在失敗切換的過程中以及完成之後,看到不一致的名字空間。 iso9660 ISO9660 是一種標準,描述了用於 CD-ROM 的文件系統結構。 這種文件系統類型也在一些 DVD 中出現。另外參見 udf 文件系統。 通常 iso9660 文件名以8.3格式出現(對文件名長度的限制與DOS相同),另外所有字符都是大寫。 沒有文件所有者,權限位,鏈接數等等,也沒有對塊設備/字符設備作出擴展。 RockRidge 是對 iso9660 的擴展,提供了所有這些 unix 文件系統的特性。 使用 RockRidge 的時候,每個目錄記錄中都有擴展域來提供這些附加信息。 這樣的文件系統與普通的UNIX文件系統沒有什麼區別(當然,它是隻讀的)。 Joliet 是 Microsoft 對 iso9660 的擴展,允許在文件名中使用 Unicode 字符,也允許長文件名。 norock nojoliet 禁止RockRidge/Joliet擴展特性,即使它們確實存在。 check={r[elaxed]|s[trict]} relaxed 表示對文件名進行大小寫無關的匹配。 strict 表示對文件名進行嚴格的大小寫敏感匹配,這是默認值。 uid=value gid=value 設置文件系統上所有文件的UID/GID.可能會覆蓋RockRidge擴展中找到的信息。 默認值皆爲'0' map={n[ormal]|o[ff]|a[corn]} 對於非RockRidge的卷: normal 將文件名統一轉換成小寫字母,丟棄結尾的';1'並將';'轉換成'.',這是默認值。 off 不對文件名做任何轉換 acorn 與 normal 類似,但是如果存在Acorn擴展就應用它。 mode=value 對於非RockRidge的卷,指定捲上所有文件/目錄的權限(8進制值)。 默認值是所有人都有讀權限。 unhide 顯示隱藏文件(如果常規文件與隱藏文件同名,那麼常規文件將不可見,這通常不是你想要的) block={512|1024|2048} 明確指定塊的大小,默認值是 block=1024 cruft 嘗試掛載被錯誤格式化的CD。如果文件長度的高位字節中包含垃圾信息(被錯誤格式化), 使用此選項後,將忽略高位字節,CD依然可以被掛載,但是文件的大小就只能不超過16MB了。 session=x 設置多區段 CD 中的區段號。 sbsector=xxx 區段從 xxx 扇區開始。 下列選項僅用於 Microsoft Joliet 擴展: iocharset=value 用於將Unicode字符轉換到ASCII字符時使用的字符集(Joliet文件名以Unicode格式存儲)。 反對使用"iocharset=utf8",推薦使用utf8選項。默認值是 iso8859-1 utf8 指定Unicode文件名的存儲編碼爲UTF-8格式。 udf 統一光盤格式(Universal Disk Format)採用標準的封包寫入(Packet Writing)技術, 將CD-R當作硬盤來使,用戶可以在光盤上修改和刪除文件。 其基本原理是在進行燒錄時先將數據打包,並在內存中臨時建立一個特殊的文件目錄表, 同時接管系統對光盤的訪問。被刪除的文件或文件中被修改的部分其實仍存在CD-R光盤中, 修改後的部分則以單獨的數據塊寫入光盤,只不過在內存的目錄表中, 通過設定允許和不允許訪問以及特殊鏈接等重定向尋址方法將數據重新組合, 讓系統找不到“老數據”,或讓新數據替換老數據,從而達到刪除與修改的目的。 不過,在增加便利性的同時UDF也減少了有效存儲空間,而且還要事先將CD-R與CD-RW盤片進行格式化, 其中CD-RW盤片格式化後的容量要減少近100MB gid= 設置默認的GID uid= 設置默認的UID umask= 設置默認的umask(8進制) mode= 設置默認的文件權限 dmode= 設置默認的目錄權限 bs= 設置塊大小(默認爲2048字節) unhide 顯示隱藏文件 undelete 顯示已經被刪除的文件 adinicb 在inode中嵌入數據(默認) noadinicb 不在inode中嵌入數據 shortad 使用短ad longad 使用長ad(默認) nostrict 取消嚴格一致性 iocharset 設置NLS字符集 novrs 跳過卷序列識別,用於排錯 session= 設置CDROM session(從"0"開始計數),默認值是上一次的session值。 anchor= 設置標準的anchor位置,默認值是256 lastblock= 設置文件系統最後的block LOOP設備 可以通過下面的命令掛載一個LOOP設備: mount /tmp/disk.img /mnt -t vfat -o loop=/dev/loop3 該命令會將 /tmp/disk.img 文件安裝爲 /dev/loop3 設備,然後再將它掛載到 /mnt 如果沒有明確指定loop設備,而只是給了個'-o loop'選項,例如: mount /tmp/disk.img /mnt -o loop mount 將會嘗試自己尋找一個未被使用的loop設備(可能是 /dev/loop5 這樣的)。 如果連'-o loop'也沒有,並且未指定文件系統類型(但能被libblkid識別), 那麼 mount 將爲 /tmp/disk.img 文件自動創建一個loop設備,例如: mount /tmp/disk.img /mnt mount -t ext3 /tmp/disk.img /mnt 這種類型的掛載可以識別四個選項: loop, offset, sizelimit, encryption 事實上,這四個選項都是來自losetup(8)的選項。 因爲 Linux-2.6.25 之後的內核支持loop設備自動銷燬(auto-destruction), 所以任何由 mount 分配的loop設備都將被 umount 釋放,而不必依賴於/etc/mtab文件。 當然,你也可以手動使用'losetup -d'或'umount -d'來釋放loop設備。 返回值 mount 的返回值可以由下面的值進行比特位疊加 0 成功 1 錯誤的調用或權限 2 系統錯誤(內存不夠, 不能 fork, 沒有更多的loop設備) 4 mount 內部錯誤 8 用戶中途打斷 16 寫入或鎖定 /etc/mtab 失敗 32 掛載失敗 64 部分掛載成功(用於 -a 選項) 幫助程序 外部掛載幫助程序的語法是: /sbin/mount.TYPE spec dir [-sfnv] [-o options] [-t type.subtype] TYPE 是文件系統類型,而 -sfnvo 選項的含義與 mount 選項相同。 -t 選項用於支持文件系統的子類型,例如:/sbin/mount.fuse -t fuse.sshfs mount 不會將下列選項傳遞給 mount.TYPE 幫助程序: unbindable, runbindable, private, rprivate, slave, rslave, shared, rshared, auto, noauto, comment, x-*, loop, offset, sizelimit 所有其他選項都以逗號分隔的列表的形式作爲 -o 選項的參數傳遞給 mount.TYPE 幫助程序。 文件 /etc/fstab 文件系統表 /etc/mtab 已掛載的文件系統列表 /etc/mtab~ 鎖文件 /etc/mtab.tmp 臨時文件 /etc/filesystems 一系列將要嘗試的文件類型 環境變量 LIBMOUNT_FSTAB=path fstab 文件的位置 LIBMOUNT_MTAB=path mtab 文件的位置 LIBMOUNT_DEBUG=0xffff 開啓調試輸出 BUGS 掛載一個已經損壞的文件系統時可能會導致系統崩潰。 只有ext2, ext3, vfat文件系統真正支持同步更新( -o sync 和 -o dirsync ) -o remount 不一定能改變掛載參數。例如,ext2系列的sb參數,fat系列的gid/umask參數 僅當設備的 label 或 uuid 存在於 /proc/partitions 中的時候,才能通過 label 或 uuid 進行掛載。 /etc/mtab 和 /proc/mounts 的內容可能會不一致,/etc/mtab 的內容取決於 mount 命令行選項。 /proc/mounts 的內容取決於內核以及其他設置(遠端的NFS服務器)。 mount 命令可能會報告錯誤的NFS掛載信息,而 /proc/mounts 文件中的信息可靠性更高。 參見 mount(2), umount(2), fstab(5), umount(8), swapon(8), findmnt(8), nfs(5), xfs(5), e2label(8), xfs_admin(8), mountd(8), nfsd(8), mke2fs(8), tune2fs(8), losetup(8)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章