我有一个完全工作的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.你知道为什么会发生这种事吗?我怎么才能防止它在未来发生?
1条答案
按热度按时间3b6akqbq1#
我遇到了同样的错误后,我改变了EBS的类型.对于任何人谁面临同样的错误,而你是在一个情况下,根磁盘是“只读”(你不能使用TAB自动完成)这里是你应该做的:
1.执行
lsblk
以列出用作根磁盘或数据磁盘的设备1.执行
blkid
获取该盘的UUID1.执行
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
装载到这个新的EC21.执行
mount /dev/xvdf /mnt
挂载根盘1.执行
lsblk
和blkid
以获得正确的UUID1.替换
/etc/fstab
和/boot/grub2.cfg
中不正确的UUID1.卸载并卸载根磁盘,然后将此根磁盘重新安装到它应该属于的位置。