我們知道一塊磁盤是可以被分區成多個分區的(partition),以Windows的觀點來看,你可能會有一顆磁盤并且將他分區成為C:, D:, E:盤,那個C, D,E就是分區。Linux的設備都是以文件的型態存在,磁盤設備接口的不同也早就了磁盤文件名的不同。即IDE接口的磁盤設備文件名都是/dev/hd[a-z]的格式,例如:/dev/hda./dev/hdb。SCSI, SATA, SAS, USB接口的磁盤設備文件名都是:/dev/sd[a-z],例如sda.sdb,磁盤設備的命名主要是根據Linux核心偵測到磁盤的順序來進行的,例如你有兩塊SATA接口的硬盤要插在有六個SATA插槽的主板上,一塊插在SATA1接口上一塊插在STAT3接口上,因為是使用偵測到的順序來決定設備文件名,并非與實際插槽代號有關,所以這兩塊磁盤的命名就是SATA1插槽上為/dev/sda,而SATA3插槽上的為/dev/sdb。那么同一設備上的不同分區表示就是1.2.3.4.5這樣,/dev/sda磁盤上的分區命名為/dev/sda1,/dev/sda2....注意:centos6和centos7統統將硬盤設備文件標識為/dev/sda[a-z]#
磁盤分區
兩種分區方式: MBR, GPT
早期的 Linux 系統為了兼容Windows的磁盤,因此使用的是支持 Windows 的 MBR(Master Boot Record, 主要開機紀錄區)的方式來處理開機管理程序與分區表!而開機管理程序紀錄區與分區表則通通放在磁盤的第一個扇區, 這個扇區通常是512Bytes的大?。ㄅf的磁盤扇區是512Bytes)所以說,第一個扇區及(0扇區)512Byte會有兩個數據;
主要開機記錄區(Master Boot Record, MBR):主要用于引導系統啟動,有446 Bytes
分區表(partition table):記錄整顆硬盤分區的狀態,有64 Bytes
由于分區表所在區塊僅有64 Bytes容量,而每個分區要占用16Bytes,因此最多僅能記錄4個分區,每個記錄區記錄了該區段的啟始與結束的柱面號碼。假設這個設備名稱為/dev/sda/那么這個4個分區的命名分別是/dev/sda1,sda2,sda3,sda4.而這4個分區又被稱為主分區和擴展分區,通常這4個分區為3個主分區和一個擴展分區,而擴展分區又可延伸N個邏輯分區(注意;一旦運用擴展分區,即此擴展分區不在存儲實際數據,而是存儲指向邏輯分區的信息,邏輯分區的設備名只能從5開始。)
GPT支持128個分區,已經沒有所謂的主、延伸、邏輯分區的概念,每個都可以視為是主分區,使用64位,支持8Z(512Byte/block ) 64Z (4096Byte/block)GPT磁盤分區結構解決了MBR只能分4個主分區的的缺點,并且支持大硬盤,分區結構清晰簡單而且有備份。
使用128位UUID 表示磁盤和分區 GPT分區表自動備份在頭和尾兩份,并有CRC校驗位
UEFI (統一擴展固件接口)硬件支持GPT,使操作系統啟動
結構如;
保護MBR區:與 MBR 模式相似的,記錄開機引導信息程序。
GPT頭:這個部份紀錄了分區表本身的位置與大小,同時紀錄了備份用的GPT分區放置的位置,同時放置了分區表的檢驗碼(CRC32),操作系統可以根據這個檢驗碼來判斷GPT是否正確。若有錯誤,還可以通過這個紀錄區來取得備份的GPT(磁盤最后的那個備份區塊) 來恢復GPT的正常運行!
分區表:實際記錄分區信息處
管理分區工具;fdisk,parted,sfdisk
fdisk 創建MBR分區,也支持GPT,對于一塊硬盤,最多只能管理15分區
gdisk 創建GPT分區
GNU parted 高級分區操作(創建、復制、調整大小等等)
partprobe-重新設置內存中的內核分區表版本
fdisk /dev/sdb
gfisk /dev/sdb 類fdisk 的GPT分區工具
fdisk命令
fdisk -l [-u] [device...]:列出指定磁盤設備上的分區情況;查看磁盤的分區信息
]# fdisk -l /dev/sda Disk /dev/sda: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000e3d03 ================================================================== Device Boot Start End Blocks Id System /dev/sda1 * 1 64 512000 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 64 15666 125316096 8e Linux LVM
上面可看到設備名稱是/dev/sda,大小為128G,等信息....,下邊一欄則顯示的是分區信息,可看到目前有兩個分區,分別sda1和sda2,而sda1作為了系統的引導分區,開始柱面為1,結束柱面為64,塊大小,分區類型ID等等...(注意;對cenots6來說start是開始柱面,End是結束柱面,對centos7來說start是開始扇區,End是結束扇區)
fdisk device(設備)
fdisk提供了一個交互式接口來管理分區,它有許多子命令,分別用于不同的管理功能;所有操作均在內存中進行,沒有直接同步到磁盤;直到使用w命令保存到磁盤上才會生效
n:創建新分區
d:刪除已有分區
t:修改分區類型
l:查看所有已知id
w:保存并且退出
q:不保存并退出
m:查看幫助信息
p:顯示現有分區信息
示例
]# fdisk /dev/sda WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): n 輸入n創建新分區 Command action e extended :擴展分區 p primary partition (1-4):主分區 p:輸入p創建主分區 Partition number (1-4): 3 選擇主分區號 First cylinder (7859-15665, default 7859): 從哪個柱面開始 Using default value 7859 直接回車 Last cylinder, +cylinders or +size{K,M,G} (7859-15665, default 15665): +10G 創建一個10G的分區 這里就加10G Command (m for help): p 回車后敲p命令 可以看到/dev/sda3主分區已經創建成功 Disk /dev/sda: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0004badb Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 7859 62914560 8e Linux LVM /dev/sda3 7859 9164 10489446 83 Linux Command (m for help): n 接下來還可以繼續創建分區,但是我們現在已經創建了3個主分區了,如果還要創建主分區的話 剩余的磁盤空間就要全部給其使用,(一塊磁盤最多只能有四個主分區)否則余出的空間就不能用了。 如果我們要多創建幾個分區,這里我們選擇創建擴展分區。 Command action e extended p primary partition (1-4) e Selected partition 4 First cylinder (9165-15665, default 9165): (這里直接敲回車,表示把起始柱面9165到結束柱面15665全部給此擴展分區) Using default value 9165 Last cylinder, +cylinders or +size{K,M,G} (9165-15665, default 15665): Using default value 15665 Command (m for help): p 再次敲p可看到編號為4的擴展分區已經創建 Disk /dev/sda: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0004badb Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 7859 62914560 8e Linux LVM /dev/sda3 7859 9164 10489446 83 Linux /dev/sda4 9165 15665 52219282+ 5 Extended Command (m for help): n 再次敲n可繼續創建邏輯分區,如果直接退出 再次使用fdisk命令創建新的擴展分區也可創建邏輯分區,如下 Command (m for help): n Command action l logical (5 or over) p primary partition (1-4) l 敲l選擇創建邏輯分區 First cylinder (7859-15665, default 7859): 邏輯分區起始柱面,直接敲回車默認為7859開始(自己指定起始柱面只需要輸入柱面號即可) Using default value 7859 :直接敲回車默認為7859開始 Last cylinder, +cylinders or +size{K,M,G} (7859-15665, default 15665): +10G 輸入10G選擇創建一個10G大小的邏輯分區 Command (m for help): p 敲p顯示分區列表,可看到/dev/sda5邏輯分區已經創建成功 Disk /dev/sda: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0004badb Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 7859 62914560 8e Linux LVM /dev/sda4 7859 15665 62708728+ 5 Extended /dev/sda5 7859 9164 10489414+ 83 Linux Command (m for help): w 敲w保存退出。此時會提示設備資源忙 The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 16: Device or resource busy. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks.
執行cat /proc/partitions 查看設備列表,發現sda3,4,5并沒有被內核識別
]# cat /proc/partitions major minor #blocks name 8 0 125829120 sda 8 1 204800 sda1 8 2 62914560 sda2 253 0 20971520 dm-0 253 1 2097152 dm-1 253 2 10485760 dm-2 253 3 20971520 dm-3
執行partx -a /dev/sda.(同步分區列表)讓內核重讀設備,一次不行就兩次
]# partx -a /dev/sda
然后再次cat /proc/partitions
]# cat /proc/partitions major minor #blocks name 8 0 125829120 sda 8 1 204800 sda1 8 2 62914560 sda2 注:此處因為誤操作在創建sda3的時候沒有敲擊w保存退出,所有看不到sda3 8 4 31 sda4 8 5 10489414 sda5 253 0 20971520 dm-0 253 1 2097152 dm-1 253 2 10485760 dm-2 253 3 20971520 dm-3
注意:在已經分區并且已經掛載其中某個分區的磁盤設備上創建的新分區,內核可能在創建完成后無法直接識別;
查看:cat /prot/partitions
通知內核強制重新讀取磁盤分區表;
centos5:partprobe[device]
centos6,7:partx,kpartx
partx-a [device]
kpartx-af[device]
有時候可能需要執行兩次
至此分區創建完成
完整示例如下
[root@localhost ~]# fdisk /dev/sda WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 3 First cylinder (7859-15665, default 7859): Using default value 7859 Last cylinder, +cylinders or +size{K,M,G} (7859-15665, default 15665): +10G Command (m for help): p Disk /dev/sda: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000483ba Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 7859 62914560 8e Linux LVM /dev/sda3 7859 9164 10489446 83 Linux Command (m for help): n Command action e extended p primary partition (1-4) e Selected partition 4 First cylinder (9165-15665, default 9165): Using default value 9165 Last cylinder, +cylinders or +size{K,M,G} (9165-15665, default 15665): Using default value 15665 Command (m for help): p Disk /dev/sda: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000483ba Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 7859 62914560 8e Linux LVM /dev/sda3 7859 9164 10489446 83 Linux /dev/sda4 9165 15665 52219282+ 5 Extended Command (m for help): n First cylinder (9165-15665, default 9165): Using default value 9165 Last cylinder, +cylinders or +size{K,M,G} (9165-15665, default 15665): +10G Command (m for help): p Disk /dev/sda: 128.8 GB, 128849018880 bytes 255 heads, 63 sectors/track, 15665 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000483ba Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 7859 62914560 8e Linux LVM /dev/sda3 7859 9164 10489446 83 Linux /dev/sda4 9165 15665 52219282+ 5 Extended /dev/sda5 9165 10470 10490413+ 83 Linux Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 16: Device or resource busy. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks. [root@localhost ~]# partx -a /dev/sda BLKPG: Device or resource busy error adding partition 1 BLKPG: Device or resource busy error adding partition 2 [root@localhost ~]# partx -a /dev/sda BLKPG: Device or resource busy error adding partition 1 BLKPG: Device or resource busy error adding partition 2 BLKPG: Device or resource busy error adding partition 3 BLKPG: Device or resource busy error adding partition 4 BLKPG: Device or resource busy error adding partition 5
刪除分區用
partx -d -n M:N /dev/DEVICE
centos6: –nr N-M
CentOS 5, 7: 使用partprobe
partprobe [/dev/DEVICE]
修改分區類型
以第六個分區為例如下
]# fdisk /dev/sda Command (m for help): l 敲擊l查看分區類型 0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris 1 FAT12 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT- Command (m for help): t 鍵入t選項 修改分區類型 Partition number (1-6): 6 鍵入要修改的分區編號 Hex code (type L to list codes):82 鍵入要修改的類型編號 Command (m for help): p 再次查看列表 /dev/sda6 10471 10732 2104483+ 82 Linux swap / Solaris 修改成功
修改成功,現在磁盤分區和修改分區類型都已搞定,下面進入磁盤分區下的文件系統。
文件系統管理工具:
創建文件系統工具
mkfs;
mkfs.ext2(無日志功能),mkfs.ext3,mkfs.ext4,mkfs.xfs,mkfs.vfat...
檢測及修復文件系統的工具
fsck;
fsck.ext2,fsck.ext3,..
查看其屬性的工具
dumpe2fs,tune2fs
調整文件系統特性:
tune2fs
內核文件系統的組成部分:
如果一個文件系統想要在系統上運行起來的話,必須要裝載對應的模塊
lsmod:查看當前系統內核已經裝載的模塊,如果內核相應識別一個文件系統,必須先裝載這個模塊
文件系統驅動:由內核提供,
文件系統管理工具:由用戶空間的應用程序提供
ext系列文件系統的管理工具:
mkfs.兩次tab可看到多種文件系列
mkfs.ext2,mkfs.ext3,mkfs.ext4(向前兼容較老的版本)
mkfs -t ext2=mkfs.ext2
ext2:沒有日志功能,ext3,4有日志功能,ext4性能有很大提升,建議使用ext4文件系統
命令
mkfs.ext2 /dev/sda#(敲下回車,及完成格式化文件系統)
[root@localhost ~]# mkfs.ext2 /dev/sda6 mke2fs 1.41.12 (17-May-2010) Filesystem label= 文件系統卷標,此處沒有指明,所以為空 OS type: Linux 操作系統類型 Block size=4096 (log=2) 塊大小,默認為4K Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 131648 inodes, 526120 blocks 一共給此分區創建了多少個inode,和多少個數據塊 26306 blocks (5.00%) reserved for the super user 其中有多個數據塊預留給超級管理員的,默認為總數據塊數的5% First data block=0 第一個數據塊的編號從0開始 Maximum filesystem blocks=541065216 文件系統最大的數據塊編號 17 block groups 一共多少個塊組 32768 blocks per group, 32768 fragments per group 每個組內有多少個塊, 7744 inodes per group 每個組中有多少個inode Superblock backups stored on blocks: 超級塊備份在哪些數據塊的塊編號 32768, 98304, 163840, 229376, 294912 Writing inode tables: done 正在寫入inode表,這里顯示寫入完成 Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 34 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
blkid /dev/sda#
可查看文件系統類型
示例
]# blkid /dev/sda6 /dev/sda6: UUID="8353a98f-ac7f-413c-a79a-8277ad2a71ba" TYPE="ext2"
每一個設備都有一個隨機的UUID;全局唯一標識符
再次執行mkfs.ext3 /dev/sda6,將ext2文件系統格式化為ext3。
]# mkfs.ext3 /dev/sda6 Writing inode tables: done Creating journal (16384 blocks): done 多了一項 創建日志成功,因為ext3文件系統支持日志功能
當然了也可以再此格式話為ext4格式,ext4格式同樣支持日志功能,而且在單個文件和單個文件系統的大小比ext3性能更強大
centos6 默認不支持xfs
如果要安裝得先安裝xfsprogs工具;可用yum進行安裝,然后在執行]# mkfs.xfs /dev/sda6 -f 強制將文件系統格式化為xfs格式
# mkfs.xfs /dev/sda6 -f
ext系列文件系統專用管理工具:mke2fs
mke2fs [ option] device
-t{ext2|ext3|ext4}:指明要創建的文件系統類型
mkfs.etx4=mkfs -t ext4=mke2fs -t ext4
-b{1024|2048|4096}:指明文件系統的塊大??;
示例
]# mke2fs -b 1024 /dev/sda6
-L LABEL:指明卷標;
]# mke2fs -t ext2 -L mydata -b 2048 /dev/sda6
-j:創建有日志功能的文件系統ext3;
mke2fs -j = mke2fs -t ext3 = mkfs -t ext3 = mkfs.ext3
]# mke2fs -j /dev/sda6
-i#:bytes-per-inode:指明inode與字節的比率;即每多少字節創建一個inode
-N#:直接指明要給此文件系統創建的inode的數量;
-m#:指定預留的空間,百分比;
-O[^]FEATURE:以指定的特性創建目標文件系統,不加^表示啟用此特性,加^表示關閉此特性
e2label命令:卷標的查看與設定
查看:e2label device
]# e2label /dev/sda6
設定:e2label device LABEL
]# e2label /dev/sda6 ali ]# e2label /dev/sda6 ali
tune2fs命令:查看或修改ext系統文件系統的某些屬性
adjust tunable filesystem parameters on ext2/ext3/ext4 filesystems:
注意:塊大小創建后不可修改
tune2fs [option]device
-l:查看超級塊的內容;
]# tune2fs -l /dev/sda6 tune2fs 1.41.12 (17-May-2010) Filesystem volume name: ali 卷標 Last mounted on: <not available> 最后一次什么時候掛載的,當前顯示不可用 Filesystem UUID: 32592f02-1828-416d-8ef5-4bdcf2d46935 UUID Filesystem magic number: 0xEF53 文件系統的魔數,文件系統類型的專用標識 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype sparse_super large_file Filesystem flags: signed_directory_hash Default mount options: (none) 默認的掛載選項 Filesystem state: clean 文件系統狀態 此處clean(清潔)表示沒有任何文件損壞 Errors behavior: Continue Filesystem OS type: Linux Inode count: 131648 inode數量 Block count: 526120 塊數量 Reserved block count: 26306 Free blocks: 500671 剩余塊數量 Free inodes: 131637 剩余inode數量 First block: 0 Block size: 4096 塊大小 Fragment size: 4096 Reserved GDT blocks: 128 預留給GDT的塊 Blocks per group: 32768 每組多少塊 Fragments per group: 32768 每組多少個片段 Inodes per group: 7744 每組多少個inode Inode blocks per group: 484 每組多少個塊用來放inode Filesystem created: Wed Aug 24 21:07:43 2016 Last mount time: n/a Last write time: Wed Aug 24 21:20:40 2016 Mount count: 0 Maximum mount count: 20 Last checked: Wed Aug 24 21:07:43 2016 Check interval: 15552000 (6 months) Next check after: Mon Feb 20 21:07:43 2017 Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Journal inode: 8 Default directory hash: half_md4 Directory Hash Seed: 14d62c4d-b7bd-4458-abc9-72a48dbf45cc Journal backup: inode blocks
修改指定文件系統的屬性
-j:ext2 -->ext3
-L:LABEL:修改卷標
-m #:調整預留空間百分比
-O[^]FEATHER:開啟或關閉某種特性;
-o[^]mount_option:開啟或關閉某種默認掛載選項
acl
^acl
dumpe2fs命令:顯示ext系列文件系統的屬性信息
dumpe2fs [-h]device
實現文件系統檢測的工具
因進程以外終止或系統崩潰等原有導致寫入操作非正常終止時,可能會造成文件損壞;此時,應該檢測并修復文件系統;建議,離線進行
ext系列文件的專用工具;
e2fsck:check a Linux ext2/ext3/ext4 file system
e2fsck[option]device
-y:對所有問題自動回答為yes
-f:即使文件系統處于clean狀態,也要強制進行檢測
fsck:check and repair a Linux file system(通用所有文件系統)
修復的工作特性就是把不連續的文件刪除進行的
-t fstype:指明文件系統類型
fsck -t ext4 = fsck.ext4
-a:無需交互而自動檔修復所有錯誤;(不建議)
-r: 交互式修復;
centos6如果使用xfs文件系統
#yum -y install xfsprogs
創建:mkfs.xfs
檢測:fsck.xfs
blkid命令:
blkid device
blkid -L label:根據label定位為設備
blkid -U UUID:根據UUID定位設備
swap文件系統
linux上的交換分區必須使用獨立的文件系統
且文件系統的system id 必須為82
創建swap設備:mkswap命令
mkswap [option] device
-L label:指明卷標
-f:強制
]# mkswap /dev/sda6 Setting up swapspace version 1, size = 2104476 KiB no label, UUID=7e42ac9c-21f4-45b4-80b3-830d6e12611b
創建windows文件系統
#mkfs.vfat device
windows無法識別linux的文件系統;因此,存儲設備需要兩種系統之間交叉使用時,應該使用windows和linux同時支持的文件系統;fat32(vfat);
文件系統的使用:
首先要掛載:mount命令和umount命令
跟文件系統之外的其他文件系統要想能夠被訪問,都必須通過“關聯”至根文件系統上的某個目錄來實現,此關聯操作即為“掛載”;此目錄即為“掛載點”;、
掛載點:mount_point,用于作為另一個文件系統的訪問入口
(1)事先存在
(2)應該使用未被或不會被其他進程使用到的目錄
(3)掛載點下原有的文件將會被隱藏;
mount命令:
mount [-nrw][-fnrsvw] [-t vfstype] [-o options] device dir
命令選項:
-r:readonly,只讀掛載;
-w:read and write,讀寫掛載
-n:默認情況下,設備掛載或卸載的操作會同步更新至/etc/mtab文件中;-n用于禁止此特性;
-t vfstype:指明要掛載的設備上的文件系統雷系;多數情況下可省略,此時mount會通過blkid來判斷要掛載的設備的文件系統類型
-L LABEL:掛載時以卷標方式指明設備;
mount -L LABEL dir
-U UUID:掛載時以UUID方式指明設備;
-o option:掛載選項
sync/async:同步/異步操作;
atime/noatime:文件或目錄在被訪問時是否更新其訪問時間戳;
diratime/nodirname:目錄在被訪問時是否更新其訪問時間戳;
remount:重新掛載
acl:支持使用facl功能
#mount -o acl device dir
#tune2fs -o acl device
ro:只讀
rw:讀寫
dev/nodev:此設備上是否允許創建設備文件;
exec/noexec:是否允許運行此設備上的程序文件;
auto/noauto:
user/nouser:是否允許普通用戶掛載此文件系統;
suid/nosuid:是否允許程序文件上的suid和sgid特殊權限生效
defaults:Use default options: rw, suid, dev, exec, auto, nouser, async, and relatime.
一個使用技巧:
可以實現將目錄綁定在另一個目錄上,作為其臨時訪問入口;
mount --bind 源目錄 目標目錄
查看當前系統上所有已掛載的設備
#mount
#cat /etc/matb
#cat /proc/mounts
掛載光盤;
mount -r /dev/cdrom mount_point
光盤設備文件:/dev/cdrom
掛載U盤:
實現識別u盤的設備文件;
umount命令:
umount device|dir
注意:正在被進程訪問到的掛載點無法被卸載;
查看被哪個或者哪些進程所用:
#lsof mount_point
#fuser -v mount_point
終止所有正在訪問某掛載點的進程
#fuser -km mount_point
掛載本地的回環設備;
#mount -o loop /path/to/some_loop_file mount_point
交換分區的啟用和禁用:
創建交換分區的命令:mkswap
啟用:swapon
swap [option][option]
-a:定義在/etc/fstab文件中的所有swap設備
禁用:swapoff
swapoff device
設定除了根文件系統以外的其他文件系統能夠開機時自動掛載:/etc/fstab文件
每行定義一個要掛載的文件系統及其相關屬性
6個字段:
(1)要掛載的設備
設備文件
LABEL
UUID
偽文件系統:如sysfs,proc,tmpts
(2)掛載點
swap類型的設備的掛載點為swap
(3)文件系統類型:
(4)掛載選項
defaults:使用默認掛載選項:
如果要同時指明多個掛載選項,彼此間以逗號分隔
(5)轉儲頻率(備份)
0:從不備份
1:每天備份
2:每隔一天備份
(6)自檢次序
0:不自檢
1:首先自檢,通常只能是根文件系統可用1
2:次級自檢
mount -a :可自動掛載定義在此文件中的所支持自動掛載的設備;
兩個命令:df和du
df命令:
df[option]...[file]
-l:僅顯示本地文件的相關信息
-h:human-readable
-i:顯示inode的使用狀態而非blocks
du命令:
du[option]...[file]
-s:sumary
-h:human-readble
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。