admin 管理员组

文章数量: 887021

起因

2022年7月22日,由于Windows下日益增多的软件数量和后台服务,日常使用越来越卡,于是准备安装Linux双系统。

确定Linux发行版

通过搜索,确定合适的Linux发行版,最终发现Deepin比较合适,原因如下:

  • Deepin是国产Linux发行版
  • Deepin能运行安卓应用

于是确定安装Deepin。

进入安装菜单

使用官方启动盘制作工具安装

2022年7月23日晚,下载好镜像文件和官方启动盘制作工具。
2022年7月24日,开始准备U盘。U盘本来有两个分区,由于希望保留后一个分区,并且为了制作好启动盘后原分区扩展方便,于是把前一个分区删除,把后一个分区移动到前一个分区的位置,在后部建立新分区,并将其格式化。
之后按照常规方法,使用官方启动盘制作工具把U盘的后一个制作成启动盘。从Windows设置-更新和安全-恢复-高级启动中点击立即重新启动,选择通过设备启动,发现有一个新的启动选项:Linpus lite,点击后电脑各指示灯保持亮一段时间后突然全暗,一会后又亮,之后又进入了Windows启动菜单,这次选择通过设备启动后没有Linpus lite了,于是选择通过USB EFI启动,之后提示没有USB EFI设备,点击“OK”后发现启动选项中第一个是Windows Boot Manager,第二个是Linpus lite,再次选择Linpus lite,启动后一段时间,屏幕上出现命令行,最后提示

—[ end Kernel panic - not syncing: No working init found. Try passing init= option to kernel. See Linux Documentation/admin-guide/init.rst for guidance. ]—

这时按任何按键均无反应,于是强制关机。
这时怀疑可能是U盘分区导致的错误,于是启动到Windows,发现U盘的另一个分区无法识别,于是只能将U盘分区全部删除,并格式化为一整个分区,之后多次尝试重新制作启动盘并通过设备启动。期间有时候启动设备没显示Linpus lite,有时候启动Linpus lite后又是没启动成功并再进入了Windows启动菜单。期间出现了grub菜单,使用ls (hd0,gpt1)/boot/grub后输出为

???q?w2."?i/

重启后发现这个目录下的文件名确实乱码了,尝试使用chkdsk恢复,但提示:

文件夹 \boot\grub中无法恢复的错误。

于是只能再次制作启动盘,但这次制作到58%卡了很长时间,在任务管理器中发现7-Zip Console的CPU占用率非常高,但深度启动盘制作工具的硬盘读写占用率很低。最终由于卡的时间太长,只能强制结束进程,但7-Zip Console进程无法结束,甚至导致无法关机,最终只能强制关机。

使用Rufus安装

怀疑可能是硬件问题,于是使用Rufus重新制作启动盘,勾选检查设备坏块,漫长的等待后发现:

0个读取错误
0个写入错误
202个损坏错误

2022年7月25日,怀疑可能是之前使用快速格式化没有将数据彻底清除导致,于是再次取消快速格式化重新制作启动盘,且分区类型选择GPT,目标系统类型选择UEFI (非 CSM),等待38分06秒后,制作完成。检查/boot/grub,里面不是乱码。从BooticeUEFI启动序列中未发现U盘上的系统,于是手动添加/EFI/BOOT/bootx64.efi,之后重新启动,选择新建的启动选项,仍未启动成功,又进入了启动菜单,这次又没这个新建的启动选项了。
怀疑可能和昨天搜索到的Secure Boot有关,于是再次搜索:

坑爹的Secure Boot设置 - 简书

进入UEFI固件设置,发现Secure Boot确实开着,于是将其关闭后再次启动U盘上的系统,这次又进入了grub菜单,发现/boot中的文件没了,只能进入Windows,再用Rufus制作一次启动盘。这次

选项
分区类型GPT
目标系统类型UEFI (非 CSM)
文件系统FAT32 (默认)
簇大小8192字节 (默认)
快速格式化勾选
检查设备坏块不勾选

4分27秒后,制作成功,再次重启,使用U盘上的系统启动。这次进入命令行后交替报错:

SQUASHFS error: xz decompression failed, data probably corrupt
SQUASHFS error: Failed to read block 0xbb2c083: -5

一段时间后交替出现另外错误:

SQUASHFS error: Unable to read fragment cache entry [bdf5db7]
SQUASHFS error: Unable to read page, block bdf5d7, size 7728

搜索后找到了

关于笔记本安装双系统报错的问题,求解 - Ubuntu中文论坛

但整个U盘中并未发现menu.lst文件,只能观察相似位置的/boot/grub/grub.cfg,发现里面有四种系统,于是再次重启,尝试第三个选项,即

Install Deepin 20.6 with kernel 5.15 desktop

之后出现命令行


[ 9.014690] async_tx: api initialized (async)
done.
Begin: Running /scripts/init-premount …

BusyBox v1.30.1 (Debian 1:1.30.1.3-1+dde) built-in shell (ash)
Enter ‘help’ for a list of built-in commands.

(initramfs)

尝试第四个选项,即

Install Deepin 20.6 with kernel 5.15 desktop (Safe graphics)

仍然和第三个选项一样。

再次搜索:

安装deepin时出现initramfs和Busybox的问题_vegetari的博客-CSDN博客_deepin安装出现initramfs

