1 存儲方式
1.從磁盤的工作原理上分類磁盤
機械磁盤 HDD
固態磁盤 SSD
2.從插拔方式上分類磁盤
熱插拔
非熱插拔
3.從硬盤接口上分類磁盤
IDE-SATA(串行ATA)
SCSI-SAS(串行SCSI)
PCIE接口
FC光纖接口
4.從連接方式上分類
本地存儲
外部存儲
網絡存儲
5 從分區方式區分
MBR
MBR是MSDOS; 兼容windows的MBR(Master boot record); 只能處理小于2TB的磁盤; 用fdisk工具分區; 最多只能有14個分區(4個主分區,擴展分區,邏輯分區); 磁盤的第一扇區,第一扇區有512bytes,存放兩類數據:MBR和分區表 MBR: 安裝有開機管理程序,占446bytes 分區表: 記錄整顆磁盤分區的狀態,占64bytes ## 由于分區表只有64bytes,所以只能最多有四組記錄區(每個記錄占用16bytes),每組記錄區記錄了該區段的起始和結束扇區號碼; ## 所以每塊磁盤只能有四個分區槽; ## 這四個分區槽是主分區Primary和擴展分區Extended; 每個分區的前面都有一個啟動扇區,用于存放操作系統的啟動程序; 擴展分區的前面有一個擴展分區啟動記錄區占用多個扇區,用于存放里面的所有邏輯分區的起止扇區號碼; 擴展分區不能格式化,只能再分成若干個邏輯分區槽; 擴展分區利用多個扇區來記錄邏輯分區信息,由于是用多個扇區來記錄,所以支持大于4個邏輯分區;
邏輯分區的槽號是從5開始,1-4是保留給主分區和擴展分區的 P1: /dev/sda1 P2: /dev/sda2 L1: /dev/sda5 L2: /dev/sda6 L3: /dev/sda7 L4: /dev/sda8 L5: /dev/sda9
MBR中主分區、 擴展分區、邏輯分區總結
主分區和擴展分區最多有4個;
擴展分區最多只能有1個;
邏輯分區由擴展分區生;
能被格式化后使用的分區為主分區和邏輯分區; 擴展分區不能直接使用;
邏輯分區的數量由操作系統決定。
GPT(GUID partition table)
可以處理大于或小于2TB的磁盤; 在CentOS6中用parted工具分區;在CentOS7中用gdisk工具分區; 最多只能有128個分區;沒有擴展分區和邏輯分區的概念,都是主分區 GPT將磁盤所有區塊以LBA來規劃;LBA:Logical Block Address ,預設每個LBA為512bytes,第一個LBA稱為LBA0; GPT使用前面的34個LBA;除此之外還使用了最后的33個LBA做備份; GPT分區中沒有主分區、擴展分區、邏輯分區的概念,每個分區都能使用; 磁盤管理程序中fdisk不識別GPT分區;gdisk和parted可以識別; grub第一版不識別GPT
LBA0: 與MBR兼容。這個LBA0區塊也分兩部分,第一部分是和MBR相似的446bytes塊區,存儲了第一階段的開機管理程序;第二部分放置了一個特殊標志的分區用來表示此塊磁盤為GPT分區格式磁盤,不能識別GPT分區表的磁盤管理程序是不能修改此分區信息的 LBA1: 記錄GPT分區表的表頭數據,內容為:分區表本身的位置和大小;備份GPT(最后34個LBA區塊)放置的位置;放置了分區表檢驗機制碼CRC32,操作系統根據這個碼來判斷GPT是否正確,如果錯誤,從備份GPT恢復。 LBA2-33: 實際記錄分區信息的地方,每個LBA可以記錄4個分區槽信息,所以一共可以有128個分區槽
2 基本分區
7.2.1 添加新磁盤
“lsblk”——查看系統的分區情況
[root@localhost boot]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 30G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 29G 0 part ├─centos-root 253:0 0 26G 0 lvm / └─centos-swap 253:1 0 3G 0 lvm [SWAP] sdb 8:16 0 20G 0 disk └─sdb1 8:17 0 8G 0 part sr0 11:0 1 4.4G 0 rom /run/media/root/CentOS 7 x86_64
7.2.2 MBR分區
"fdisk -l"——查看系統所掛硬盤個數及分區情況
[root@localhost boot]# fdisk -l /dev/sda 磁盤 /dev/sda:32.2 GB, 32212254720 字節,62914560 個扇區 Units = 扇區 of 1 * 512 = 512 bytes 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳):512 字節 / 512 字節 磁盤標簽類型:dos 磁盤標識符:0x000a533f 設備 Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 62914559 30407680 8e Linux LVM
采用MBR分區表,使用fdisk對sdc進行分盤
[root@localhost boot]# fdisk /dev/sdb 歡迎使用 fdisk (util-linux 2.23.2)。 更改將停留在內存中,直到您決定將更改寫入磁盤。 使用寫入命令前請三思。 命令(輸入 m 獲取幫助):
輸入“ m ”參數查看幫助信息,了解每個參數的具體作用、分區具體操作等
輸入“ n ”參數嘗試創建新的分區
命令(輸入 m 獲取幫助):n Partition type: p primary (1 primary, 0 extended, 3 free) e extended
輸入“P” 參數,系統默認選擇主分區,直接按回車鍵即可;
輸入“l”參數,系統創建邏輯分區;
Select (default p): Using default response p
分區編號為2~4,系統默認為2,按回車鍵即可;(分區編號視個人情況而定)
分區號 (2-4,默認 2):
系統會提示扇區的起始位置,系統會自動選擇最靠前的空間扇區位置,直接按回車即可
起始 扇區 (16779264-41943039,默認為 16779264): 將使用默認值 16779264
用戶通過添加扇區或添加尺寸的方式定義扇區的終止位置,也就是定義最終分區空間的大小
Last 扇區, +扇區 or +size{K,M,G} (16779264-41943039,默認為 41943039):+100M 分區 2 已設置為 Linux 類型,大小設為 100 MiB
輸入“P”參數,查看硬盤中的分區情況
命令(輸入 m 獲取幫助):p 磁盤 /dev/sdb:21.5 GB, 21474836480 字節,41943040 個扇區 Units = 扇區 of 1 * 512 = 512 bytes 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳):512 字節 / 512 字節 磁盤標簽類型:dos 磁盤標識符:0x43c3e080 設備 Boot Start End Blocks Id System /dev/sdb1 2048 16779263 8388608 83 Linux /dev/sdb2 16779264 16984063 102400 83 Linux
輸入“w”參數,保存所有分區設置
命令(輸入 m 獲取幫助):w The partition table has been altered! Calling ioctl() to re-read partition table. 正在同步磁盤。
利用ll命令查看新分區的設備文件
[root@localhost boot]# ll /dev/sdb* brw-rw----. 1 root disk 8, 16 11月 26 21:01 /dev/sdb brw-rw----. 1 root disk 8, 17 11月 26 21:01 /dev/sdb1 brw-rw----. 1 root disk 8, 18 11月 26 21:01 /dev/sdb2
7.2.3 GPT分區
“gdisk”——對硬盤進行分區,系統顯示創建新的GPT分區
root@localhost boot]# gdisk /dev/sdb GPT fdisk (gdisk) version 0.8.10 Partition table scan: MBR: MBR only BSD: not present APM: not present GPT: not present
輸入“?”參數可以查看幫助信息,輸入“n”參數進行分區,此時沒有分區選擇,直接按回車鍵創建主分區,起始扇區使用默認值,按回車鍵定義終止扇區。設置為添加100MiB,系統提示當前類型是linux系統,直接回車鍵即可。
Command (? for help): n Partition number (3-128, default 3): First sector (34-41943006, default = 16984064) or {+-}size{KMGTP}: Last sector (16984064-41943006, default = 41943006) or {+-}size{KMGTP}: +100M Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300): Changed type of partition to 'Linux filesystem'
再創建一個分區
Command (? for help): n Partition number (4-128, default 4): First sector (34-41943006, default = 17188864) or {+-}size{KMGTP}: Last sector (17188864-41943006, default = 41943006) or {+-}size{KMGTP}: +5G Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300): Changed type of partition to 'Linux filesystem'
輸入“ p ”參數顯示分區信息,輸入“ w ”保存,系統會提示即將寫入GPT數據,這將覆蓋已存在的分區,詢問是否繼續,輸入“ y ”即可
Command (? for help): p Disk /dev/sdb: 41943040 sectors, 20.0 GiB Logical sector size: 512 bytes Disk identifier (GUID): DA12D06C-8701-4074-9A0B-0FE8E70FD2D8 Partition table holds up to 128 entries First usable sector is 34, last usable sector is 41943006 Partitions will be aligned on 2048-sector boundaries Total free space is 14270397 sectors (6.8 GiB) Number Start (sector) End (sector) Size Code Name 1 2048 16779263 8.0 GiB 8300 Linux filesystem 2 16779264 16984063 100.0 MiB 8300 Linux filesystem 3 16984064 17188863 100.0 MiB 8300 Linux filesystem 4 17188864 27674623 5.0 GiB 8300 Linux filesystem Command (? for help): w Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed? (Y/N): y OK; writing new GUID partition table (GPT) to /dev/sdb. The operation has completed successfully.
如果為真實硬盤需執行partprobe命令,查看新分區情況
[root@localhost boot]# partprobe /dev/sdb [root@localhost boot]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 30G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 29G 0 part ├─centos-root 253:0 0 26G 0 lvm / └─centos-swap 253:1 0 3G 0 lvm [SWAP] sdb 8:16 0 20G 0 disk ├─sdb1 8:17 0 8G 0 part ├─sdb2 8:18 0 100M 0 part ├─sdb3 8:19 0 100M 0 part └─sdb4 8:20 0 5G 0 part sr0 11:0 1 4.4G 0 rom /run/media/root/CentOS 7 x86_64
查看sdb硬盤和sda硬盤的分區表類型
[root@localhost boot]# fdisk -l /dev/sdb WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. 磁盤 /dev/sdb:21.5 GB, 21474836480 字節,41943040 個扇區 Units = 扇區 of 1 * 512 = 512 bytes 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳):512 字節 / 512 字節 磁盤標簽類型:gpt Disk identifier: DA12D06C-8701-4074-9A0B-0FE8E70FD2D8 # Start End Size Type Name 1 2048 16779263 8G Linux filesyste Linux filesystem 2 16779264 16984063 100M Linux filesyste Linux filesystem 3 16984064 17188863 100M Linux filesyste Linux filesystem 4 17188864 27674623 5G Linux filesyste Linux filesystem [root@localhost boot]# fdisk -l /dev/sda 磁盤 /dev/sda:32.2 GB, 32212254720 字節,62914560 個扇區 Units = 扇區 of 1 * 512 = 512 bytes 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳):512 字節 / 512 字節 磁盤標簽類型:dos 磁盤標識符:0x000a533f 設備 Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 62914559 30407680 8e Linux LVM
2.4 創建文件系統
創建分區后并不能立即存放數據,需要對分區進行格式化
“mkfs”——再連續按兩次tab鍵可以查看所有文件系統類型,centos 7文件系統默認為XFS
[root@localhost boot]# mkfs mkfs mkfs.cramfs mkfs.ext3 mkfs.fat mkfs.msdos mkfs.xfs mkfs.btrfs mkfs.ext2 mkfs.ext4 mkfs.minix mkfs.vfat
使用EXT4文件系統格式化/dev/sdb1主分區,塊大小為1024字節。塊是文件存儲的最小單位,若文件小于1KiB,也會占用1KiB的存儲空間
[root@localhost boot]# mkfs.ext4 /dev/sdb1 mke2fs 1.42.9 (28-Dec-2013) 文件系統標簽= OS type: Linux 塊大小=4096 (log=2) 分塊大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 524288 inodes, 2097152 blocks 104857 blocks (5.00%) reserved for the super user 第一個數據塊=0 Maximum filesystem blocks=2147483648 64 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 Allocating group tables: 完成 正在寫入inode表: 完成 Creating journal (32768 blocks): 完成 Writing superblocks and filesystem accounting information: 完成
使用XFS文件系統格式化/dev/sdb2主分區
[root@localhost boot]# mkfs.xfs /dev/sdb2 meta-data=/dev/sdb2 isize=512 agcount=4, agsize=6400 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0, sparse=0 data = bsize=4096 blocks=25600, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal log bsize=4096 blocks=855, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0
2.5 掛載分區
格式化完成后需掛載分區,首先創建兩個目錄作為掛載點,然后使用mount命令臨時把sdb1和sdb2分區分別掛載到date01與date02目錄上。現在兩個目錄不再是兩個普通的目錄,而是設備的掛載點,用戶要往設備中存放數據,需借助掛載點
[root@localhost ~]# mkdir /date01 [root@localhost ~]# mkdir /date02 [root@localhost ~]# mount /dev/sdb1 /date01 [root@localhost ~]# mount /dev/sdb2 /date02
“df -h”——查看文件系統的掛載點
[root@localhost ~]# df -h 文件系統 容量 已用 可用 已用% 掛載點 devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 13M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/mapper/centos-root 26G 6.6G 20G 26% / /dev/sda1 1014M 185M 830M 19% /boot tmpfs 378M 32K 378M 1% /run/user/0 /dev/sr0 4.4G 4.4G 0 100% /run/media/root/CentOS 7 x86_64 tmpfs 378M 36K 378M 1% /run/user/1000 /dev/sdb1 7.8G 36M 7.3G 1% /date01 /dev/sdb2 97M 5.3M 92M 6% /date02
掛載完成后,分別在這兩個目錄下創建兩個空目錄dir01與dir02,然后使用ll命令查看date01與date02目錄,同樣大小的空目錄所占的存儲空間是不同的
[root@localhost ~]# mkdir /date01/dir01 [root@localhost ~]# mkdir /date02/dir02 [root@localhost ~]# ll /date01 總用量 20 drwxr-xr-x. 2 root root 4096 11月 26 21:28 dir01 drwx------. 2 root root 16384 11月 26 21:19 lost+found [root@localhost ~]# ll /date02 總用量 0 drwxr-xr-x. 2 root root 6 11月 26 21:28 dir02
使用mount命令掛載是臨時性的,系統重新啟動后便失效,需要再次掛載,用戶可以修改/etc/fstab配置文件,使其永久有效。
“blkid”——查看設備的UUID
[root@localhost ~]# blkid /dev/sdb1: UUID="67e9447b-a6dd-47d2-a738-55983bc3c915" TYPE="ext4" PARTLABEL="Linux filesystem" PARTUUID="fbc32bc2-b7da-4912-a191-920413125325" /dev/sdb2: UUID="570e001f-162e-4ecd-8873-6d2c82c0edfb" TYPE="xfs" PARTLABEL="Linux filesystem" PARTUUID="1254b3e7-55be-40ca-b198-0b57f29dbf6a" /dev/sdb3: PARTLABEL="Linux filesystem" PARTUUID="b5eaddb3-5935-4d8b-b755-2d4f47599a7a" /dev/sdb4: PARTLABEL="Linux filesystem" PARTUUID="ed1ede26-7603-4f30-b52a-8247f0f49f6a" /dev/sda1: UUID="f4b88752-547e-4442-bfbc-2ec46b75510c" TYPE="xfs" /dev/sda2: UUID="8yl9fP-Nj4t-OTt8-P2Q2-B3p8-1nrp-PUKcfd" TYPE="LVM2_member" /dev/sr0: UUID="2020-11-04-11-36-43-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" /dev/mapper/centos-root: UUID="cf8c0d8c-19ca-496c-8ff6-6f8fc7a88517" TYPE="xfs" /dev/mapper/centos-swap: UUID="93521d4e-9ae4-4c93-8909-e46441105623" TYPE="swap"
在/etc/fstab 配置文件中寫入設備的UUID,其中sdc1分區的掛載點為data03,文件系統類型為xfs,掛載選項為defaults,最后兩個數字為0,表示不備份、不檢測;sdc5分區的掛載點為data04,文件系統類型為auto(自動),掛載選項為ro(只讀),最后兩個數字為0,表示不備份、不檢測。
# # /etc/fstab # Created by anaconda on Sun Sep 10 1415 2023 # # 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 # /dev/mapper/centos-root / xfs defaults 0 0 UUID=f4b88752-547e-4442-bfbc-2ec46b75510c /boot xfs defaults 0 0 /dev/mapper/centos-swap swap swap defaults 0 0 UUID="67e9447b-a6dd-47d2-a738-5598bc3c915" /date01 xfs defaults 0 0 UUID="570e001f-162e-4ecd-8873-6d2c82c0edfb" /date02 auto ro 0 0
重新啟動系統就可以讀取新掛載的設備,也可使用“mount-a”命令讀取/etc/fstab 文件并掛載設備。使用df命令查看已掛載設備信息,添加“T”參數可顯示設備文件的類型,添加“h”參數可顯示設備大小。
[root@localhost ~]# mount -a [root@localhost ~]# df -Th 文件系統 類型 容量 已用 可用 已用% 掛載點 devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs tmpfs 1.9G 13M 1.9G 1% /run tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/mapper/centos-root xfs 26G 6.6G 20G 26% / /dev/sda1 xfs 1014M 185M 830M 19% /boot tmpfs tmpfs 378M 32K 378M 1% /run/user/0 /dev/sr0 iso9660 4.4G 4.4G 0 100% /run/media/root/CentOS 7 x86_64 tmpfs tmpfs 378M 36K 378M 1% /run/user/1000 /dev/sdb1 ext4 7.8G 36M 7.3G 1% /date01 /dev/sdb2 xfs 97M 5.3M 92M 6% /date02
在完成硬盤的分區、掛載與格式化之后,可嘗試通過掛載點存儲數據:同時向data03與data04目錄復制/etc/hosts文件。data03目錄可以寫入,data04提示無法創建常規文件。具體如下所示。
[root@localhost ~]# cp -rf /etc/host /date01 [root@localhost ~]# cp -rf /etc/host /date02 cp: 無法獲取"/etc/host" 的文件狀態(stat): 沒有那個文件或目錄
“ mount ”——顯示設備的權限
/dev/sdb1 on /date01 type ext4 (rw,relatime,seclabel,data=ordered) /dev/sdb2 on /date02 type xfs (ro,relatime,seclabel,attr2,inode64,noquota)
3 本章小結
本章主要介紹了存儲的方式(硬盤的參數及性能)與基本分區(MBR與GPT)。通過本章的學習,讓我掌握了創建基本分區,創建文件系統及掛載的方法。
鏈接:https://www.cnblogs.com/twlwbiubiu/p/17858056.html
-
Linux
+關注
關注
87文章
11232瀏覽量
208949 -
操作系統
+關注
關注
37文章
6747瀏覽量
123201 -
磁盤
+關注
關注
1文章
367瀏覽量
25180 -
存儲管理
+關注
關注
0文章
31瀏覽量
9170
原文標題:硬核干貨!Linux存儲管理最強攻略
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論