MBR:Master Boot Record,主引導記錄,是硬盤的第一個扇區,位於硬盤的0柱面0磁頭1扇區處。主引導記錄(512字節)由三個部分組成:引導程序(前446字節,偏移0——1BDH),分區表(隨後的64字節,偏移1BEH——1FDH),結束標誌「55AA」(最後的兩個字節,偏移1FEH——1FFH)。node
MBR分區方式用16個字節標識一個分區,因爲分區表只有64個字節,因此MBR分區中一塊硬盤最多隻能有4個主分區,也能夠3個主分區加1個擴展分區(N個邏輯分區)。MBR分區方式最多隻能識別2TB的硬盤空間。算法
GPT:GUID(Globals Unique Identififiers) partition table,全局惟一標識磁盤分區表,它是UEFI 規範的一部分 。支持128個分區,可以識別2TB以上的硬盤空間。GPT分區結構分爲4個區域:GPT頭、分區表、GPT分區、GPT備份。centos
lsblk:列出塊設備緩存
partprobe:重置內存中的分區表版本安全
parted:高級分區操做,能夠是交互式或者非交互式(parted的操做都是實時生效的,要當心使用)網絡
格式:parted [選項]... [設備 [命令 [參數]...]...] 例:(使用-h或--help選項查看幫助) parted /dev/sdb mklabel gpt|msdos parted /dev/sdb print parted /dev/sdb mkpart primary 1 200 (默認M) parted /dev/sdb rm 1 parted –l 列出全部硬盤分區信息
fdisk和gdisk數據結構
gdisk [device...] 相似fdisk的GPT分區工具 fdisk [options] <disk> change partition table 管理MBR分區 fdisk [options] -l [<disk>] list partition table(s)
交互式方式子命令異步
p 分區列表 t 更改分區類型 n 建立新分區 d 刪除分區 v 校驗分區 u 轉換單位 w 保存並退出 q 不保存並退出
文件系統是操做系統用於明確存儲設備或分區上的文件的方法和數據結構;即在存儲設備上組織文件的方法。操做系統中負責管理和存儲文件信息的軟件機構稱爲文件管理系統,簡稱文件系統。async
ext2:Extended file system 適用於那些分區容量不是太大,更新也不頻繁的狀況,例如 /boot 分區 ide
ext3:是 ext2 的改進版本,其支持日誌功能,可以幫助系統從非正常關機致使的異常中恢復
ext4:是 ext 文件系統的最新版。提供了不少新的特性,包括納秒級時間戳、建立和使用巨型文件(16TB)、最大1EB的文件系統,以及速度的提高
xfs:SGI研發,支持最大8EB的文件系統
swap
Windows經常使用文件系統:
網絡文件系統:
mkfs:建立文件系統
格式:mkfs.FS_TYPE /dev/DEVICE 例:mkfs.ext4 /dev/sda4
選項 | 說明 |
---|---|
-t | 指定文件系統類型(ext二、ext三、ext四、xfs) |
-b | 指定塊block大小(102四、204八、4096) |
-L Label | 設置卷標 |
-m | 指定爲管理人員預留空間佔總空間的百分比,默認爲5% |
blkid:查看塊設備的UUID等信息
格式:blkid [OPTION]... [DEVICE] -U UUID 根據指定的UUID來查找對應的設備 -L LABEL 根據指定的LABEL來查找對應的設備
dumpe2fs:顯示ext文件系統信息,將磁盤塊分組管理
格式:dumpe2fs /dev/DEVICE 例:dumpe2fs /dev/sda4
xfs_info:顯示掛載或已掛載的 xfs 文件系統信息
格式:xfs_info /dev/DEVICE 例:xfs_info /dev/sda4
fsck:文件系統檢測修復(不要在掛載狀態下執行命令)
文件系統故障常發生於死機或非正常關機後,掛載爲文件系統標記爲「no clean」。
fsck.FS_TYPE fsck -t FS_TYPE FS_TYPE要與分區上的文件類型相同
e2fsck:ext系列文件系統專用的檢測修復工具
-y 自動回答爲yes -f 強制修復 -p 自動進行安全的修復文件系統問題
xfs_repair:xfs文件系統專用檢測修復工具
-f 用文件表示的設備 -n 只檢查 -d 容許修復只讀的掛載設備,在單用戶下修復 / 時使用,而後當即reboot
掛載:將額外的文件系統與根文件系統現存的某個目錄創建起關聯關係,進而使得此目錄作爲文件訪問入口的行爲。
卸載:解除此關聯關係。
注意:掛載點必須是一個目錄;一個分區掛載在一個已存在的目錄上,這個目錄能夠不爲空,但掛載後這個目錄下之前的內容將不可用。
格式:mount [OPTIONS] DEVICE DIR 說明: DEVICE:要掛載的設備,例如,/dev/sda1 DIR:掛載點,必須存在,通常使用空目錄,進程正在使用中的設備沒法被卸載 -L 'LABEL':以卷標指定掛載設備,例如,-L 'data' -U 'UUID':以UUID指定要掛載的設備 -t fstype:指定要掛載的設備上的文件系統類型 -r:readonly,只讀掛載 -w:read and write,讀寫掛載 -n:不更新/etc/mtab,mount不可見 -a:自動掛載全部支持自動掛載的設備(定義在/etc/fstab文件中,且掛載選項中有auto功能) -B,--bind:綁定目錄到另外一個目錄上 -o options:掛載文件系統的選項,多個選項使用逗號分隔 可用的options選項: async 異步模式,內存更改時,寫入緩存區buffer,過一段時間再寫到磁盤中,效率高,但不安全 sync 同步模式,內存更改時,同時寫磁盤,安全,但效率低下 atime/noatime 包含目錄和文件 diratime/nodiratime 目錄的訪問時間戳 auto/noauto 是否支持開機自動掛載,是否支持-a選項 exec/noexec 是否支持將文件系統上運行應用程序 dev/nodev 是否支持在此文件系統上使用設備文件 suid/nosuid 是否支持suid和sgid權限 remount 從新掛載 ro/rw 只讀、讀寫 user/nouser 是否容許普通用戶掛載此設備,/etc/fstab使用 acl/noacl 啓用此文件系統上的acl功能 loop 使用loop設備 _netdev 當網絡可用時纔對網絡資源進行掛載,如:NFS文件系統 defaults 至關於rw, suid, dev, exec, auto, nouser, async
卸載時既可使用設備名也可使用掛載點
格式:umount 設備名|掛載點
若是用戶正在訪問某個目錄或文件,使得卸載一直顯示busy,使用fuser -v DIR能夠知道誰正在訪問該目錄或文件。而後用-k選項結束正在使用的目錄或文件的進程,使用-km選項結束文件系統上的全部進程,而後再umount。
[root@centos8~]#fuser -v /mnt/cdrom [root@centos8~]#fuser -km /mnt/cdrom
經過將掛載選項寫入到/etc/fstab中,系統在開機時自動掛載文件中的配置項。也能夠在啓動後的系統中手動執行mount -a命令掛載文件中的配置項。/etc/fstab文件的格式查看man 5 fstab。
/etc/fstab文件中每一行定義一個掛載的文件系統,每行包括6項:
掛載的設備或僞文件系統
設備文件名
UUID
LABEL
僞文件系統名稱:proc、sysfs
掛載點:必須是事先存在的目錄
文件系統類型:ext4,xfs,iso9660,nfs,none,swap
掛載選項:defaults,acl,bind
轉儲頻率:0(不作備份)、1(天天備份)、2(每隔一天備份)
磁盤陣列:Redundant Arrays of Independent Disks(RAID),有「獨立磁盤構成的具備冗餘能力的陣列」之意。
RAID技術主要有如下三個基本功能:
RAID的實現方式:
多塊磁盤能夠經過多種方式組織在一塊兒工做,這就是RAID的不一樣級別。SNIA、Berkeley 等組織機構把 RAID0 、 RAID1 、 RAID2 、 RAID3 、 RAID4 、 RAID5 、 RAID6 七個等級定爲標準的 RAID 等級,這也被業界和學術界所公認。可是標準 RAID 等級各有優點和不足,實際中把多個 RAID 等級組合起來,實現優點互補,從而達到在性能、數據安全性等指標上更高的 RAID 系統。實際獲得較爲普遍應用的RAID組合等級只有 RAID01 和 RAID10 兩個等級。固然,組合等級的實現成本通常都很是昂貴,只是在 少數特定場合應用。
RAID0
RAID0也稱爲條帶卷(striping)。它是將多塊硬盤串聯在一塊兒看成一塊大硬盤使用,數據依次存儲到每一個硬盤當中,存儲容量是全部硬盤容量總和,讀寫能力隨磁盤數量增長成倍提高,沒有冗餘能力,空間利用率100%,至少須要兩塊硬盤,若是其中一塊硬盤損壞則整個數據都會受到破壞。用於數據安全性不高的場合。
RAID1
RAID1 也稱爲鏡像卷(mirror),它將數據徹底一致地分別寫到工做磁盤和鏡像磁盤,它的磁盤空間利用率爲 50% 。RAID1 在數據寫入時,響應時間會有所影響,可是讀數據的時候沒有影響。RAID1提供了最佳的數據保護,一旦工做磁盤發生故障,系統自動從鏡像磁盤讀取數據,不會影響用戶工做。用於數據安全性比較高的場合。
RAID4
RAID4級別最少須要3塊硬盤,其中一塊固定的硬盤用來保存校驗位,數據以數據塊爲單位分別存儲在不一樣的硬盤上。RAID4在不一樣磁盤上的同級數據塊使用XOR校驗,結果存儲在校驗盤中。RAID4提供了很是好的讀性能,但單一的校驗盤每每成爲系統性能的瓶頸。因此RAID4在主流存儲產品中使用較少。
RAID5
RAID5相似於RAID4,不一樣之處在於沒有使用專門的獨立校驗盤,校驗數據分佈在陣列中的全部數據盤上。
RAID6
RAID6引入雙重校驗的概念,它能夠保護陣列中同時出現兩個磁盤失效時,陣列仍可以繼續工做,不會發生數據丟失。RAID6 思想最多見的實現方式是採用兩個獨立的校驗算法,假設稱爲 P 和 Q ,校驗數據能夠分別存儲在兩個不一樣的校驗盤上,或者分散存儲在全部成員磁盤中。當兩個磁盤同時失效時,便可經過求解兩元方程來重建兩個磁盤上的數據。
RAID10和RAID01
RAID10和RAID01不是RAID獨立的級別。RAID10先將2塊硬盤組成RAID1,再將2個RAID1組成RAID0。RAID01先將2塊硬盤組成RAID0,再將2個RAID0組成RAID1。RAID01 和 RAID10 內部都含有 RAID1 模式,所以總體磁盤利用率均僅爲 50% 。
LVM是邏輯盤卷管理器(Logical Volume Manager)的簡稱,它是Linux系統對磁盤分區進行管理的一種機制,LVM是創建在硬盤和分區之上、硬盤和文件系統之間的一個邏輯層,來提升磁盤分區管理的靈活性。
邏輯卷實現過程:
LVM涉及到了pv、vg、lv三個層次,每一個層次都有對應的命令來管理,雖然數量可能比較多,可是命令名稱、用法大多相似。
管理pv的工具:pvs、pvscan、pvdisplay、pvcreate、pvremove、pvmove
顯示pv信息
pvs [OPTIONS] pvdispaly [OPTIONS] pvs顯示簡要的pv信息,pvdisplay詳細顯示pv信息
建立pv
pvcreate [OPTIONS]
刪除pv
pvremove [OPTIONS]
檢查pv
pvscan [OPTIONS]
管理vg的工具:vgs、vgscan、vgdisplay、vgcreate、vgreduce、vgextend
顯示vg信息
vgs 顯示vg簡要信息 vgdisplay 顯示vg詳細信息
建立vg
vgcreate [-s [kKmMgGtTpPeE]] VolumeGroupName PhysicalDevicePath
擴展vg
vgextend VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
縮減vg
vgreduce VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
刪除vg
vgremove VolumeGroupName 注意:刪除vg時,要先執行pvmove,後執行vgremove,以確保數據文件完整不被損壞
管理lv的工具:lvs、lvscan、lvdisplay、lvcreate、lvremove、lvreduce、lvextend、lvresize
顯示lv信息
lvs 顯示lv簡要信息 lvdisplay 顯示lv詳細信息
建立lv
lvcreate -L [mMgGtT] -n NAME VolumeGroup
刪除lv
lvremove /dev/VG_NAME/LV_NAME
擴展lv
lvextend -L [+SIZE][mMgGtT] /dev/VG_NAME/LV_NAME 注意:擴展lv後要配合同步文件系統的命令才能使擴展生效 針對ext文件系統 resize2fs /dev/VG_NAME/LV_NAME 針對xfs文件系統 xfs_growfs MOUNTPOINT
縮減lv
lvreduce -L [-SIZE][mMgGtT] /dev/VG_NAME/LV_NAME 注意:縮減lv時,先執行umount命令卸載,而後進行文件系統檢查,再重置文件系統大小,最後再執行lvreduce命令。必定要按照這個順序進行執行。 umount /dev/VG_NAME/LV_NAME e2fsck -f /dev/VG_NAME/LV_NAME resize2fs /dev/VG_NAME/LV_NAME lvreduce -L [-SIZE][mMgGtT] /dev/VG_NAME/LV_NAME mount
1.破壞mbr表並修復
第一步:備份10.0.0.201主機的分區表,並拷貝到10.0.0.202的主機上。
第二步:破壞10.0.0.201的分區表,重啓後發現沒法正常啓動。
第三步:進入rescue模式。
經過光盤啓動,並選擇Troubleshoting,而後選擇rescue模式
第三步:要遠程從10.0.0.202主機上獲取分區表,可是此時10.0.0.201主機在rescue模式下沒有ip地址,因此要先配上ip地址,而後再從202主機上將分區表備份拷過來。
第四步:恢復分區表,而後重啓,此時10.0.0.201主機能夠正常啓動。
2.建立一個2G的文件系統,塊大小爲2048byte,預留1%可用空間,文件系統 ext4,卷標爲TEST,要求此分區開機後自動掛載至/test目錄,且默認有acl掛載選項
第一步:用fdisk建立一個大小爲2G的新的分區
第二步:在這個新分區上建立文件系統
第三步:建立/test目錄,並將配置寫進/etc/fstab文件實現自動掛載
3.建立一個至少有兩個PV組成的大小爲20G的名爲testvg的VG;要求PE大小 爲16MB, 然後在卷組中建立大小爲5G的邏輯卷testlv;掛載至/users目錄
第一步:建立兩個分區/dev/sda六、/dev/sda7,加起來大小爲20G,注意分區類型爲LVM。用這兩個分區建立PV
第二步:建立名爲testvg的VG,指定PE大小爲16MB
第三步:在卷組中建立大小爲5G的邏輯卷testlv
第四步:在邏輯卷testlv上建立文件系統,並掛載至/users目錄