Linux下挂载磁盘相关命令

复制代码
fdisk -l                       # 查看可挂载的磁盘, 或者 lsblk 命令
df -h                          # 查看已经挂载的磁盘
mkfs.ext4 /dev/sdb1            # 格式化磁盘:格式是ext4,注意这里会`格式化可挂载磁盘`
mount /dev/sdb1 /data0         # mount 磁盘到 `/data0`,保证 `/data0` 为空
blkid                          # 获取磁盘的uuid和属性,用uuid来进行开机mount
vim /etc/fstab                 # 开机mount,模板: UUID=********** /data0  ext4  defaults  1 1

备份

复制代码
# 每次操作之前一定要先备份
cp /etc/fstab /etc/fstab_backup

列出磁盘

fdisk

复制代码
fdisk -l

Disk /dev/sda: 480.1 GB, 480103981056 bytes, 937703088 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x00057260

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048    17803263     8388608   82  Linux swap / Solaris
/dev/sda3        17803264   937701375   459949056   83  Linux

Disk /dev/sdb: 600.1 GB, 600127266816 bytes, 1172123568 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
Disk label type: dos
Disk identifier: 0xa6abba72

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        2048  1172119551   586058752    7  HPFS/NTFS/exFAT

Disk /dev/sdc: 300.0 GB, 300000000000 bytes, 585937500 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
Disk label type: dos
Disk identifier: 0xb34e161e

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048   585934847   292966400    7  HPFS/NTFS/exFAT

lsblk

复制代码
lsblk

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 447.1G  0 disk
├─sda1   8:1    0   500M  0 part /boot
├─sda2   8:2    0     8G  0 part [SWAP]
└─sda3   8:3    0 438.7G  0 part /
sdb      8:16   0 558.9G  0 disk
└─sdb1   8:17   0 558.9G  0 part
sdc      8:32   0 279.4G  0 disk
└─sdc1   8:33   0 279.4G  0 part

磁盘分区(新盘)

复制代码
# 根据提示操作
fdisk /dev/sdb

已挂载磁盘

复制代码
df -h

Filesystem      Size  Used Avail Use% Mounted on
devtmpfs         12G     0   12G   0% /dev
tmpfs            12G     0   12G   0% /dev/shm
tmpfs            12G  1.2G   11G  10% /run
tmpfs            12G     0   12G   0% /sys/fs/cgroup
/dev/sda3       439G  305G  134G  70% /
/dev/sda1       494M  166M  329M  34% /boot
tmpfs           2.4G     0  2.4G   0% /run/user/0

/dev/sdb 没有挂载

临时挂载

复制代码
mount /dev/sdb1 /data0

找到磁盘 UUID

复制代码
# 所有硬盘UUID
blkid

/dev/sda1: UUID="d3ab3f39-3d7b-4242-b68e-b38fb4b29176" TYPE="xfs"
/dev/sda2: UUID="b072dffc-d2fd-4834-b0b7-d8b88b042f08" TYPE="swap"
/dev/sda3: UUID="64f9460d-b609-42a3-b5f1-8c3c4482500f" TYPE="xfs"
/dev/sdb1: LABEL="M-fM-^VM-0M-eM-^JM- M-eM-^MM-7" UUID="18DAF517DAF4F1BC" TYPE="ntfs"
/dev/sdc1: LABEL="M-fM-^VM-0M-eM-^JM- M-eM-^MM-7" UUID="CAACA88EACA8769B" TYPE="ntfs"

blkid | grep sdb1 | awk '{if(match($0, /UUID="([^"]+)"/, a)) {print a[0]} }'

UUID="18DAF517DAF4F1BC"

# 直接获取UUID
blkid -s UUID -o value /dev/sda2

开机启动挂载(Mount)

复制代码
vim /etc/fstab

UUID=64f9460d-b609-42a3-b5f1-8c3c4482500f /                       xfs     defaults        0 0
UUID=d3ab3f39-3d7b-4242-b68e-b38fb4b29176 /boot                   xfs     defaults        0 0
UUID=b072dffc-d2fd-4834-b0b7-d8b88b042f08 swap                    swap    defaults        0 0
# New
UUID=18DAF517DAF4F1BC                     /data0                  ntfs    defaults        0 0

