AWS EC2 挂载磁盘
挂载磁盘
在创建 AWS
的 EC2
实例时如果添加了额外的磁盘则需要手动挂载到系统中。
首先运行 lsblk
来查看可用的块设备:
1 | NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS |
其中的 nvme1n1
是本次新添加的磁盘,目前还未挂载到系统中,而 nvme0n1
则是根设备并且有两个分区。
lsblk
的输出结果会移除设备路径中的/dev/
前缀,所以设备nvme1n1
的完整路径为/dev/nvme1n1
。
然后,我们需要在 nvme1n1
之上创建文件系统才能使用,执行 sudo file -s /dev/nvme1n1
显示 nvme1n1
还没有文件系统:
1 | /dev/nvme1n1: data |
而如果我们查看 sudo file -s /dev/nvme0n1
则会显示:
1 | /dev/nvme0n1: DOS/MBR boot sector; partition 1 : ID=0xee, start-CHS (0x0,0,2), end-CHS (0x3ff,255,63), startsector 1, 16777215 sectors, extended partition table (last) |
执行 sudo mkfs -t xfs /dev/nvme1n1
来为 nvme1n1
创建文件系统,其中 xfs
表示文件系统的类型:
1 | meta-data=/dev/nvme1n1 isize=512 agcount=8, agsize=262144 blks |
接着,我们就可以创建一个文件夹用来挂载磁盘,例如 sudo mkdir /data
。最后将 /dev/nvme1n1
挂载到 /data
上:
1 | sudo mount /dev/nvme1n1 /data |
此时如果查看 df -h
就会包含 /dev/nvme1n1
:
1 | Filesystem Size Used Avail Use% Mounted on |
系统启动自动挂载磁盘
当前的磁盘挂载信息会在系统启动后丢失,如果希望系统启动后自动挂载磁盘则需要向 /etc/fstab
中添加一条记录。
安全起见先备份下 /etc/fstab
:
1 | sudo cp /etc/fstab /etc/fstab.orig |
然后运行 sudo blkid
来查看设备 /dev/nvme1n1
的 UUID
:
1 | /dev/nvme0n1p1: LABEL="cloudimg-rootfs" UUID="15ea47e1-ef7d-4928-9dbe-ffaf0e743653" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="1957f80e-a338-441c-a0e0-ed1575eefda3" |
最后向 /etc/fstab
添加一条记录:
1 | UUID=aa81c000-325c-40b7-ba4c-598ec2c824e0 /data xfs defaults,nofail 0 2 |
可以通过先取消挂载 /data
即 sudo umount /data
然后再执行 sudo mount -a
来验证自动挂载是否生效。