目錄
- 一、前期準備
- 1)增加一塊磁盤
- 2)查看新增磁盤(lsblk),發現沒找到新增的磁盤
- 3)解決查不到新增磁盤問題
- 二、磁區
- 1)簡介
- 2)fdisk 對磁盤進行磁區
- 三、磁盤格式化
- 四、掛載
- 1)臨時掛載
- 2)永久掛載
一、前期準備
測驗環境:VMware Workstation / centos8
1)增加一塊磁盤

2)查看新增磁盤(lsblk),發現沒找到新增的磁盤

3)解決查不到新增磁盤問題
重新掃描SCSI總線添加設備,
$ echo "- - -" > /sys/class/scsi_host/host0/scan
$ echo "- - -" > /sys/class/scsi_host/host1/scan
$ echo "- - -" > /sys/class/scsi_host/host2/scan
上面的host0/host1/host2主要還得看機器,可能數量會有不一樣,

刷完就可以看到新增的那塊磁盤了

二、磁區
1)簡介
- 在 Linux 中規定,每一個硬碟設備最多能有4個主磁區(其中包含擴展磁區)構成,任何一個擴展磁區都要占用一個主磁區號碼,也就是在一個硬碟中,主磁區和擴展磁區一共最多是 4個,
- 主磁區可以馬上被使用但不能再磁區,擴展磁區必須再進行磁區后才能使用,也就是說它必須還要進行二次磁區,那么由擴充磁區再分下去的是就是邏輯磁區(logical partion),況且邏輯磁區沒有數量上限制,
- Linux 規定了主磁區(或者擴展磁區)占用 1 至 16 號碼中的前 4 個號碼,以第一個 IDE 硬碟為例說明,主磁區(或者擴展磁區)占用了 sda1、sda2、sda3、sda4,而邏輯磁區占用了 sda5 到 sda16 等 12 個號碼,
- 一個扇區是512位元組,其中有64個位元組存盤的是磁區表,一條磁區資訊占16個位元組,因此磁盤最多只能分四個磁區,這時候就有了擴展磁區,
- 擴展磁區可以被繼續劃分為多個邏輯磁區,邏輯磁區是可以進行格式化的,擴展磁區把邏輯磁區的磁區資訊在擴展磁區中找了一個位置給存起來,假如說p4擴展磁區劃分了三個邏輯磁區那么第1個邏輯磁區命名為sda5、第2個為sda6、第3個sda7,以此類推,一個磁盤被分為四個磁區,第四個磁區被設定為擴展磁區,第一個邏輯磁區為sda5,總結一下,就是不論磁盤有幾個主磁區,第一個邏輯磁區一定是從sda5開始,
2)fdisk 對磁盤進行磁區
[root@centos8-nat-168-182-152 ~]# fdisk /dev/sdb //對sdb磁盤進行磁區
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x72914843.
Command (m for help): m //輸出幫助資訊
Help:
DOS (MBR)
a toggle a bootable flag //設定啟動磁區
b edit nested BSD disklabel //編輯磁區標簽
c toggle the dos compatibility flag //flag
Generic
d delete a partition //洗掉一個磁區
F list free unpartitioned space //列出磁區型別
l list known partition types //輸出幫助資訊
n add a new partition //建立一個新的磁區
p print the partition table ///列印磁區表
t change a partition type //改變磁區的ID
v verify the partition table //檢查驗證磁區表
i print information about a partition
Misc
m print this menu
u change display/entry units
x extra functionality (experts only)
Script
I load disk layout from sfdisk script file
O dump disk layout to sfdisk script file
Save & Exit
w write table to disk and exit
q quit without saving changes
Create a new label
g create a new empty GPT partition table
G create a new empty SGI (IRIX) partition table
o create a new empty DOS partition table
s create a new empty Sun partition table
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free) //p是主磁區
e extended (container for logical partitions) //e是擴展磁區
Select (default p): p
Partition number (1-4, default 1): 1 //定義磁區數量 --主磁區最多只能有四個
First sector (2048-16777215, default 2048): //表示起始扇區;默認從第2048塊扇區開始是因為,由于EFI的興起,要給EFI 代碼留磁盤最開始的1M空間.
Last sector, +sectors or +size{K,M,G,T,P} (2048-16777215, default 16777215): +1024M //此處可直接輸入柱面號碼,但需要你自己計算磁區大小,也可直接用+..M(如上),讓系統自己分配柱面號碼,
Created a new partition 1 of type 'Linux' and of size 1 GiB. //這里就為此磁區分配了1G的空間
Command (m for help): w //保存剛才的配置資訊,
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
查看(fdisk -l或者lsblk)

