Attaching and mounting existing EBS volume to EC2 instance filesystem issue
我的旧EC2实例存在一些未知问题,因此无法再使用它了。因此,我从旧卷的快照创建了一个新的EBS卷,并尝试将其附加并挂载到新实例。这是我所做的:
SSH进入实例,并尝试使用以下方法挂载旧卷:
$ sudo mount /dev/xvdf /vol
输出为:
1 2 | mount: block device /dev/xvdf is write-protected, mounting read-only mount: you must specify the filesystem type |
现在,我知道我应该将文件系统指定为
顺便说一句,以"只读"方式挂载也令我感到担忧,但由于我根本无法挂载该卷,因此我尚未对其进行研究。
提前致谢!
编辑:
当我执行
1 2 3 4 | mount: wrong fs type, bad option, bad superblock on /dev/xvdf, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so |
而
1 2 3 4 5 6 7 8 9 10 | [ 1433.217915] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem [ 1433.222107] FAT-fs (xvdf): bogus number of reserved sectors [ 1433.226127] FAT-fs (xvdf): Can't find a valid FAT filesystem [ 1433.260752] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem [ 1433.265563] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem [ 1433.270477] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem [ 1433.274549] FAT-fs (xvdf): bogus number of reserved sectors [ 1433.277632] FAT-fs (xvdf): Can't find a valid FAT filesystem [ 1433.306549] ISOFS: Unable to identify CD-ROM format. [ 2373.694570] EXT4-fs (xvdf): VFS: Can't find ext4 filesystem |
一线
??挂载分区(如果磁盘已分区):
1 | sudo mount /dev/xvdf1 /vol -t ext4 |
挂载磁盘(如果未分区):
1 | sudo mount /dev/xvdf /vol -t ext4 |
哪里:
-
/dev/xvdf 更改为要安装的EBS Volume设备 -
/vol 更改为您要挂载的文件夹。 -
ext4 是要挂载的卷的文件系统类型
常见错误:
??附加设备列表
检查您的安装命令以获取正确的EBS卷设备名称和文件系统类型。以下将全部列出:
1 | sudo lsblk --output NAME,TYPE,SIZE,FSTYPE,MOUNTPOINT,UUID,LABEL |
如果您的EBS卷显示带有附加的
??如果您的音量未列出
如果未显示,则您没有在AWS Web-Console中
??重新启动时自动重新安装
如果EC2实例重新启动,这些设备将再次卸载。
使它们在启动时再次安装的一种方法是将卷添加到服务器的
??警告:??
如果损坏了
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-using-volumes.html#ebs-mount-after-reboot
第一:
使用上面的
第二:
保留原始
1 | sudo cp /etc/fstab /etc/fstab.original |
第三:
在
1 | <UUID> <MOUNTPOINT> <FSTYPE> defaults,discard,nofail 0 0 |
这是一个帮助您的示例,我自己的
1 2 | LABEL=cloudimg-rootfs / ext4 defaults,discard,nofail 0 0 UUID=e4a4b1df-cf4a-469b-af45-89beceea5df7 /var/www-data ext4 defaults,discard,nofail 0 0 |
就是这样,您完成了。通过运行以下命令检查工作中的错误:
1 | sudo mount --all --verbose |
如果事情是??,您将看到类似这样的内容:
1 2 | / : ignored /var/www-data : already mounted |
我注意到由于某种原因该卷位于
使用
1 | sudo mount /dev/xvdf1 /vol -t ext4 |
像魅力一样运作
在添加新的16GB卷并将其附加到现有实例后,我也遇到了此问题。首先,您需要知道所拥有的磁盘
跑
1 | sudo fdisk -l |
您将获得一个输出,如下所示,该输出详细说明了有关磁盘(卷)的信息。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | Disk /dev/xvda: 12.9 GB, 12884901888 bytes 255 heads, 63 sectors/track, 1566 cylinders, total 25165824 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 identifier: 0x00000000 Device Boot Start End Blocks Id System /dev/xvda1 * 16065 25157789 12570862+ 83 Linux Disk /dev/xvdf: 17.2 GB, 17179869184 bytes 255 heads, 63 sectors/track, 2088 cylinders, total 33554432 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 identifier: 0x00000000 Disk /dev/xvdf doesn't contain a valid partition table |
如您所见,存在新添加的磁盘/ dev / xvdf。要使其可用,您需要在其上创建一个文件系统并将其挂载到挂载点。您可以使用以下命令来实现
1 | sudo mkfs -t ext4 /dev/xvdf |
制作新的文件系统会清除卷中的所有内容,因此请在没有重要数据的情况下在新卷上执行此操作
然后将其挂载在/ mnt文件夹下的目录中
1 | sudo mount /dev/xvdf /mnt/dir/ |
通过运行以下命令确认已将卷安装到实例
1 | df -h |
这就是你应该拥有的
1 2 3 4 5 6 7 8 9 | Filesystem Size Used Avail Use% Mounted on udev 486M 12K 486M 1% /dev tmpfs 100M 400K 99M 1% /run /dev/xvda1 12G 5.5G 5.7G 50% / none 4.0K 0 4.0K 0% /sys/fs/cgroup none 5.0M 0 5.0M 0% /run/lock none 497M 0 497M 0% /run/shm none 100M 0 100M 0% /run/user /dev/xvdf 16G 44M 15G 1% /mnt/ebs |
就是这样,您已将要使用的卷连接到现有实例。
信用
我遇到了这个问题,现在我明白了,
1 2 3 4 5 6 | [ec2-user@ip-172-31-63-130 ~]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk └─xvda1 202:1 0 8G 0 part / xvdf 202:80 0 8G 0 disk └─xvdf1 202:81 0 8G 0 part |
您应该安装
/dev/xvdf1 (which type is a partition)
没有安装
/dev/xvdf (which type is a disk)
我有不同的问题,在这里,当我签入dmesg日志时,问题是现有根卷的UUID和另一个ec2的根卷的UUID相同。因此,要解决此问题,我将其安装在另一种Linux类型的ec2上。有效。
您无需根据快照创建新创建的卷的文件系统,只需附加卷并将其安装到所需的文件夹中即可。我已将新卷附加到以前删除的卷的相同位置,并且工作正常。
1 2 3 4 5 | [ec2-user@ip-x-x-x-x vol1]$ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk └─xvda1 202:1 0 8G 0 part / xvdb 202:16 0 10G 0 disk /home/ec2-user/vol1 |