zoukankan      html  css  js  c++  java
  • win10 基础之上安装 Linux-Manjaro-Deepin 连夜采坑,快速整理下

    本人基于已有MBR分区的单SSD硬盘win10系统基础上,安装manjaro deepin,组成双系统。
    如果有人看到这篇随笔作为操作参考,那么建议您先全部看完再操作。

    一、硬盘分区表转换,U盘刻录和安装

    一切操作前,你需要将硬盘提前释放出一些 free space。

    然后官方网站下载所需iso镜像,然后在win10中安装 refus刻录工具,准备一个8GB以上的U盘(刻录时,原有数据会清除,记得备份),
    打开 refus,插入U盘(假设你的硬盘分区表不需要转换为 gpt,或者你有多块硬盘,或者你压根不是要双系统,):

    refus设置
    我是优先选择 DD镜像模式写入。

    参考

    设置bios 关闭安全启动,保存重启,找快捷键进入启动项设置,我的dell是f2和f12,选择 uefi usb启动,然后进入manjaro安装系统,有详细安装指南,可以看看,也参考百度其他人做法即可。

    关于分区的问题,我的win10是传统mbr模式,已经存在3个分区,但 manjaro 还需要多个分区,这是就需要转换硬盘的分区表了(因为我只有一个硬盘),可以先了解下 uefi+gpt 扫盲。
    关于ssd硬盘转换为 gpt 分区表的形式,可以百度无损转换方法,我是最终参考以下视频实现,进入 win pe系统(我还有个U盘,其中安装了win pe)的DG磁盘分区工具,把2硬盘转换为 gpt,然后手动分出 EFI 分区。
    gpt 和 mbr 无损互转

    这时再去走另一个U盘的UEFI manjaro 安装系统即可,安装配置时可见已经转换为 GPT形式,然后可以分区了,分区方案自行百度。
    比如这样

    二、修复启动引导

    装完后,可能引导是坏的,进不了windows,或者进不了manjaro,
    发现我的 dell本 bios设置中,设置为 UEFI 启动方式时,可以进一步指定 manjaro 的 efi 文件, 所以很容易解决进不了 manjaro 的问题。

    但是,安装 manjaro 后大概率是进不了windows,此时,我是采用的在 manjaro 的 grub 启动器中,手动添加 windows 的引导:

    wiki中找到这一块:The best way to add other entries is editing /etc/grub.d/40_custom or /boot/grub/custom.cfg.

    关于刚才的wiki,主要关注:

    A folder Manjaro (name could be some other also) containing the file grubx64.efi should also be present in /boot/efi/EFI/ folder, which should contain the grubx64.efi file which will be used by rEFInd to boot Grub.
    
    So it could be like-
    
    /boot/efi/EFI/Manjaro/grubx64.efi
    rEFInd would use this file for booting Manjaro.
    
    If you do not have this file or folder, try-
    
    sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Manjaro --recheck
    to create /boot/efi/EFI/Manjaro/grubx64.efi
    

    理论上使用U盘安装了 Manjaro 后,进入后是可以找到 /boot/efi/EFI/Manjaro/grubx64.efi 这个目录和文件的,但问题就是只看得到 manjaro 引导,缺失 windows,此时需要根据 wiki来操作。

    直接sudo nano 打开这个所谓的40_custom的grub配置文件,在末尾添加:

    	menuentry "win10正在启动..." {
    		insmod part_gpt
    		insmod fat
    		insmod search_fs_uuid
    		insmod chain
    		search --fs-uuid --set=root $hints_string $fs_uuid
    		chainloader /EFI/Microsoft/Boot/bootmgfw.efi
    	}
    

    格式是上面这样,但是 $hints_string 和 $fs_uuid 需要替换为你本机的情况,可以通过命令行运算出来。看上面的wiki链接吧。

    需要注意的是,这里在干什么?这里是 启动器里只有manjaro,没有win10,所以需要把win10的启动配置手动添加启动器里,然后选择性的启动。
    所以先看 manjaro 的 /boot/efi 下的 /EFI/Microsoft/Boot/bootmgfw.efi 这个windows相关的东西存在吗?
    如果没有,你这里这样写,最后也是启动不了的,因为压根找不到,这时候,就需要 win pe系统,去用工具修复windows的启动,

    假如以上提到的目录都能找的话,那么修改好之后保存退出,运行:

    grub-mkconfig update-grub 
    # 或者下面的命令,都是为了改动后更新 grub.cfg,但后者指定新路径而已,可以两个都跑一下,CLI中的操作记录是一样的
    grub-mkconfig -o /boot/grub/grub.cfg 
    

    此时应该保证 bios 是 uefi 启动模式,然后启动项设置中保证 manjaro 优先,此时应该能够选择启动 manjaro 或者 windows了。

    以上的手动编辑启动win10的配置的操作,就是为了方便,把 windows 的启动和 manjaro 的启动并列到一起,‘寄宿’到 manjaro 的启动项里,然后此时只需要方向键选择启动哪个即可。
    不然每次都要 F2 F12 什么后还要进一步做出选择,比较麻烦(我的情况是这样)。

    三、注意事项:

    1. 假如有人看到这里,记得先粗略看完再行动,你的情况可能和我不一样,有些步骤也不一定都需要。
    2. 坑比较多,记得bios关闭 secure boot
    3. 硬盘转为GPT时(假如你是MBR的形式,具体百度了解自己的硬盘是什么分区表形式),新建的EFI,最后就用来作为 manjaro 的挂载点 /boot/efi
    4. 假如使用 win pe 修复windows启动引导的工具修复后,能正常进入windows了,但是关机时发现100%自动重启,也就是关不掉,那么去搜索 windows 控制面板 电源管理那块,怎么取消勾选快速启动。
    5. 至少我爬坑,然后大概出了坑,双系统正常跑起来了,是基于以上的尝试后对我有效的操作和自圆其说的理解而做到的,不够全面,仅供参考!

    参考:
    secure boot的作用是什么——为什么安装win+Manjaro需要关闭它
    manjaro和win10双系统安装及使用的一些问题
    相关资料一搜一大堆,基本是结合各家言论走到最后的... 所以这里不再罗列赘述。

  • 相关阅读:
    Arduino uno 教程~持续更新~
    Arduino uno LED灯实验
    Arduino uno 引脚说明
    面包板的使用
    数量经济学推荐的Julia教程
    已知一点经纬度和距离,方位角;求另外一点的经纬度
    a recipe kindly provided by Dimas for kikuchi
    发现了拯救“文献多的一团麻”的工具
    matlab中diff的用法
    matlabR2017安装
  • 原文地址:https://www.cnblogs.com/nicholaswang/p/10032184.html
Copyright © 2011-2022 走看看