首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从initramfs挂载根文件系统

从initramfs挂载根文件系统
EN

Unix & Linux用户
提问于 2016-06-23 14:08:02
回答 3查看 71.1K关注 0票数 32

这是一种常见的情况。无论出于什么原因,initramfs (OpenSUSE,万一有问题)都找不到根文件系统,因此它会将您放到一个救援外壳中。不过,我非常清楚需要安装什么设备。我的问题是:

安装根文件系统并继续引导序列的正确过程是什么?

想必这就是救援队的重点所在。然而,似乎没有人记录你是如何做到这一点的。

显然,我可以在某个地方挂载根文件系统。但是如何使它成为文件系统树的根呢?然后继续正常的引导过程吗?(我以为只要离开壳就行了.但事实并非如此。)在继续之前,您到底需要安装什么,以及如何继续?

EN

回答 3

Unix & Linux用户

发布于 2020-06-22 23:12:24

这取决于问题的类型,如果问题是对initramfs映像本身进行边界处理,那么您需要实际重新生成它(运行update-initramfs)来修复问题。记住,initramfs文件系统是一个RAM文件系统,因此要修复任何需要修复压缩的initramfs映像和/或修复根文件系统所需的内容。

我在LUKS上使用了下面的过程,用于恢复由一个坏密码中断的引导。

首先,我解密了这个分区。

代码语言:javascript
复制
cryptsetup luksOpen /dev/nvme0n1p3 nvme0n1p3_crypt

注意,device_crypt不是随机的。它需要匹配系统挂载时通常使用的名称(分区+ _crypt似乎是标准的)。

接下来,您需要激活该分区上的卷组。

代码语言:javascript
复制
vgchange -ay

现在,您可以尝试挂载文件系统、/、/boot、proc、交换等等,并以这种方式运行。

尽管在我的例子中,我所要做的就是输入exit和initramfs,看到逻辑卷,然后愉快地重新启动。此时,修复damange并运行update-initramfs -u很容易。

票数 7
EN

Unix & Linux用户

发布于 2017-02-07 08:31:52

只需运行fsck命令,而不需要从initramfs中选择,然后重新启动

根分区是sda3

代码语言:javascript
复制
fsck /dev/sda3
票数 5
EN

Unix & Linux用户

发布于 2016-06-23 15:06:53

正常程序是

  1. 挂载/dev/sdX /mnt
  2. 修正/mnt上的问题
  3. 重新启动

你可能会想

  1. 挂载/dev/sdX /mnt
  2. 修正/mnt
  3. 乌蒙特/mnt
  4. mount /dev/sdX /
  5. 手工完成引导

这是不推荐的,您必须在每次引导时都这样做。在生产环境中,您不能确定手动引导遵循与自动引导相同的步骤。

然而,在有关键数据的紧急情况下,步骤5通常归结为:

  • 5.1建立网络
  • 5.2将重要文件复制到安全的地方
票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/291638

复制
相关文章

相似问题

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