首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >系统未启动-未能激活交换/swapfile

系统未启动-未能激活交换/swapfile
EN

Ask Ubuntu用户
提问于 2020-09-24 23:41:02
回答 3查看 22.6K关注 0票数 7

从昨天起,我对Linux的认识是100%的,我似乎做错了什么。昨晚我让系统启动并运行,没有明显的问题,但是今天当我试图启动时,我得到了一个错误,整个事情都失败了。

一些背景:我的电脑有一个500 GB的SSD,这是Ubuntu (20.04.1版)安装在上面的,还有一个2TB的HDD,是我昨晚格式化后使用的。我怀疑我的问题与这一事实有关,因为在格式化系统之前,我能够多次重新启动系统而没有问题。不幸的是,我对Ubuntu的了解还不够,甚至不知道从哪里开始,而且我似乎无法在网上为我的具体情况找到任何帮助。

在启动时,我有三个选项

  • Ubuntu
  • 为ubuntu提供高级选项
  • UEFI固件设置

下面是我在选择Ubuntu之后得到的具体输出:

代码语言:javascript
复制
    [Failed] Failed to activate swap /swapfile
    [Depend] Dependency failed for Swap

如果有任何其他信息与问题相关,或者有什么我应该尝试的,请告诉我。如有任何建议,请见谅。

下面是在根访问中运行推荐命令的输出:

代码语言:javascript
复制
    grep -i swap /etc/fstab
    /swapfile          none          swap    sw          0     0

    ls -al /swapfile
    -rw------- 1 root root 2147483648 Sep 24 03:41 /swapfile
EN

回答 3

Ask Ubuntu用户

回答已采纳

发布于 2020-09-25 00:27:33

这一切看起来都很正常,但是让我们重新创建/swapfile。

启动到恢复模式就像你刚才做的那样,然后这样做.

注意:不正确地使用dd命令会导致数据丢失。建议复制/粘贴。

terminal (或根#提示符)中.

代码语言:javascript
复制
sudo swapoff -a           # turn off swap
sudo rm -i /swapfile      # remove old /swapfile

sudo dd if=/dev/zero of=/swapfile bs=1M count=4096

sudo chmod 600 /swapfile  # set proper file protections
sudo mkswap /swapfile     # init /swapfile
sudo swapon /swapfile     # turn on swap
free -h                   # confirm nnG RAM and 4G swap

确认/etc/fstab末尾的/swapfile行.并确认没有其他“交换”线..。

若要编辑,请使用sudo -H gedit /etc/fstabsudo pico /etc/fstab

代码语言:javascript
复制
/swapfile    none    swap    sw      0   0
代码语言:javascript
复制
reboot                    # reboot and verify operation

更新#1:

/etc/fstab被搞乱,导致文件系统被只读。新安装的Ubuntu只有一个小时,所以我建议重新安装Ubuntu。

代码语言:javascript
复制
UUID="fae3ba3a-abaf-4eca-8139-40d5328d017c" /srv ext4 errors=remount-ro 0
票数 4
EN

Ask Ubuntu用户

发布于 2021-01-07 17:35:35

其实我也有过类似的问题。缺点是,我从一个失败的硬盘中完成了一个副本,然后Ubuntu决定完成对我的交换的一个小改动。因为我的配置没有正确的设置,所以所有的东西都被完全相同的问题打破了。

我用不同的方式解决了这个问题。

因此,我遵循了与Heynnema的https://askubuntu.com/a/1277621/1168565相同的步骤,并创造了奇迹,但在我的问题上,这并不是根本问题。

在fstab中,我遇到了一个问题,我的根驱动器没有安装(按照正常的Ubuntu安装,稍后可以解释)。因此,当我将我的主要硬盘驱动器添加到fstab作为/时,我能够毫无问题地启动。

下面是我的fstab的一个例子:

代码语言:javascript
复制
$ cat /etc/fstab
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=fa1b78f3-9d98-42e3-9a72-a9716000d8f9 /               ext4 defaults 0 0
/swapfile       none     swap   sw   0   0
UUID=b31e2ef4-6240-47d6-8ef9-2b98622603a8 /1tb       ext4 defaults 0 0
UUID=e37a2ae4-74c8-4bd1-b3ad-36ba5904a680 /500gb     ext4 defaults 0 0

因此,我的第3行以前并不存在,并导致了问题,因为在更新后进行初始化时,交换区无法找到/

但是,当我加载到恢复系统时,我无法编辑fstab,因为它是只读的。只需使用命令mount -o remount /,系统将自动删除只读,以便使用首选文本编辑器更新/etc/fstab

如果您的系统出现问题或由于只读问题而将您锁定在外,我建议使用livecd系统来修改您的/etc/fstab,然后正常启动。

票数 0
EN

Ask Ubuntu用户

发布于 2022-04-11 10:04:20

我也有同样的问题,并成功地解决了它。

最大的问题是只读文件系统。正如您已经提到的那样,/etc/fstab被弄乱了,导致文件系统被只读。我认为您错误地将默认磁盘设备(文件系统安装在其上)安装在/etc/fstab中。

作为一种解决方案,您只需要在恢复模式下使用uuid标签手动重新装入默认磁盘。以下是命令:

sudo挂载-o重新装入uuid=您的默认磁盘/的-uuid

最后/表示根节点。

在此之后,您的文件系统是可写的。在重新启动系统之前,您应该正确地修改/etc/ you。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1277616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档