共计 2790 个字符,预计需要花费 7 分钟才能阅读完成。
这篇文章将为大家详细讲解有关如何实现 AWS-EC2 自动挂载 EBS 卷或磁盘,文章内容质量较高,因此丸趣 TV 小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
linux 下自动挂载的配置文件是放在
[root@ip-172-31-10-1 mongodb]# cat /etc/fstab## /etc/fstab# Created by anaconda on Mon Feb 22 17:08:22 2016## 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=ef6ba050-6cdc-416a-9380-c14304d0d206 / xfs defaults 0 0
在这个配置文件中,最后一行显示的是自动挂载的磁盘。
对于用 AMI 启动的 EC2 实例特别要注意,在第一次按照默认配置(实际的启动卷数量)进行启动之后,若想修改默认的卷个数或进行其他卷挂载的时候,需要修改自动挂载脚本。若在不修改配置文件的情况下,解除了在配置文件中出现的原挂载卷,会导致实例在重启后无法正常启动,你的 EC2 实例也就坏了…
那么,如何查看自己挂载的卷是否在自动挂载的配置文件中?
下面进行查询
首先要查询到机器上挂载了那些卷:
$ df -lhFilesystem Size Used Avail Use% Mounted on/dev/xvda1 30G 11G 20G 37% /devtmpfs 3.9G 0 3.9G 0% /devtmpfs 3.7G 0 3.7G 0% /dev/shmtmpfs 3.7G 17M 3.7G 1% /runtmpfs 3.7G 0 3.7G 0% /sys/fs/cgroup/dev/xvdg 500G 377G 123G 76% /data_bak/dev/mapper/kp-data 695G 458G 237G 66% /datatmpfs 757M 0 757M 0% /run/user/1000
从上面可以看出,/dev 开头的是挂载卷,总共有三个挂载卷,我们需要知道每个挂载卷的 UUID 号。
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 30G 0 disk
└─xvda1 202:1 0 30G 0 part /
xvdh 202:112 0 700G 0 disk
└─kp-data 253:0 0 695G 0 lvm
loop0 7:0 0 100G 0 loop└─docker-202:1-466265-pool 253:1 0 100G 0 dm
└─docker-202:1-466265-07b91bd38d426f9da2428c068aa1b780e3ca2236a29cce6efba92c4143adf498 253:2 0 10G 0 dm
loop1 7:1 0 2G 0 loop└─docker-202:1-466265-pool 253:1 0 100G 0 dm
└─docker-202:1-466265-07b91bd38d426f9da2428c068aa1b780e3ca2236a29cce6efba92c4143adf498 253:2 0 10G 0 dm
# blkid
/dev/block/202:1: UUID= ef6ba050-6cdc-416a-9380-c14304d0d206 TYPE= xfs /dev/loop0: UUID= 32b45258-a08f-4e9b-b2fa-5baa99f96c7d TYPE= xfs /dev/mapper/docker-202:1-466265-pool: UUID= 32b45258-a08f-4e9b-b2fa-5baa99f96c7d TYPE= xfs /dev/mapper/docker-202:1-466265-07b91bd38d426f9da2428c068aa1b780e3ca2236a29cce6efba92c4143adf498: UUID= 32b45258-a08f-4e9b-b2fa-5baa99f96c7d TYPE= xfs
通过上面两个命令可以查找到对应的 UUID 号。
将需要去除的卷那一行去掉即可。
另外将 EBS 卷和实例分离的步骤
使用以下命令卸载 /dev/sdh 设备
umount -d /dev/sdh
打开 Amazon EC2 控制台 https://console.aws.amazon.com/ec2/。
在导航窗格中,选择 Volumes。
选择卷,然后选择 Actions、Detach Volume。
在确认对话框中,选择 Yes, Detach。
如果碰到显示卷正在使用 busy 的信息,说明有程序正在使用这个卷。
[centos@ip-172-31-10-1 ~]$ sudo umount /dev/xvdf
umount: /data: target is busy.
(In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))
通过下面命令查找是哪些进程在使用:
[centos@ip-172-31-10-1 log]$ lsof | grep /data bash 11100 centos cwd DIR 202,80 4096 262146 /data/mongo/logbash 11863 centos cwd DIR 202,80 4096 2 /databash 12107 centos cwd DIR 202,80 4096 262148 /data/mongo/dblsof 13481 centos cwd DIR 202,80 4096 262146 /data/mongo/loggrep 13482 centos cwd DIR 202,80 4096 262146 /data/mongo/loglsof 13483 centos cwd DIR 202,80 4096 262146 /data/mongo/log
然后将这些进程 kill 掉,就可以顺利 umount 卷或磁盘了~
关于如何实现 AWS-EC2 自动挂载 EBS 卷或磁盘就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。