本来不想在这上面写“技术”类的,小白菜鸟也没啥写的,但我这次遇到的还是记录一下吧。
这电脑,两个2.5寸硬盘位和一个nvme硬盘位,刚到的时候带的一个SSD装的WIN10。后来把一个笔记本光驱位装了Ubuntu的SSD硬盘装到这上,然后装上了Deepin,至此是WIN10+Deepin的双系统。
后来不知道当时是要干啥来,在另一笔记本上装了Linux Mint,这台上也想把Deepin换成Linux Mint,结果装的时候选硬盘我记得明明是选的装了Deepin的硬盘,结果最后把WIN10的那个给格了,后来一直也没再装WIN10。用Windows的需求,当然那个旧笔记本非光驱位的系统是WIN10,就可以用那个,还有就是后来的键盘电脑,虽然只有2G内存但是也可以凑合用。
之后又买了个500G的SSD,就权当仓库盘吧,把那原来装WIN10后来格错装了Linux Mint的硬盘拿出给NUC之类的用。再然后就是买了个nvme的盘装进去,系统装了Manjaro。至此现在的双系统是Manjaro+Deepin。
平时基本上一直是Deepin上用,那会Manjaro是在NUC上先尝试着弄,这台就基本没怎么进过系统。后来实在是感觉这Deepin上的软件旧了,就又用开这台上的Manjaro了,结果长期没用升级还升不了,网上查了下,找到解决方法升了版本,但是没记录下来。
后来某天看到了UOS,决定试试,把这机子上的Deepin替换了,反正V20正式版没出来,这个还是要激活码的,领了个然后装上,刚装上没联网,我说怎么激活又要输入离线激活码。对了,这个系统用Sudo是要在开发者模式点下获得root权限,说的是要重启,但没重启好像可以,忘了。
然而开机GRUB命令界面,进不去Manjaro了,唉,那就凑合用UOS吧,然而昨晚脑瘫的在EFI里把ubuntu目录删了,因为之前装系统时就在开机启动选单中发现了,以为是以前遗留下来的,结果开机到了grub界面不走了。还把Manjaro那盘里的EFI分区里的Manjaro移到这里企图改变进不了Manjaro的情况,其实这是很傻的,但是我记得以前黑苹果时就是都放一个EFI分区,现在是各有一个EFI分区。应该是装系统时能自己设置,但我选了全盘安装。
以上都是废话,下面也有废话,实为流水帐。
以往遇到这情况我就重装了,反正也没啥重要的,因为我觉得照着网上的也不一定能解决。结果这次,还就是手机上用传统的搜索引擎百度搜出的。先搜的好像是grub1的,后来看到说是root ,kernel是grub的命令,现在的grub2没有这些命令,然后用的下面的方法。
https://www.linuxidc.com/Linux/2019-08/159778.htm
输入:ls 查看所有磁盘分区:hd(x,x)......
用:ls hd(x,x)/grub 找grub所在的分区,有正确执行结果的便是
找到linux所在分区后执行:
set prefix=hd(x,x)/grub
set root=hd(x,x)
insmod normal
再使用normal命令进入系统后,再修复grub 配置。
然后分别是尝试进(hd1,gpt2) (hd2,gpt2) 这俩我瞎写的,记不清了,就是一个是Manjaro的盘,一个是UOS的盘。发现选UOS的盘进系统是在全屏的GRUB命令界面,按F11选单选中UOS的那盘UEFI也是一样。选Manjaro则是黑屏上面有提示Error Hibernation device 'UUID=',按F11选单选中Manjaro的那盘UEFI也是一样。那我先查这Manjaro进不去的原因,看到是说共用一个swap分区,可能在安装的时候对swap进行了一次格式化,导致UUID变了。
后来我是怎么进系统改的,好像也不是进的Live U盘啊,可能是插上Live U盘,然后在开机选单里选的那硬盘上的UOS吗,记忆错乱了,还是说上面的那方法进的UOS。仔细理理就是,这UOS U盘没有Live选项,上面的grub命令是可以进UOS的,通过F11选单上选UOS所在的UEFI进去是全屏的GRUB命令界面。
当时是进去UOS后,通过什么update-grub操作后重启,发现并没用,开机还是GRUB命令。那就继续上面说的先解决Manjaro进不去的问题,通过进入UOS系统,找到Manjaro的硬盘,当时是先看了UOS的/etc/fstab里swap分区的UUID改Manjaro盘里的/etc/fstab,通过上面grub命令开机还是有提示,后来又照下面方法来弄
https://blog.csdn.net/SunJavaApplet/article/details/105040210
https://blog.csdn.net/kaluosi2010/article/details/103322004
命令1 查看swap的UUID
sudo blkid 或者 lsblk -f命令2 查找grub.cfg中swap UUID
sudo cat /boot/grub/grub.cfg | grep -i resume修改UUID与命令1查找到一致
sudo nano /boot/grub/grub.cfg reboot
结果是还是不要随便改/boot/grub/grub.cfg,因为执行update-grub会复原的,其实不叫是复原,应该是读配置重新生成,然后在/etc/default/grub里找到resume那块改成和UOS 上swap分区的UUID,再执行update-grub,一看/boot/grub/grub.cfg相关的resume已经都改过来了,再重启用F11选单(此时不想输入grub命令了),可以无错进入了。后来又grub-install 选中了这个Manjaro的nvme盘,此时GRUB界面变成了Manjaro的图,UOS还是进不去,结果又搜到了一条
https://blog.csdn.net/DefetC/article/details/80077495
直接把debian格式化,然后装的deepin,故efi分区里残留了debian文件夹。将其删除时发现此分区中还有Ubuntu文件夹,然后头脑一热,就手欠删掉了。之后就进不了grub2了。
后来发现deepin的引导文件夹本身就是两个,即Ubuntu+deepin,淦。
我去那个UOS U盘里看了下并没有ubuntu,然而又看到了下面的一篇帖子
https://bbs.deepin.org/forum.php?mod=viewthread&tid=175497
最后在/dev/sda1/ esp分区下的EFI文件夹下建立了ubuntu文件夹,将EFI/deepin 中的grub.cfg 复制到了 EFI/ubuntu下
就照着这个操作了,只不过是从EFI下的UOS里复制的。重启完美进入UOS系统,我又用grub-install装到了UOS这个盘中。但从这进Manjaro还是进不去,卡在了机器主板Logo处,此时已经凌晨两点。
早上又想解决这个问题,开机在GRUB时,在Manjaro上按e,拍照,然后用F11在Manjaro的GRUB选单上按e,发现是底面缺/boot/amd-ucode.img /boot/initramfs-5.6-x86_64.img这样的,随即在UOS这边GRUB上按e,最后跟上这两条,进Manjaro可以了。
那改还是得在UOS这边改,还是那个问题,/boot/grub/grub.cfg不能随便改,改了会变动,要改就是改配置里根据配置生成,搜了下应该是在这里填/etc/grub.d/40_custom,手动填啥东西还是算了吧,最后用了grub customizer这软件,一改都改,重启开机怎么还是进不去,发现是都改了子菜单里了,把那根菜单上的Manjaro也改了,这下可弄好了。此时看40_custom_proxy里就有grub customizer里编辑后的内容,实际内容我看是在/etc/grub.d/proxifiedScripts/custom这里。又然而了,此时进Manjaro发现,屏幕会有横向的细纹,唉,我就也装了个grub customizer,把里面的一个个选项都复制出来,其实就是上部缺少
load_video
set gfxpayload=keep
insmod gzio至此,系统都能进了,没啥问题了,就是可能Manjaro内核更新的时候吧,我得在UOS这边再这样操作下。。