我尝试将交换文件添加到 AWS EC2 实例上的根文件系统。我在编辑 fstab 时犯了错误吗?
sudo dd if=/dev/zero of=/swapfile bs=1G count=4
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
swapon -s
我已经编辑了 /etc/fstab
vi /etc/fstab
/swapfile swap swap defaults 0 0
交换工作正常,但重启后系统无法工作。我决定将设备连接到另一个实例并删除 fstab 中的一行,但它无法安装到另一个实例上。
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.
如何编辑 fstab 并删除未安装设备上的交换数据行?
lsblk -f
输出
NAME FSTYPE LABEL UUID MOUNTPOINT
xvda
`-xvda1 ext4 cloudimg-rootfs 7b2XXX-16d3-XXXX-b32e-1857XXXXXXXX /
xvdf
`-xvdf1
答案1
看起来您可以使用 CLI 命令提取该控制台输出。
不幸的是,除非您使用 Elastic Block Storage 作为 EBS 支持的卷运行根文件系统设备,否则无法恢复根文件系统(您必须挂载它才能实际修改 /etc/fstab)。如果这是一个实例存储卷,我认为没有办法恢复它。
关于这些坏消息我很遗憾...