centos 更改EC2示例类型修改了EBS根设备UUID并使磁盘变为只读,如何解决?

1cosmwyk  于 4个月前  发布在  其他
关注(0)|答案(1)|浏览(80)

我有一个完全工作的Amazon Linux 2示例,运行在t2.small示例类型上。我想尝试将示例更改为t2.medium类型进行测试。就像我过去所做的那样,我只需关闭示例,更改类型,然后重新启动示例。
重启后,Apache宕机,我的网站无法访问。我能够登录到示例,当尝试启动Apache时,我发现根驱动器现在是只读的,这阻止了start/etc。通过一些故障排除,我能够重新安装驱动器,并正常运行,但每次我重启示例,它回到只读,我必须执行相同的修复每次让它回到正常。我相信这是一个问题,我的/etc/fstab根设备UUID不匹配当前的根设备UUID。我从来没有改变任何附加的EBS卷,所以我不确定这是怎么发生的
一些相关信息:

$ cat /etc/os-release
NAME="Amazon Linux"
VERSION="2"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2"
PRETTY_NAME="Amazon Linux 2"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
HOME_URL="https://amazonlinux.com/"

字符串
为了发现UUID不匹配/修复,我执行了以下操作:

$ lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  50G  0 disk 
└─xvda1 202:1    0  50G  0 part /
xvdb    202:16   0  50G  0 disk 
xvdf    202:80   0  50G  0 disk 
└─xvdf1 202:81   0  50G  0 part 

$ sudo blkid
/dev/xvda1: LABEL="/" UUID="2a7884f1-a23b-49a0-8693-ae82c155e5af" TYPE="xfs" PARTLABEL="Linux" PARTUUID="4d1e3134-c9e4-456d-a253-374c91394e99"
/dev/xvdf1: LABEL="/" UUID="a8346192-0f62-444c-9cd0-655ed0d49a8b" TYPE="ext4" PARTLABEL="Linux" PARTUUID="2688b30d-29ef-424f-9196-05ec7e4a0d80"


我读到过一个可能的修复方法是执行以下操作:

$ sudo mount -o remount,rw /
mount: /: can't find UUID=-1a7884f1-a23b-49a0-8693-ae82c155e5af.


很明显,这不起作用。所以我查看了我的/etc/fstab:

#
UUID=-1a7884f1-a23b-49a0-8693-ae82c155e5af     /           xfs    defaults,noatime  1   1
/swapfile swap swap defaults 0 0


看到这种不匹配,我试着:

sudo mount -o remount nouuid /


这工作,使根可写,我能够得到服务备份和运行。
所以,这就是我如何相信它与fstab中UUID的不匹配有关。
我的问题:
1.我应该更改/etc/fstab中的条目以匹配当前的UUID:2a 7884 f1-a23 b-49 a0 -8693-ae 82 c155 e5 af吗
1.你知道为什么会发生这种事吗?我怎么才能防止它在未来发生?

3b6akqbq

3b6akqbq1#

我遇到了同样的错误后,我改变了EBS的类型.对于任何人谁面临同样的错误,而你是在一个情况下,根磁盘是“只读”(你不能使用TAB自动完成)这里是你应该做的:
1.执行lsblk以列出用作根磁盘或数据磁盘的设备
1.执行blkid获取该盘的UUID
1.执行mount UUID=aaa-bbb-ccc-ddd-eee -o remount,rw /,你的根磁盘应该可以正常工作。
之后,您还需要更改/etc/fstab中磁盘的UUID。另外,不要忘记仔细检查/boot/grub2.cfg,确保内核参数附带了正确的UUID。如果您在fstab中升级内核时没有正确的UUID,则grub2.cfg中可能存在错误配置的UUID
如果您无法进入系统,控制台终端会提示“无法找到磁盘/dev/disk/by-uuid/aaa-bbb-ccc-ddd-bdb”,以下是您如何解决此问题。
1.重新配置EC2并从AWS网页卸载根磁盘
1.启动新的EC2
1.将根磁盘作为/dev/xvdf装载到这个新的EC2
1.执行mount /dev/xvdf /mnt挂载根盘
1.执行lsblkblkid以获得正确的UUID
1.替换/etc/fstab/boot/grub2.cfg中不正确的UUID
1.卸载并卸载根磁盘,然后将此根磁盘重新安装到它应该属于的位置。

相关问题