Linux磁盤-格式化&掛載

作者簡介:一位在簡歷上沒有標注精通的運維工程師。希望大家多多關注作者,以下思維導圖展示了預計更新的內容和當前進度(不定期更新)。

Linux磁盤-格式化&掛載

linux磁盤相關的命令雖然不多,但在實際運維中卻非常重要,因為Linux系統和業務都依賴于硬盤。如果磁盤使用和配置不當,可能會導致系統無法啟動或業務系統無法提供預期的服務。

本文將從以下幾個方面介紹Linux磁盤管理:

  1. 分區介紹
  2. 創建分區
  3. MBR與gpt
  4. 格式化與掛載(本章節)
  5. inode與硬連接
  6. 磁盤操作命令
  7. 小結

在開始之前,我們如何判斷分區是MBR還是GPT呢?

# 安裝時選擇中文,可以使用中文過濾,dos即為MBR,gpt即為GPT。 [root@localhost ~]# fdisk -l | grep "磁盤標簽" 磁盤標簽類型:dos 磁盤標簽類型:gpt

本章節將介紹如何對使用MBR和GPT創建的分區進行格式化和掛載。

[root@localhost ~]# lsblk NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT sda      8:0    0   20G  0 disk  ├─sda1   8:1    0  500M  0 part /boot └─sda2   8:2    0 19.5G  0 part / sdb      8:16   0   20G  0 disk  └─sdb1   8:17   0   20G  0 part  sdc      8:32   0    3T  0 disk  └─sdc1   8:33   0    3T  0 part  sr0     11:0    1  942M  0 rom

windows中,我們格式化時有兩種文件系統:NTFS和FAT32。而在Linux中,目前最常用的文件系統是ext4和xfs。我們將使用不同的方式格式化兩塊磁盤。

小知識:在ext4之前還有ext3和ext2,當然在其他類型的Linux中還有更多的文件系統。

  1. 格式化ext4
[root@localhost ~]# mkfs.ext4 /dev/sdc1 mke2fs 1.42.9 (28-Dec-2013) 文件系統標簽= OS type: Linux 塊大小=4096 (log=2) 分塊大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 196608000 inodes, 786431488 blocks 39321574 blocks (5.00%) reserved for the super user 第一個數據塊=0 Maximum filesystem blocks=293391564824000 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, 2654208,      4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,      102400000, 214990848, 512000000, 550731776, 644972544 Allocating group tables: 完成                            正在寫入inode表: 完成                            Creating journal (32768 blocks): 完成 Writing superblocks and filesystem accounting information: 完成
  1. 格式化xfs
[root@localhost ~]# mkfs.xfs /dev/sdb1 meta-data=/dev/sdb1              isize=512    agcount=4, agsize=1310656 blks          =                       sectsz=512   attr=2, projid32bit=1          =                       crc=1        finobt=0, sparse=0 data     =                       bsize=4096   blocks=5242624, 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
  1. 掛載磁盤

前面提到,磁盤可以掛載到任何目錄,但系統自帶的目錄通常在安裝系統時就已配置完畢,一般不建議修改。我們將創建兩個新目錄進行掛載。掛載和卸載使用mount和umount命令。

[root@localhost ~]# mkdir /data /data1 [root@localhost ~]# mount /dev/sdb1 /data [root@localhost ~]# mount /dev/sdc1 /data1 [root@localhost ~]# lsblk NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT sda      8:0    0   20G  0 disk  ├─sda1   8:1    0  500M  0 part /boot └─sda2   8:2    0 19.5G  0 part / sdb      8:16   0   20G  0 disk  └─sdb1   8:17   0   20G  0 part /data sdc      8:32   0    3T  0 disk  └─sdc1   8:33   0    3T  0 part /data1 sr0     11:0    1  942M  0 rom   ###  [root@localhost ~]# umount /data1 ### 卸載時最常見的問題是磁盤正在使用中,無法卸載。這里可能會涉及到`lsof`和`fuser`命令,有興趣可以進一步了解。
  1. 配置fstab

如果掛載后直接使用沒有問題,但如果系統主動或被動重啟,磁盤會恢復到未掛載狀態。如何實現開機自動掛載呢?在Linux中,有一個文件可以配置磁盤的自動掛載。

在掛載時,我們使用的是設備地址,而在配置文件中使用的是UUID。它們有什么區別呢?每個磁盤的UUID是固定的,因此使用UUID更可靠。如果使用設備名稱,可能會因為磁盤故障或重啟導致設備名稱變化,從而引發問題。

確認配置方法后,參考上面的格式進行配置。配置完成后,最好重啟系統,以確保配置正確,避免正式使用后因重啟引發的問題。

良好的運維習慣是需要培養的。

[root@localhost ~]# cat /etc/fstab  ## /etc/fstab # Created by anaconda on Fri Jun  7 19:56:34 2024 # # 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=fb21e404-5ed7-400f-b936-ce2d8b631bfe /                       xfs     defaults        0 0 UUID=15251c96-cf20-46c3-ac06-c5b86c4afe70 /boot                   xfs     defaults        0 0
[root@localhost ~]# blkid /dev/sda1: UUID="15251c96-cf20-46c3-ac06-c5b86c4afe70" TYPE="xfs"  /dev/sda2: UUID="fb21e404-5ed7-400f-b936-ce2d8b631bfe" TYPE="xfs"  /dev/sdb1: UUID="9fcb9c55-b38c-472e-b8b7-07db7b243e4f" TYPE="xfs"  /dev/sdc1: UUID="53e67bf0-fe14-4cd0-bcd9-8b9720e2360b" TYPE="ext4" PARTLABEL="primary" PARTUUID="cea97c50-59e7-4f79-9454-5b86fd67b7a0"  /dev/sr0: UUID="2019-09-11-19-02-53-00" LABEL="centos 7 x86_64" TYPE="iso9660" PTTY
# 可以使用,但不推薦的方式 /dev/sdb1                                 /data                   xfs    defaults        0 0 # 推薦的掛載方式 UUID=53e67bf0-fe14-4cd0-bcd9-8b9720e2360b /data1                  ext4   defaults        0 0

? 版權聲明
THE END
喜歡就支持一下吧
點贊14 分享