台式机安装deepinV20失败,卡在initramfs界面-论坛-深度科技

Ubuntu开机启动进入initramfs的解决方案_Luban250的博客-CSDN博客_ubuntu进入initramfs

发现exit命令可以查看错误信息提示,试了一下后:

(initramfs) exit
No supported filesystem images found at /live.

由于电脑是UEFI启动,在UEFI固件设置中没有快速启动的选项,在Windows中的快速启动也早就关了。
再次搜索:

Tails boot failure: “no supported filesystem images found at /live” · Issue #43 · ventoy/Ventoy

boot - When I start the Ubuntu ISO, initramfs says “unable to find a medium containing a live file system” - Ask Ubuntu

boot - How to fix “(initramfs) unable to find a medium containing a live file system” on custom Live USB? - Ask Ubuntu

尝试换个USB插口,USB3.0和2.0都试过了,仍然无效。
之后引导菜单中无法显示U盘上的系统,在Bootice中手动添加也无效。
使用chkdsk检查U盘,又发现了问题,于是再次修复

chkdsk F:

Windows 已检查文件系统并且发现了问题。
运行 CHKDSK (带有 /F (修复)选项)以更正这些问题。

chkdsk /F F:

Windows 已更正文件系统。
无需采取进一步操作。

Bootice中仍然无法添加上启动项。
只能再次使用Rufus制作启动盘。这次

选项
分区类型MBR
目标系统类型BIOS 或 UEFI
添加对旧BIOS修正(额外的分区,校准等)勾选
文件系统FAT32 (默认)
簇大小8192字节 (默认)
快速格式化勾选
检查设备坏块不勾选

提示需要下载 ‘ldlinux.sys’ 和 ‘ldlinux.bss’,选择
4分27秒后制作完成,再次启动,这次选择安装选项(即选择内核版本和是否安全图形的菜单)后,屏幕一直保持着蓝色背景很长时间,重启后,Linpus lite又没了。

用Ventoy完美解决

这时几乎快要放弃希望了,回到Deepin的官网,突然看到友情链接中有Ventoy,想起来之前搜索解决方法时看到过Ventoy,于是尝试下载Ventoy,在U盘中安装,将镜像文件复制到U盘中,重新启动,选择Linpus lite,正常进入安装选项,选择其中一个后,仍然会出现命令行、黑屏、出现deepin图标闪烁等常规情况,但是!U盘的指示灯一直在闪烁!说明U盘上的系统正在加载!
过了一会,终于……Deepin的安装菜单出现了!

选择安装位置

怀着激动的心情选择安装位置,本来想安装在容量较大的机械硬盘上,却发现机械硬盘是MBR分区表,而通过UEFI引导的Deepin只能装在GPT分区表的硬盘上。
于是退出安装,进入Windows,搜索能否把MBR转成GPT,发现Windows有自带的MBR2GPT工具。
但是验证时却发生错误:

C:\Windows\system32>MBR2GPT /validate /disk:0 /allowFullOS
MBR2GPT: Attempting to validate disk 0
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
Disk layout validation failed for disk 0

继续搜索:

用 win10 自带的 MBR2GPT 无损的将 BIOS+MBR 转为 UEFI+GPT 模式-远景论坛-微软极客社区

使用mbr2gpt执行MBR2GPT /validate /allowfullos时报错: Disk layout - Microsoft Community

无损转换 轻松实现MBR To GPT_参考网

Windows 10 1903 更新过程中遇到的一系列硬盘问题及解决过程 - 简书

查看C:\Windows\setupact.log,发现:

ValidateLayout: Unrecognized partition found, index 0

使用diskpart查看分区:

C:\Windows\system32>diskpart
......
DISKPART> list disk

  磁盘 ###  状态           大小     可用     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  磁盘 0    联机              931 GB   377 GB
  磁盘 1    联机              119 GB      0 B        *

DISKPART> select disk 0

磁盘 0 现在是所选磁盘。

DISKPART> list part

  分区 ###       类型              大小     偏移量
  -------------  ----------------  -------  -------
  分区      0    扩展的                931 GB  1024 KB
  分区      1    逻辑                  88 GB  4096 KB
  分区      2    逻辑                 465 GB   120 GB

分区0是扩展分区,可能MBR2GPT无法转换扩展分区,虽然DiskGenius可以转换,但为了防范风险,最终还是在固态硬盘上分出了一部分空间用来装Deepin系统。
重新安装,选择固态硬盘上分出的那部分空间来挂载根目录,本来想把home目录挂载到机械硬盘中的,但安装菜单里点了机械硬盘的分区就提示MBR不行,要用GPT……
算了,home目录之后再手动挂载吧,起码根目录能正常挂载了。

安装成功

选择好挂载的分区后继续安装,之后很顺利地安装成功了。重启后发现进入的是Deepin的引导菜单,最后终于能正常进入Deepin系统了!
之后尝试重启回Windows,在Deepin的引导菜单选择Windows Boot Manager后进入了Windows的引导菜单,这时候默认选择的是Windows的系统,等待几秒后成功进入Windows系统,发现之前分的区没有显示,应该是因为Windows无法直接显示ext4分区。

本文标签: 深度 双系统 系统 Deepin