意义如下:

字段 意义
设备文件 一般为设备的路径+设备名称,写唯一识别码(UUID,Universally Unique Identifier)
挂载目录 指定要挂载到的目录,需在挂载前创建好
格式类型 指定文件系统的格式,比如 Ext3、Ext4、XFS、SWAP、iso9660(此为光盘设备)等
权限选项 若设置为 defaults,则默认权限为:rw, suid, dev, exec, auto, nouser, async
是否备份 若为 1 则开机后使用 dump 进行磁盘备份,为 0 则不备份
是否自检 若为 1 则开机后自动进行磁盘自检,为 0 则不自检

写 UUID 是为了防止:新增硬盘或者删除硬盘后,硬盘挂载错位的问题。

Persistent_block_device_naming

另一种 Mount 方式

复制代码
ls -l /dev/disk/by-id

lrwxrwxrwx 1 root root  9 May  7 18:33 ata-HGST_HUS728T8TALE6L4_VGKR5DJG -> ../../sdb
lrwxrwxrwx 1 root root  9 May 10 00:53 ata-HGST_HUS728T8TALE6L4_VGKR5GTG -> ../../sda
lrwxrwxrwx 1 root root 10 May 10 00:53 ata-HGST_HUS728T8TALE6L4_VGKR5GTG-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 May 10 00:53 ata-HGST_HUS728T8TALE6L4_VGKR5GTG-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 May 10 00:53 ata-HGST_HUS728T8TALE6L4_VGKR5GTG-part3 -> ../../sda3

MinIO

Deploy MinIO: Multi-Node Multi-Drive[1]

MinIO requires using expansion notation {x...y} to denote a sequential series of drives when creating the new deployment, where all nodes in the deployment have an identical set of mounted drives. MinIO also requires that the ordering of physical drives remain constant across restarts, such that a given mount point always points to the same formatted drive. MinIO therefore strongly recommends using /etc/fstab or a similar file-based mount configuration to ensure that drive ordering cannot change after a reboot. For example:

复制代码
$ mkfs.xfs /dev/sdb -L DISK1
$ mkfs.xfs /dev/sdc -L DISK2
$ mkfs.xfs /dev/sdd -L DISK3
$ mkfs.xfs /dev/sde -L DISK4

$ nano /etc/fstab

  # <file system>  <mount point>  <type>  <options>         <dump>  <pass>
  LABEL=DISK1      /mnt/disk1     xfs     defaults,noatime  0       2
  LABEL=DISK2      /mnt/disk2     xfs     defaults,noatime  0       2
  LABEL=DISK3      /mnt/disk3     xfs     defaults,noatime  0       2
  LABEL=DISK4      /mnt/disk4     xfs     defaults,noatime  0       2

参考

硬件设备 文件名称
IDE 设备 /dev/hd[a-d]
SCSI/SATA/U 盘 /dev/sd[a-z]
virtio 设备 /dev/vd[a-z]
软驱 /dev/fd[0-1]
打印机 /dev/lp[0-15]
光驱 /dev/cdrom
鼠标 /dev/mouse
磁带机 /dev/st0 或/dev/ht0
相关推荐
2401_8920709815 小时前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
雪可问春风15 小时前
docker环境部署
运维·docker·容器
lwx91485215 小时前
Linux-Shell算术运算
linux·运维·服务器
翻斗包菜15 小时前
PostgreSQL 日常维护完全指南:从基础操作到高级运维
运维·数据库·postgresql
somi715 小时前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
双份浓缩馥芮白16 小时前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
海的透彻16 小时前
nginx启动进程对文件的权限掌控
运维·chrome·nginx
黄昏晓x16 小时前
Linux ---- UDP和TCP
linux·tcp/ip·udp
路溪非溪16 小时前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
此刻觐神16 小时前
IMX6ULL开发板学习-01(Linux文件目录和目录相关命令)
linux·服务器·学习