CentOS 7磁盘分区及文件系统管理
一、CentOS 7磁盤及文件系統特性
????在CentOS 7,不管是IDE硬盤還是SATA硬盤,在linux里面的硬盤設備文件標識都為/dev/sd[a-z]。(當然這一特性在CentOS 6中就已經實現)
????CentOS 7默認使用的文件系統為xfs。
二、磁盤分區管理工具
????磁盤分區管理工具有很多,在CentOS 7上也支持傳統的fdisk工具,還有parted,sfdisk,本文以fdisk介紹,如果對parted、sfdisk等工具有興趣可以看我的另外一篇博客:http://xinzong.blog.51cto.com/10018904/1750472?淺談在Linux中磁盤超出2T的管理方式
?fdisk命令:
????????fdisk -l [-u] [device...]
????1、查看分區表信息
????????fdisk -l [device] ?# 不加任何設備,默認查看所有
????2、管理分區
????????fdisk提供了一個交互式的借口來管理分區,他有許多子命令,分別實現不同管理功能;特點是在內存中完成,不直接同步到硬盤上,可通過w來保存。
????????常用命令:
????n:創建新分區
????d:刪除已有分區
????t:修改分區類型
????l:查看所有已經ID
????w:保存并退出
????q:不保存并退出
????m:查看幫助信息
????p:顯示現有分區信息
????注意:使用w保存退出后,內核不會立即識別新分區,此處如果有需要,可以使用命令使內核強制讀取。
?????查看已經讀取分區列表:
? ??通知內核強制重讀磁盤分區表:
CentOS 5:partprobe [device]
CentOS 6,7:partx, kpartx
partx -a [device]
kpartx -af [device]
#?partx?-a?/dev/sdb partx:?/dev/sdb:?error?adding?partitions?1-4 #?cat?/proc/partitions? major?minor??#blocks??name8???????16???20971520?sdb8???????17????5242880?sdb18???????18????5242880?sdb28???????19????5242880?sdb38???????20??????????1?sdb48????????0??125829120?sda8????????1?????512000?sda18????????2??125316096?sda211????????0????7413760?sr0253????????0???52428800?dm-0253????????1????2097152?dm-1253????????2???70721536?dm-2三、文件系統管理
????創建文件系統,就是對分區進行格式化,格式化分為:低級格式化(分區之前進行,劃分磁道)、高級格式化(分區之后對分區進行,創建文件系統),一般低級格式化都有硬盤廠商來完成。
文件系統管理工具:
????A、ext系列文件系統管理工具:
????????1、創建文件系統工具
? ? ? ? ? ?mkfs系列(mkfs.ext2, mkfs.ext3, mkfs.ext4)
????????????????#?mkfs系列的使用方法比較簡單,沒有過多參數
????????? ?mke2fs:
????????????????使用格式: mke2fs [OPTIONS] device
????????????????常用命令參數:
????????????????????-t {ext2|ext3|ext4}:指明要創建的文件系統類型
????mkfs.ext4 = mkfs -t ext4 = mke2fs -t ext4
????????????????????-b {1024|2048|4096}:指明文件系統的塊大小;
????????????????????-L LABEL:指明卷標;
????????????????????-j:創建有日志功能的文件系統ext3;
????????#?mke2fs -j = mke2fs -t ext3 = mkfs -t ext3 = mkfs.ext3
? ? ? ?
????? ? 2、卷標查看與設定
? ? ? ? ? ?e2label
#?e2label?/dev/sdb2 MYDATA #?e2label?/dev/sdb2?DATA #?e2label?/dev/sdb2 DATA????????3、檢查及修復文件系統工具
? ? ? ? ? ?e2fsck
????????????????-y:對所有問題自動回答為yes;?
????????-f:即使文件系統處于clean狀態,也要強制進行檢測;
#?e2fsck?/dev/sdb2 e2fsck?1.42.9?(28-Dec-2013) DATA:?clean,?11/655360?files,?204238/10484736?blocks #?e2fsck?-yf?/dev/sdb2 e2fsck?1.42.9?(28-Dec-2013) Pass?1:?Checking?inodes,?blocks,?and?sizes Pass?2:?Checking?directory?structure Pass?3:?Checking?directory?connectivity Pass?4:?Checking?reference?counts Pass?5:?Checking?group?summary?information DATA:?11/655360?files?(0.0%?non-contiguous),?204238/10484736?blocks???????????fsck:
????????????? ??-t fstype:指明文件系統類型;
???????? fsck -t ext4 = fsck.ext4
????????????????-a:無須交互而自動修復所有錯誤;
????????????????-r:交互式修復;
#?fsck?-t?ext4?/dev/sdb1 fsck?from?util-linux?2.23.2 e2fsck?1.42.9?(28-Dec-2013) /dev/sdb1:?clean,?11/196608?files,?31036/786432?blocks????????4、查看修改ext系列文件的某些屬性
? ? ? ? ? ?dumpe2fs:? ? ? ? ? ? ?
?#?dumpe2fs?/dev/sdb1???????????tune2fs:
????????????????命令格式:tune2fs [OPTIONS] device
????????????????常用參數:?
????????? ??????????-l:查看超級塊的內容;? ? ? ? ? ? ??
#?tune2fs?-l?/dev/sdb1???????????????? ? ?-j:啟用日志系統,在ext3以上默認啟用,此處僅針對ext2文件系統
????????????????????-L LABEL:修改卷標;
#?e2label?/dev/sdb1 MYDATA #?tune2fs?-L?TESTDATA?/dev/sdb1 tune2fs?1.42.9?(28-Dec-2013) #?blkid?/dev/sdb1 /dev/sdb1:?LABEL="TESTDATA"?UUID="2ca4b66c-3e37-460d-a300-022e916413a8"?TYPE="ext4"????????????????????-m #:調整預留空間百分比,默認為5%;
????????# 此操作一般在硬盤比較大的場景中適用
????????????????????-O [^]FEATHER:開啟或關閉某種特性;
????????????????????-o [^]mount_options:開啟或關閉某種默認掛載選項
????B、xfs文件系統管理工具:?? ? ????
????????創建文件系統工具:
???????? ? ?1、mkfs.xfs?????
#?mkfs.xfs?-f?/dev/sdb1 meta-data=/dev/sdb1??????????????isize=256????agcount=4,?agsize=655360?blks=???????????????????????sectsz=512???attr=2,?projid32bit=1=???????????????????????crc=0????????finobt=0 data?????=???????????????????????bsize=4096???blocks=2621440,?imaxpct=25=???????????????????????sunit=0??????swidth=0?blks naming???=version?2??????????????bsize=4096???ascii-ci=0?ftype=0 log??????=internal?log???????????bsize=4096???blocks=2560,?version=2=???????????????????????sectsz=512???sunit=0?blks,?lazy-count=1 realtime?=none???????????????????extsz=4096???blocks=0,?rtextents=0? ? ? ? 修復文件系統工具:
????????????2、fsck
?????????????????-t fstype:指明文件系統類型;
?????????-a:無須交互而自動修復所有錯誤;
? ? ? ? ? ? ? ? ?-r:交互式修復;
#?fsck?-t?xfs?-a?/dev/sdb1 fsck?from?util-linux?2.23.2 /sbin/fsck.xfs:?XFS?file?system.????C、其他文件系統管理工具
????????swap管理工具:
????????????# 注意:swap需要在分區時文件系統類型改為82
#?fdisk?-l?/dev/sdbDisk?/dev/sdb:?21.5?GB,?21474836480?bytes,?41943040?sectors Units?=?sectors?of?1?*?512?=?512?bytes Sector?size?(logical/physical):?512?bytes?/?512?bytes I/O?size?(minimum/optimal):?512?bytes?/?512?bytes Disk?label?type:?dosDisk?identifier:?0x7a37859bDevice?Boot??????Start?????????End??????Blocks???Id??System /dev/sdb1????????????2048????20973567????10485760???83??Linux /dev/sdb2????????20973568????41943039????10484736???82??Linux?swap?/?Solaris????????????格式化:mkswap
????????????啟用/禁用:swapon、swapoff
四、文件系統使用
? ? 在Linux中文件系統想要使用,需要掛載,掛載分為臨時掛載(重啟后不能繼續使用,需要重新掛載)、永久掛載(卸載配置文件中)。
????1、臨時掛載
????????說mount之前說一下umount,因為期間可能會用到,方便朋友們理解
????? ? a、umount:卸載
??????????umount ?{dir|device}
????????????查看被哪個或哪些進程所戰用:
# lsof ?MOUNT_POINT
# fuser -v ?MOUNT_POINT
???? ????終止所有正在訪問某掛載點的進程:
# fuser ?-km ?MOUNT_POINT
? ? ? ? 2、mount命令:
????mount ?[-nrw] ?[-t vfstype] ?[-o options] ?device ?dir
????????????選項:
????????????????-r:readonly,只讀掛載;?
#?mount?-r?/dev/sdb2?/mnt/ #?mkdir?/mnt/test mkdir:?cannot?create?directory?‘/mnt/test’:?Read-only?file?system????????????????-w:read and write, 讀寫掛載,默認為讀寫掛載
#?mount?-w?/dev/sdb2?/mnt/ #?mkdir?/mnt/testfile #?ls?/mnt/ lost+found??testfile????????? ? ? ?-t vfstype:指明要掛載的設備上的文件系統的類型;多數情況下可省略,此時mount會通過blkid來判斷要掛載的設備的文件系統類型;
????????????????-L LABEL:掛載時以卷標的方式指明設備;
#?blkid?/dev/sdb2 /dev/sdb2:?LABEL="MYDATA"?UUID="ddbd612d-3830-49ba-86ce-65ba1519f6ae"?TYPE="xfs"? #?mount?-L?MYDATA?/mnt #?df?-hT Filesystem?????Type??????Size??Used?Avail?Use%?Mounted?on /dev/sda2??????xfs????????40G??247M???40G???1%?/ devtmpfs???????devtmpfs??475M?????0??475M???0%?/dev tmpfs??????????tmpfs?????489M?????0??489M???0%?/dev/shm tmpfs??????????tmpfs?????489M??6.8M??483M???2%?/run tmpfs??????????tmpfs?????489M?????0??489M???0%?/sys/fs/cgroup /dev/sda3??????xfs????????20G??2.6G???18G??13%?/usr /dev/sda1??????xfs???????497M??138M??359M??28%?/boot tmpfs??????????tmpfs??????98M?????0???98M???0%?/run/user/0 /dev/sdb2??????xfs????????10G???33M???10G???1%?/mnt????????????????-U UUID:掛載時以UUID的方式指明設備;
#?umount?/dev/sdb2 #?blkid?/dev/sdb2 /dev/sdb2:?LABEL="MYDATA"?UUID="ddbd612d-3830-49ba-86ce-65ba1519f6ae"?TYPE="xfs"? #?mount?-U?ddbd612d-3830-49ba-86ce-65ba1519f6ae?/mnt #?df?-hT Filesystem?????Type??????Size??Used?Avail?Use%?Mounted?on /dev/sda2??????xfs????????40G??247M???40G???1%?/ devtmpfs???????devtmpfs??475M?????0??475M???0%?/dev tmpfs??????????tmpfs?????489M?????0??489M???0%?/dev/shm tmpfs??????????tmpfs?????489M??6.8M??483M???2%?/run tmpfs??????????tmpfs?????489M?????0??489M???0%?/sys/fs/cgroup /dev/sda3??????xfs????????20G??2.6G???18G??13%?/usr /dev/sda1??????xfs???????497M??138M??359M??28%?/boot tmpfs??????????tmpfs??????98M?????0???98M???0%?/run/user/0 /dev/sdb2??????xfs????????10G???33M???10G???1%?/mnt????????????????-o options:掛載選項
????????????sync/async:同步/異步操作;
????????????atime/noatime:文件或目錄在被訪問時是否更新其訪問時間戳;
????????????diratime/nodiratime:目錄在被訪問時是否更新其訪問時間戳;
????????????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 其中包含: rw, suid, dev, exec, auto, nouser, async, and relatime.
#?mount?-o?remount,ro,rw,auto,atime?/dev/sdb2#?mount?|tail?-1 /dev/sdb2?on?/mnt?type?xfs?(rw,relatime,attr2,inode64,noquota)#?mount?-o?remount,defaults?/dev/sdb2#?mount?|tail?-1 /dev/sdb2?on?/mnt?type?xfs?(rw,relatime,attr2,inode64,noquota)????2、永久掛載既:設定除根文件系統以外的其它文件系統能夠開機時自動掛載
????????自動掛載文件:/etc/fstab
#?cat?/etc/fstab? # #?/etc/fstab #?Created?by?anaconda?on?Fri?Mar??4?08:36:03?2016 # #?Accessible?filesystems,?by?reference,?are?maintained?under?'/dev/disk' #?See?man?pages?fstab(5),?findfs(8),?mount(8)?and/or?blkid(8)?for?more?info # UUID=ad88b2e2-0eac-45e8-80b3-742a642827d7?/???????????????????????xfs?????defaults????????0?0 UUID=756954a4-022d-4da1-abe5-ed3dc587c95a?/boot???????????????????xfs?????defaults????????0?0 UUID=19dba320-753d-45b3-9071-85ae514f46e0?/usr????????????????????xfs?????defaults????????0?0 UUID=67ffa57f-07e6-426f-8914-f04154a11b47?swap????????????????????swap????defaults????????0?0 /dev/sdb2???????/mnt????????xfs?????defaults????0?0????????/etc/fstab下面分為6個字段:
????????????1、要掛載的設備(可以使用LABEL、UUID、設備文件)
????????????2、掛載點
????????????3、文件系統類型
????????????4、掛載選項(defaults使用默認掛載選線,如需同時指明,則:defaults,acl)? ? ????????????????5、轉儲頻率
????????????????0:從不備份
????????????????1:每天備份
????????????????2:每隔一天備份
????????? ? 6、自檢次序
????????????????0:不自檢
????????????????1:首先自檢,通常只用于根文件系統
????????????????2:次級自檢
????????????mount -a:可自動掛載定義在此文件中的所支持自動掛載的設備;
? ? 實例:?????
#?df?-hT Filesystem?????Type??????Size??Used?Avail?Use%?Mounted?on /dev/sda2??????xfs????????40G??247M???40G???1%?/ devtmpfs???????devtmpfs??475M?????0??475M???0%?/dev tmpfs??????????tmpfs?????489M?????0??489M???0%?/dev/shm tmpfs??????????tmpfs?????489M??6.8M??483M???2%?/run tmpfs??????????tmpfs?????489M?????0??489M???0%?/sys/fs/cgroup /dev/sda3??????xfs????????20G??2.6G???18G??13%?/usr /dev/sda1??????xfs???????497M??138M??359M??28%?/boot tmpfs??????????tmpfs??????98M?????0???98M???0%?/run/user/0#?vim?/etc/fstab??#此處使用vim進行編輯,結果如下輸出#?cat?/etc/fstab# #?/etc/fstab #?Created?by?anaconda?on?Fri?Mar??4?08:36:03?2016 # #?Accessible?filesystems,?by?reference,?are?maintained?under?'/dev/disk' #?See?man?pages?fstab(5),?findfs(8),?mount(8)?and/or?blkid(8)?for?more?info # UUID=ad88b2e2-0eac-45e8-80b3-742a642827d7?/???????????????????????xfs?????defaults????????0?0 UUID=756954a4-022d-4da1-abe5-ed3dc587c95a?/boot???????????????????xfs?????defaults????????0?0 UUID=19dba320-753d-45b3-9071-85ae514f46e0?/usr????????????????????xfs?????defaults????????0?0 UUID=67ffa57f-07e6-426f-8914-f04154a11b47?swap????????????????????swap????defaults????????0?0 /dev/sdb2???????/mnt????????xfs?????defaults????0?0#?mount?-a#?df?-hT Filesystem?????Type??????Size??Used?Avail?Use%?Mounted?on /dev/sda2??????xfs????????40G??247M???40G???1%?/ devtmpfs???????devtmpfs??475M?????0??475M???0%?/dev tmpfs??????????tmpfs?????489M?????0??489M???0%?/dev/shm tmpfs??????????tmpfs?????489M??6.8M??483M???2%?/run tmpfs??????????tmpfs?????489M?????0??489M???0%?/sys/fs/cgroup /dev/sda3??????xfs????????20G??2.6G???18G??13%?/usr /dev/sda1??????xfs???????497M??138M??359M??28%?/boot tmpfs??????????tmpfs??????98M?????0???98M???0%?/run/user/0 /dev/sdb2??????xfs????????10G???33M???10G???1%?/mnt????
總結
以上是生活随笔為你收集整理的CentOS 7磁盘分区及文件系统管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Docker镜像与容器命令 专题
- 下一篇: iometer-2006_07_27.c