Linux系统的磁盘管理
生活随笔
收集整理的這篇文章主要介紹了
Linux系统的磁盘管理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Linux系統的磁盤管理
- 一、環境介紹
- 1.Linux系統版本
- 2.系統磁盤情況
- 二、磁盤介紹
- 1.磁盤分區理解
- 2.MBR分區方案
- 2.GPT分區分區方案
- 三、分區工具fidsk使用
- 1.查看磁盤和分區信息
- 2.查看指定設備信息
- 3.對新磁盤進行分區
- 4.格式化文件系統
- 四、gdisk工具使用
- 1.gdisk進行分區
- 2.查看sdb磁盤下分區情況
- 五、掛載文件系統
- 六、查看文件系統信息
- 七、fsck文件系統修復工具
- 1.fsck使用語法
- 2.修復ext4格式文件系統
- 3.fsck自動修復
- 4.e2fsck自動修復
- 八、xfs_repair文件系統修復工具
一、環境介紹
1.Linux系統版本
[root@node1 ~]# cat /etc/redhat-release Red Hat Enterprise Linux release 8.0 (Ootpa) [root@node1 ~]#2.系統磁盤情況
[root@node1 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk sdb 8:16 0 20G 0 disk sdc 8:32 0 20G 0 disk sdd 8:48 0 20G 0 disk sr0 11:0 1 1024M 0 rom nvme0n1 259:0 0 20G 0 disk ├─nvme0n1p1 259:1 0 500M 0 part /boot ├─nvme0n1p2 259:2 0 2G 0 part [SWAP] └─nvme0n1p3 259:3 0 17.5G 0 part / [root@node1 ~]#二、磁盤介紹
1.磁盤分區理解
將磁盤劃分為邏輯存儲單元,這些單元成為分區,對不同的分區執行不同的功能。
2.MBR分區方案
分區類型:主分區、擴展分區和邏輯分區
限制:最多有4個主分區,磁盤最大為2TB
MBR:主引導記錄(MBR),也被稱為主引導扇區,是計算機開機以后訪問硬盤時所必須要讀取的第一個扇區。
MBR(主引導扇區)+主分區1+主分區2+主分區3+擴展分區4(包括邏輯分區5+邏輯分區6+未使用空間)
2.GPT分區分區方案
GPT:GPT使用全局唯一表示符GUID來識別磁盤和分區
GPT提供分區表備份功能,主GPT位于磁盤頭部,備份的GPT位于磁盤尾部。
限制:最多有128個分區,磁盤最大為8ZiB
主GPT+sda1+sda2+sda3+…+備GPT
三、分區工具fidsk使用
1.查看磁盤和分區信息
fdisk工具分區為MBR分區
[root@node1 ~]# fdisk -l Disk /dev/nvme0n1: 20 GiB, 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 Disklabel type: dos Disk identifier: 0x9bbd6bb3Device Boot Start End Sectors Size Id Type /dev/nvme0n1p1 * 2048 1026047 1024000 500M 83 Linux /dev/nvme0n1p2 1026048 5220351 4194304 2G 82 Linux swap / Solaris /dev/nvme0n1p3 5220352 41940991 36720640 17.5G 83 LinuxDisk /dev/sda: 20 GiB, 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 bytesDisk /dev/sdb: 20 GiB, 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 bytesDisk /dev/sdc: 20 GiB, 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 bytesDisk /dev/sdd: 20 GiB, 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 bytes2.查看指定設備信息
[root@node1 ~]# fdisk -l /dev/nvme0n1 Disk /dev/nvme0n1: 20 GiB, 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 Disklabel type: dos Disk identifier: 0x9bbd6bb3Device Boot Start End Sectors Size Id Type /dev/nvme0n1p1 * 2048 1026047 1024000 500M 83 Linux /dev/nvme0n1p2 1026048 5220351 4194304 2G 82 Linux swap / Solaris /dev/nvme0n1p3 5220352 41940991 36720640 17.5G 83 Linux [root@node1 ~]# fdisk -l /dev/sda Disk /dev/sda: 20 GiB, 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 [root@node1 ~]#3.對新磁盤進行分區
[root@node1 ~]# [root@node1 ~]# fdisk /dev/sdaWelcome 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 0x962ab0e1.Command (m for help): n Partition typep primary (0 primary, 0 extended, 4 free)e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-41943039, default 2048): +5G Value out of range. First sector (2048-41943039, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-41943039, default 41943039): +5GCreated a new partition 1 of type 'Linux' and of size 5 GiB.Command (m for help): p Disk /dev/sda: 20 GiB, 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 Disklabel type: dos Disk identifier: 0x962ab0e1Device Boot Start End Sectors Size Id Type /dev/sda1 2048 10487807 10485760 5G 83 LinuxCommand (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.[root@node1 ~]#4.格式化文件系統
[root@node1 ~]# mkfs.xfs /dev/sda1 meta-data=/dev/sda1 isize=512 agcount=4, agsize=327680 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=1, sparse=1, rmapbt=0= reflink=1 data = bsize=4096 blocks=1310720, imaxpct=25= sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 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 [root@node1 ~]#四、gdisk工具使用
1.gdisk進行分區
gdisk工具主要為gpt分區
[root@node1 ~]# gdisk /dev/sdb GPT fdisk (gdisk) version 1.0.3Partition table scan:MBR: not presentBSD: not presentAPM: not presentGPT: not presentCreating new GPT entries.Command (? for help): n Partition number (1-128, default 1): First sector (34-41943006, default = 2048) or {+-}size{KMGTP}: Last sector (2048-41943006, default = 41943006) or {+-}size{KMGTP}: +6G 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): wFinal 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. [root@node1 ~]# lsblk2.查看sdb磁盤下分區情況
[root@node1 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk └─sda1 8:1 0 5G 0 part sdb 8:16 0 20G 0 disk └─sdb1 8:17 0 6G 0 part sdc 8:32 0 20G 0 disk sdd 8:48 0 20G 0 disk sr0 11:0 1 1024M 0 rom nvme0n1 259:0 0 20G 0 disk ├─nvme0n1p1 259:1 0 500M 0 part /boot ├─nvme0n1p2 259:2 0 2G 0 part [SWAP] └─nvme0n1p3 259:3 0 17.5G 0 part / [root@node1 ~]#五、掛載文件系統
[root@node1 ~]# [root@node1 ~]# mkdir /mnt/test [root@node1 ~]# mount /dev/sda1 /mnt/test/ [root@node1 ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 970M 0 970M 0% /dev tmpfs 984M 0 984M 0% /dev/shm tmpfs 984M 9.3M 974M 1% /run tmpfs 984M 0 984M 0% /sys/fs/cgroup /dev/nvme0n1p3 18G 11G 7.3G 59% / /dev/nvme0n1p1 495M 140M 356M 29% /boot overlay 18G 11G 7.3G 59% /var/lib/docker/overlay2/3851b60316c4c9b3d888c4e6133589bee2882b3e231cf2c4d9ff42eca7a4a390/merged overlay 18G 11G 7.3G 59% /var/lib/docker/overlay2/8c7e59c24a0b2648c82f41eeddba522e58e06c6809ff702f641f6377b60e8d1f/merged tmpfs 197M 4.0K 197M 1% /run/user/0 /dev/sda1 5.0G 68M 5.0G 2% /mnt/test [root@node1 ~]#六、查看文件系統信息
[root@node1 ~]# lsblk -fs NAME FSTYPE LABEL UUID MOUNTPOINT sda1 xfs 7060a61e-a422-4d5e-b37d-f6998463dddd /mnt/test └─sda sdb1 └─sdb sdc sdd sr0 nvme0n1p1 xfs 525a30a7-d484-4ed5-9f38-f827f54e29ff /boot └─nvme0n1 nvme0n1p2 swap e6cf8733-5eec-4942-9429-c3e9087b6ff0 [SWAP] └─nvme0n1 nvme0n1p3 xfs b7190d80-906f-4b9d-9ab4-5a503ecaea2c / └─nvme0n1 [root@node1 ~]#七、fsck文件系統修復工具
1.fsck使用語法
語法 fsck [-sACVRP] [-t fstype] [--] [fsck-options] filesys [...] 參數 :filesys : device 名稱(eg./dev/sda1),mount 點 (eg. / 或 /usr) -t : 給定檔案系統的型式,若在 /etc/fstab 中已有定義或 kernel 本身已支援的則不需加上此參數 -s : 依序一個一個地執行 fsck 的指令來檢查 -A : 對/etc/fstab 中所有列出來的 partition 做檢查 -C : 顯示完整的檢查進度 -d : 列印 e2fsck 的 debug 結果 -p : 同時有 -A 條件時,同時有多個 fsck 的檢查一起執行 -R : 同時有 -A 條件時,省略 / 不檢查 -V : 詳細顯示模式 -a : 如果檢查有錯則自動修復 -r : 如果檢查有錯則由使用者回答是否修復2.修復ext4格式文件系統
[root@node1 ~]# fsck -t ext4 /dev/sda2 fsck from util-linux 2.32.1 e2fsck 1.44.3 (10-July-2018) /dev/sda2: clean, 11/327680 files, 42078/1310720 blocks [root@node1 ~]#3.fsck自動修復
[root@node1 ~]# fsck -a /dev/sda2 fsck from util-linux 2.32.1 /dev/sda2: clean, 11/327680 files, 42078/1310720 blocks [root@node1 ~]#4.e2fsck自動修復
[root@node1 ~]# e2fsck -y /dev/sda2 e2fsck 1.44.3 (10-July-2018) /dev/sda2: clean, 11/327680 files, 42078/1310720 blocks [root@node1 ~]#八、xfs_repair文件系統修復工具
[root@node1 ~]# xfs_repair /dev/sda1 Phase 1 - find and verify superblock... Phase 2 - using internal log- zero log...- scan filesystem freespace and inode maps...- found root inode chunk Phase 3 - for each AG...- scan and clear agi unlinked lists...- process known inodes and perform inode discovery...- agno = 0- agno = 1- agno = 2- agno = 3- process newly discovered inodes... Phase 4 - check for duplicate blocks...- setting up duplicate extent list...- check for inodes claiming duplicate blocks...- agno = 0- agno = 1- agno = 2- agno = 3 Phase 5 - rebuild AG headers and trees...- reset superblock... Phase 6 - check inode connectivity...- resetting contents of realtime bitmap and summary inodes- traversing filesystem ...- traversal finished ...- moving disconnected inodes to lost+found ... Phase 7 - verify and correct link counts... done [root@node1 ~]#總結
以上是生活随笔為你收集整理的Linux系统的磁盘管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux基础之网络配置
- 下一篇: Linux系统之时间管理