注意
上面的磁區只適用于磁盤小于2T,大于2T需要用parted來磁區
三、磁盤格式化
格式化:指將磁區格式化成不同的檔案系統,
檔案系統:指作業系統用于明確存盤設備或磁區上的檔案的方法和資料結構:即在存盤設備上組織檔案的方法,
注意
但是當你在格式化的時候,有可能找不到這個磁區,這是因為Linux沒有把磁區資訊讀到內核來,我們需要輸入partprobe這個命令,來使我們內核重讀一下我們的磁區資訊,
格式化命令
mkfs -t ext4 /dev/sdb1或 mkfs.ext4 /dev/sdb1 兩者命令皆可
Linux下的檔案型別有ext2、ext3、ext4、xfs等等,我們可以使用命令:mkfs. 然后用按TAB鍵來查看都有哪些檔案型別,
[root@centos8-nat-168-182-152 ~]# mkfs.ext4 /dev/sdb1
mke2fs 1.45.6 (20-Mar-2020)
Creating filesystem with 262144 4k blocks and 65536 inodes
Filesystem UUID: 1463fdcf-7360-4eb2-a671-d07262266121
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
檢查,格式化后就有UUID
[root@centos8-nat-168-182-152 ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 58a9a0c3-f34d-41f7-a3e8-40e4801d8615 /boot
└─sda2 LVM2_member tA0cp2-gAml-dmLs-i3Rh-GHqT-iNDT-fa3PBt
├─cl-root xfs 9cbc11d5-0d6b-4c1a-8511-fba93dada487 /
└─cl-swap swap f0029228-fb9b-4131-ae57-f0ba1282a0c6 [SWAP]
sdb
└─sdb1 ext4 1463fdcf-7360-4eb2-a671-d07262266121
sr0 iso9660 CentOS-8-4-2105-x86_64-dvd 2021-06-01-20-39-18-00
四、掛載
1)臨時掛載
將指定的一個目錄作為掛載點目錄時,如果掛載點的目錄有檔案,那么檔案會被隱藏,因此當我們需要掛載目錄時,最好新建一個空檔案夾來作為掛在點目錄,(重啟后失效)
創建掛載目錄
$ mkdir -p /opt/data1
掛載
$ mount /dev/sdb1 /opt/data1

取消掛載,下面兩條命令均可
$ umount /dev/sdb1 # 磁盤名
$ umount /opt/data1 # 掛載目錄名
2)永久掛載
使用永久掛載,就意味著它開機會自動掛載(編輯 /etc/fstab 檔案)
命令:blkid:查看對應磁區的UUID(編號),UUID唯一標識每一個磁區,防止錯誤的掛載,除此之外,還會顯示磁區的型別,(建議先復制一下sdb1的UUID,一會兒會用到)
[root@centos8-nat-168-182-152 ~]# blkid /dev/sdb1
/dev/sdb1: UUID="1463fdcf-7360-4eb2-a671-d07262266121" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="72914843-01"
使用vi編輯 /etc/fstab在命令列直接輸入vim /etc/fstab 就可以編輯,實作開機自動掛載,
$ echo 'UUID="1463fdcf-7360-4eb2-a671-d07262266121" /opt/data1 ext4 defaults 0 0' >> /etc/fstab

/etc/fstab該檔案中存在六列引數:
第一列:設備檔案或UUID或label(三者的區別看下面)
第二列:設備的掛載點(空目錄)
第三列:該磁區檔案系統的格式(可以使用特殊的引數auto,自動識別磁區的磁區格式)
第四列:檔案系統的引數,設定格式的選項
第五列:dump備份的設定(0表示不進行dump備份,1代表每天進行dump備份,2代表不定日期的進行dump備份)
第六列:磁盤檢查設定(其實是一個檢查順序,0代表不檢查,1代表第一個檢查,2后續.一般根目錄是1,數字相同則同時檢查)
設備檔案、UUID、label作為標識的不同:
- 使用設備檔案名會在當前生效,可能在系統重啟之后會出現問題
- label在系統重啟之后也會生效,但是要實時注意該設備的label
- UUID是磁區的唯一標識,(推薦)
可以查看sdb1磁區的UUID和label(詳細資訊) ,發現sdb1沒有設定label,但是可以查看/dev/sr0的lable(/dev/sr0是光驅的設備名)

最后驗證:
由于內核還沒有讀取這個命令,使用mount -a 這個命令來讓內核讀取這個檔案(通過mount -a 讀取/etc/fstab 重新掛載)
$ mount -a

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/497512.html
標籤:其他
