<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Debian on 个人技术随想</title>
        <link>https://www.dhao2001.com/tags/debian/</link>
        <description>Recent content in Debian on 个人技术随想</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh</language>
        <lastBuildDate>Sat, 19 Mar 2022 10:53:24 +0800</lastBuildDate><atom:link href="https://www.dhao2001.com/tags/debian/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>龙芯小试 —— 龙芯3A3000主机简单配置与Debian系统安装</title>
            <link>https://www.dhao2001.com/2022/03/19/loongson-first-run-install-debian/</link>
            <pubDate>Sat, 19 Mar 2022 10:53:24 +0800</pubDate>
            <guid>https://www.dhao2001.com/2022/03/19/loongson-first-run-install-debian/</guid>
            <description>&lt;h2 id=&#34;前言&#34;&gt;&lt;a href=&#34;#%e5%89%8d%e8%a8%80&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;前言&#xA;&lt;/h2&gt;&lt;p&gt;前几天在咸鱼上买到了一块龙芯的电脑主板，CPU型号是龙芯(Loongson) 3A3000，芯片组似乎是780E。回来装系统的时候遇到了不少麻烦，这里记录一下，如果能帮到后来者，那自然是最好不过。&lt;/p&gt;&#xA;&lt;h2 id=&#34;系统选择&#34;&gt;&lt;a href=&#34;#%e7%b3%bb%e7%bb%9f%e9%80%89%e6%8b%a9&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;系统选择&#xA;&lt;/h2&gt;&lt;p&gt;实际上，我仍然推荐有条件的用户，使用龙芯官方适配的操作系统&lt;a class=&#34;link&#34; href=&#34;http://www.loongnix.cn/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Loongnix&lt;/a&gt;，因为这是龙芯优化过的系统。&lt;/p&gt;&#xA;&lt;p&gt;只不过，因为mips64el架构上的Loongnix是基于Fedora发行版的，且版本古老。我个人习惯的环境是Debian，只有LoongArch上的Loongnix才是基于Debian制作的。况且，Loongnix默认带一个GUI，连服务器版都带，我不是很喜欢先装后卸，因此我还是希望安装一个相对干净的Debian系统上去。&lt;/p&gt;&#xA;&lt;!-- more --&gt;&#xA;&lt;p&gt;龙芯3A3000基于mips架构，具体到Debian上，属于&lt;a class=&#34;link&#34; href=&#34;https://wiki.debian.org/mips64el&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;mips64el&lt;/a&gt;架构（MIPS 64-bit little-endian mode, MIPS 64位 小端序），请记住这个代号，因为我们后面会反复用到。&lt;/p&gt;&#xA;&lt;p&gt;关于Debian的系统代号选择，在本文编写时，最新的Debain系统是Debian 11 Bullseye，使用的系统内核是Linux 5.10. 但我们目前会使用上一个版本，也就是Debain 10 Buster，具体原因下面会说明。&lt;/p&gt;&#xA;&lt;p&gt;下面我们讨论的方法，基于&lt;a class=&#34;link&#34; href=&#34;https://wiki.godson.ac.cn/guide:debian_installation&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;狗剩百科:Debian 系发行版安装指南&lt;/a&gt;，并做一些自己经验的额外补充。&lt;/p&gt;&#xA;&lt;h2 id=&#34;条件限制和实现方式&#34;&gt;&lt;a href=&#34;#%e6%9d%a1%e4%bb%b6%e9%99%90%e5%88%b6%e5%92%8c%e5%ae%9e%e7%8e%b0%e6%96%b9%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;条件限制和实现方式&#xA;&lt;/h2&gt;&lt;h3 id=&#34;安装方式的选择&#34;&gt;&lt;a href=&#34;#%e5%ae%89%e8%a3%85%e6%96%b9%e5%bc%8f%e7%9a%84%e9%80%89%e6%8b%a9&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;安装方式的选择&#xA;&lt;/h3&gt;&lt;p&gt;在平时x86计算机上，安装Debian的方法，首选当然是直接从Debian CD源中下载安装镜像，将镜像刻录到U盘上，引导镜像中的安装程序完成安装。这样当然是最简单的。&lt;/p&gt;&#xA;&lt;p&gt;然而，根据我的简单测试，似乎Debian CD源中的ISO镜像，并不能顺利地在我手头上这块主板中引导。&lt;/p&gt;&#xA;&lt;blockquote class=&#34;alert alert-note&#34;&gt;&#xA;        &lt;div class=&#34;alert-header&#34;&gt;&#xA;            &lt;span class=&#34;alert-icon&#34;&gt;📝&lt;/span&gt;&#xA;            &lt;span class=&#34;alert-title&#34;&gt;失败的Debian安装程序引导测试&lt;/span&gt;&#xA;        &lt;/div&gt;&#xA;        &lt;div class=&#34;alert-body&#34;&gt;&#xA;            &lt;p&gt;&lt;strong&gt;这一段是我尝试在龙芯上引导Debian安装镜像时的失败操作，或许是该镜像不具备在龙芯电脑上引导的能力，也有可能是我本身操作方法不正确。因此我将这一过程记录在此，如有谬误，还请批评指正。如果您希望参考本文进行Debian系统的安装，请略过这一段。&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;下载Debian CD中的安装镜像&lt;a class=&#34;link&#34; href=&#34;https://cdimage.debian.org/debian-cd/11.2.0/mips64el/iso-cd/debian-11.2.0-mips64el-netinst.iso&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;debian-11.2.0-mips64el-netinst.iso&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;使用&lt;code&gt;dd&lt;/code&gt;命令，将其刻录到U盘上: &lt;code&gt;dd if=debian-11.2.0-mips64el-netinst.iso of=/dev/sdb bs=8M&lt;/code&gt;，（其中&lt;code&gt;/dev/sdb&lt;/code&gt;是我的U盘设备）&lt;/li&gt;&#xA;&lt;li&gt;将U盘插入龙芯电脑，启动，提示找不到LiveCD中的一个文件。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;根据上述表现，个人猜测电脑已经成功读取并加载了U盘上的引导程序，但不知为何无法加载U盘上的后续文件，无法进入安装程序。&lt;/p&gt;&#xA;&lt;p&gt;此外，目前我个人还暂时无法确定这块龙芯主板究竟是BIOS/CSM引导模式还是EFI引导模式。BIOS设定中无对应选项可调整。&lt;/p&gt;&#xA;&lt;p&gt;在龙芯提供的Loongnix镜像中，存在一个EFI文件夹，且引导该Loongnix镜像时，在GRUB Shell中执行&lt;code&gt;echo $grub_platform&lt;/code&gt;，回显结果为&lt;code&gt;efi&lt;/code&gt;。且在Loongnix LiveCD系统中，&lt;code&gt;grub-install&lt;/code&gt;命令提示安装的平台为MIPS下的EFI平台。&lt;/p&gt;&#xA;&lt;p&gt;但进入该LiveCD系统后，使用Loongnix的安装程序尝试安装系统时，如果磁盘为GPT分区表，会提示当前计算机运行在BIOS/CSM模式下，需要创建额外分区才能继续安装。采用MS-DOS分区表则无此问题，安装时不需要创建ESP分区也可完成安装并正常引导本地磁盘系统。这也是我电脑目前的状态。&lt;/p&gt;&#xA;&lt;p&gt;因此，我已经无法区分这台龙芯电脑运行在何种模式下，需要进一步考察。如果您有什么看法或观点，欢迎通过邮件同我交流，我的电子邮件地址在站内可找到。&lt;/p&gt;&#xA;        &lt;/div&gt;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;有些难办的是，mips64el的Debian源，&lt;strong&gt;没有GRUB2软件包提供！&lt;/strong&gt; 这就意味着，我们需要借助其他方法，安装GRUB引导器 —— 如果没有GRUB引导器，我们是无法引导我们的系统的！&lt;/p&gt;&#xA;&lt;p&gt;因此，我们需要另辟蹊径，分两步安装Debian系统：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;安装龙芯的Loongnix系统到本地硬盘上。我选用的镜像是&lt;a class=&#34;link&#34; href=&#34;http://ftp.loongnix.cn/os/loongnix/1.0/liveinst/old/loongnix-20180930.iso&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;loongnix-20180930.iso&lt;/a&gt;。这一步骤主要目的是借助官方的安装程序，完成分区并将GRUB与Linux内核安装到本地硬盘。&lt;/li&gt;&#xA;&lt;li&gt;重新进入LiveCD系统，删除本地硬盘中原有的根目录结构 &lt;strong&gt;（但需要保留&lt;code&gt;/boot&lt;/code&gt;目录下的所有内容！因此建议在 第一步安装Loongnix系统时，将&lt;code&gt;/boot&lt;/code&gt;作为一个独立的分区，空间大约1GB）&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;使用&lt;code&gt;debootstrap&lt;/code&gt;工具，创建Debian根文件系统，并在此基础上，进行修改。更多相关的信息可以阅读&lt;a class=&#34;link&#34; href=&#34;https://www.debian.org/releases/buster/mips64el/apds03.zh-cn.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;通过 Unix/Linux 系统来安装 Debian GNU/Linux&lt;/a&gt;。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;总体而言，我们相当于借用了Loongnix系统提供的内核引导Debian系统。大部分情况下，这种方法没有问题，但也有一些情况下，系统中的部分程序要求Linux内核版本号高于一个指定版本。此时需要自行斟酌是否升级，升级到何版本。本文后面会讨论这一问题。&lt;/p&gt;&#xA;&lt;h3 id=&#34;debian大版本号的选择&#34;&gt;&lt;a href=&#34;#debian%e5%a4%a7%e7%89%88%e6%9c%ac%e5%8f%b7%e7%9a%84%e9%80%89%e6%8b%a9&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;Debian大版本号的选择&#xA;&lt;/h3&gt;&lt;p&gt;不同Debian大版本号下，对应的Linux内核版本号也不同。原则上讲，我们使用的内核版本号应该接近Debian官方指定的内核版本号。在Debian软件源中，龙芯3代CPU使用的内核包名为&lt;code&gt;linux-image-loongson-3&lt;/code&gt;。&lt;/p&gt;&#xA;&lt;table&gt;&#xA;&#x9;&lt;thead&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th style=&#34;text-align: center&#34;&gt;Debian版本号&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th style=&#34;text-align: center&#34;&gt;Debian代号&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th style=&#34;text-align: center&#34;&gt;软件源中使用的内核版本号&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&lt;/thead&gt;&#xA;&#x9;&lt;tbody&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td style=&#34;text-align: center&#34;&gt;9&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td style=&#34;text-align: center&#34;&gt;stretch&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td style=&#34;text-align: center&#34;&gt;4.9&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td style=&#34;text-align: center&#34;&gt;10&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td style=&#34;text-align: center&#34;&gt;buster&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td style=&#34;text-align: center&#34;&gt;4.19&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td style=&#34;text-align: center&#34;&gt;11&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td style=&#34;text-align: center&#34;&gt;bullseye&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td style=&#34;text-align: center&#34;&gt;5.10&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;此外，北京龙芯也有提供一些预编译的Debian格式内核包：&lt;a class=&#34;link&#34; href=&#34;https://mirrors.tuna.tsinghua.edu.cn/bjlx/pool/main/l/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://mirrors.tuna.tsinghua.edu.cn/bjlx/pool/main/l/&lt;/a&gt;，我目前使用的是其提供的&lt;code&gt;linux-4.19.0-loongson-3&lt;/code&gt;下的包。暂时不清楚北京龙芯提供的内核包相对于Debian提供的包是否有特别的优化，或其他区别。&lt;/p&gt;&#xA;&lt;p&gt;选用Linux 4.19内核的前提下，Debian 10就成为了适配的最佳选择。&lt;/p&gt;&#xA;&lt;p&gt;过段时间我会尝试下是否能直接用Debian 11 + Linux 5.10，届时会更新后续。&lt;/p&gt;&#xA;&lt;blockquote class=&#34;alert alert-note&#34;&gt;&#xA;        &lt;div class=&#34;alert-header&#34;&gt;&#xA;            &lt;span class=&#34;alert-icon&#34;&gt;📝&lt;/span&gt;&#xA;            &lt;span class=&#34;alert-title&#34;&gt;备注&lt;/span&gt;&#xA;        &lt;/div&gt;&#xA;        &lt;div class=&#34;alert-body&#34;&gt;&#xA;            &lt;p&gt;&lt;strong&gt;后续1: 2022年4月11日下午&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;根据我的简单测试，Debian维护者打包的Linux 5.10内核，虽然可以正常工作，但似乎和我手上这块780E主板有点不相兼容。&lt;/p&gt;&#xA;&lt;p&gt;具体表现为，开机后风扇非常嘈杂，怀疑是有一部分功能没能成功移交给操作系统。过段时间再试试看吧。&lt;/p&gt;&#xA;        &lt;/div&gt;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;安装流程&#34;&gt;&lt;a href=&#34;#%e5%ae%89%e8%a3%85%e6%b5%81%e7%a8%8b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;安装流程&#xA;&lt;/h2&gt;&lt;h3 id=&#34;准备&#34;&gt;&lt;a href=&#34;#%e5%87%86%e5%a4%87&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;准备&#xA;&lt;/h3&gt;&lt;blockquote class=&#34;alert alert-caution&#34;&gt;&#xA;        &lt;div class=&#34;alert-header&#34;&gt;&#xA;            &lt;span class=&#34;alert-icon&#34;&gt;🚨&lt;/span&gt;&#xA;            &lt;span class=&#34;alert-title&#34;&gt;注意&lt;/span&gt;&#xA;        &lt;/div&gt;&#xA;        &lt;div class=&#34;alert-body&#34;&gt;&#xA;            &lt;p&gt;&lt;strong&gt;备份文件警告！&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;请务必在执行后续操作前，备份目标计算机上的所有重要文件！本人不会对您任何操作/误操作造成的损失负责！&lt;/strong&gt;&lt;/p&gt;&#xA;        &lt;/div&gt;&#xA;    &lt;/blockquote&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;一个空白U盘，用于刻录LiveCD镜像&lt;/li&gt;&#xA;&lt;li&gt;Loongnix LiveCD镜像，我选用的版本为&lt;a class=&#34;link&#34; href=&#34;http://ftp.loongnix.cn/os/loongnix/1.0/liveinst/old/loongnix-20180930.iso&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;loongnix-20180930.iso&lt;/a&gt;（实际上这个版本有些不好用，因为其基于Fedora 21构建，软件包版本非常老，如果有新版本的Loongnix LiveCD在你的电脑上可用，完全可以替换）。&lt;/li&gt;&#xA;&lt;li&gt;有效的网络连接（这要求第二步中的镜像可以正常驱动网卡）&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;同时，下面的操作几乎都是在root权限中完成的。&lt;/p&gt;&#xA;&lt;h3 id=&#34;刻录livecd镜像并引导&#34;&gt;&lt;a href=&#34;#%e5%88%bb%e5%bd%95livecd%e9%95%9c%e5%83%8f%e5%b9%b6%e5%bc%95%e5%af%bc&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;刻录LiveCD镜像并引导&#xA;&lt;/h3&gt;&lt;p&gt;我想这一步会是大伙比较熟悉的了。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dd &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;loongnix-20180930.iso &lt;span class=&#34;nv&#34;&gt;of&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/dev/sdX &lt;span class=&#34;nv&#34;&gt;bs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;8M&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;&lt;code&gt;of=/dev/sdX&lt;/code&gt;部分，请替换成你的U盘实际设备块，如&lt;code&gt;/dev/sdb&lt;/code&gt;。不清楚的可以使用&lt;code&gt;fdisk -l&lt;/code&gt;查看。&lt;/p&gt;&#xA;&lt;p&gt;写入完成后，将U盘插到龙芯电脑上，开机并从U盘引导。&lt;/p&gt;&#xA;&lt;h3 id=&#34;安装debootstrap&#34;&gt;&lt;a href=&#34;#%e5%ae%89%e8%a3%85debootstrap&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;安装debootstrap&#xA;&lt;/h3&gt;&lt;p&gt;进入LiveCD环境后，首先配置好网络。接着安装debootstrap。可以使用命令&lt;code&gt;dnf install debootstrap&lt;/code&gt;从Fedora源中下载安装。如果源中的工具太老不方便，也可以直接从Debian软件源中下载debootstrap的&lt;code&gt;.deb&lt;/code&gt;包，使用&lt;code&gt;tar&lt;/code&gt;与&lt;code&gt;ar&lt;/code&gt;将其解压即可使用该程序（在Loongnix/Fedora上也可以！）&lt;/p&gt;&#xA;&lt;h3 id=&#34;挂载目标分区&#34;&gt;&lt;a href=&#34;#%e6%8c%82%e8%bd%bd%e7%9b%ae%e6%a0%87%e5%88%86%e5%8c%ba&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;挂载目标分区&#xA;&lt;/h3&gt;&lt;p&gt;接下来，随便在根目录下创建一个新路径，例如&lt;code&gt;/deb&lt;/code&gt;，用于挂载我们的本地磁盘分区。&lt;/p&gt;&#xA;&lt;p&gt;接着，将本地磁盘上，已经安装有Loongnix的根目录分区，挂载到挂载点上。但此时先不需要挂载&lt;code&gt;/boot&lt;/code&gt;分区。如果真的需要挂载&lt;code&gt;boot&lt;/code&gt;，请在删除时选择&lt;strong&gt;忽略&lt;/strong&gt;&lt;code&gt;/boot&lt;/code&gt;下的所有文件！&lt;/p&gt;&#xA;&lt;p&gt;挂载之后，删除该分区下的所有文件&lt;/p&gt;&#xA;&lt;p&gt;下面的例子，我们假设本地磁盘上，&lt;code&gt;/dev/sda1&lt;/code&gt;是&lt;code&gt;/boot&lt;/code&gt;分区，&lt;code&gt;/dev/sda2&lt;/code&gt;是&lt;code&gt;/&lt;/code&gt;分区，&lt;code&gt;/dev/sda3&lt;/code&gt;是swap分区。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir /deb&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mount /dev/sda2 /deb&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm -rf /deb/*&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h3 id=&#34;执行安装程序&#34;&gt;&lt;a href=&#34;#%e6%89%a7%e8%a1%8c%e5%ae%89%e8%a3%85%e7%a8%8b%e5%ba%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;执行安装程序&#xA;&lt;/h3&gt;&lt;p&gt;接下来，我们要用debootstrap创建一个Debian根文件系统。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;debootstrap --arch mips64el buster &lt;span class=&#34;se&#34;&gt;\&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     /deb http://ftp.cn.debian.org/debian&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;最后的地址可以替换成你所在位置速度最快的Debian镜像地址。&lt;/p&gt;&#xA;&lt;p&gt;如果debootstrap提示找不到一个名称中包含&lt;code&gt;buster&lt;/code&gt;的配置文件，可能是当前使用的debootstrap工具版本太老（常见于使用Fedora源安装）。一种解决方法是下载新版的debootstrap工具，另一种是直接使用Debian的相对代号，如在本文编写时，Debian 10 Buster是上一个稳定版，则可以使用&lt;code&gt;oldstable&lt;/code&gt;替代&lt;code&gt;buster&lt;/code&gt;。同理，如果使用旧版的debootstrap安装Debian 11 Bullseye报错，也可以使用&lt;code&gt;stable&lt;/code&gt;替代&lt;code&gt;bullseye&lt;/code&gt;。&lt;/p&gt;&#xA;&lt;p&gt;坐下来，等一等，喝杯咖啡，根文件系统就创建好了。&lt;/p&gt;&#xA;&lt;h3 id=&#34;基础系统配置&#34;&gt;&lt;a href=&#34;#%e5%9f%ba%e7%a1%80%e7%b3%bb%e7%bb%9f%e9%85%8d%e7%bd%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;基础系统配置&#xA;&lt;/h3&gt;&lt;p&gt;为了让系统能跑起来，单有个根文件系统是完全不够的。&lt;/p&gt;&#xA;&lt;h4 id=&#34;复制内核模块&#34;&gt;&lt;a href=&#34;#%e5%a4%8d%e5%88%b6%e5%86%85%e6%a0%b8%e6%a8%a1%e5%9d%97&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;复制内核模块&#xA;&lt;/h4&gt;&lt;p&gt;虽然这么做不知道是否合适，可以考虑试试。&lt;/p&gt;&#xA;&lt;p&gt;将Loongnix的内核模块，复制到目标Debian系统中。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cp -r /lib/modules /deb/lib/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h4 id=&#34;fstab文件&#34;&gt;&lt;a href=&#34;#fstab%e6%96%87%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;fstab文件&#xA;&lt;/h4&gt;&lt;p&gt;&lt;code&gt;/etc/fstab&lt;/code&gt;文件指定了系统启动时挂载文件目录的规则，需要仔细配置。&lt;/p&gt;&#xA;&lt;p&gt;编写该文件，可以自己亲历亲为，仔细编写即可。但懒人有懒人的方法，不喜欢自己写这种配置文件，怕出错的话，也完全可以用ArchLinux团队提供的&lt;code&gt;genfstab&lt;/code&gt;脚本，自动生成配置文件。方法也非常简单，可以去人家Github主页&lt;a class=&#34;link&#34; href=&#34;https://github.com/archlinux/arch-install-scripts&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;GitHub - archlinux/arch-install-scripts: Useful scripts for installing Arch Linux&lt;/a&gt; 直接下载源码包，&lt;code&gt;make&lt;/code&gt;一下就好。或者，现在包括Debian在内的发行版仓库也包含了这个脚本的可执行文件，下载解压运行一气呵成。&lt;/p&gt;&#xA;&lt;p&gt;使用&lt;code&gt;genfstab&lt;/code&gt;，需要在LiveCD操作系统中运行，且需要在运行前将&lt;code&gt;/boot&lt;/code&gt;分区挂载到Debian系统的&lt;code&gt;/boot&lt;/code&gt;上，物归原主。如果有swap分区的话，也需要确认已经启用。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mount /dev/sda1 /deb/boot&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;确认无误后，就可以使用下面的命令生成&lt;code&gt;fstab&lt;/code&gt;文件了。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;genfstab -U /deb &amp;gt; /deb/etc/fstab&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;&lt;code&gt;-U&lt;/code&gt;参数是指定使用UUID作为分区识别的标准。&lt;code&gt;/deb&lt;/code&gt;是Debian根文件系统的挂载点，最后的重定向是将输出写入到目标系统的&lt;code&gt;/etc/fstab&lt;/code&gt;中。&lt;/p&gt;&#xA;&lt;p&gt;建议生成后自行检查一下文件是否符合预期。&lt;/p&gt;&#xA;&lt;h4 id=&#34;chroot环境&#34;&gt;&lt;a href=&#34;#chroot%e7%8e%af%e5%a2%83&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;chroot环境&#xA;&lt;/h4&gt;&lt;p&gt;还需要chroot进入Debian系统，对其进行一些配置。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;LANG&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;C.UTF-8 chroot /deb /bin/bash&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h5 id=&#34;设置root口令&#34;&gt;&lt;a href=&#34;#%e8%ae%be%e7%bd%aeroot%e5%8f%a3%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;设置root口令&#xA;&lt;/h5&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;passwd root&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h5 id=&#34;安装常用软件包&#34;&gt;&lt;a href=&#34;#%e5%ae%89%e8%a3%85%e5%b8%b8%e7%94%a8%e8%bd%af%e4%bb%b6%e5%8c%85&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;安装常用软件包&#xA;&lt;/h5&gt;&lt;p&gt;或许下列软件包会提供一些提示，具体是否需要可以看您的需求。&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;locales: 使用英语以外的语言必须的软件包&lt;/li&gt;&#xA;&lt;li&gt;vim/emacs/nano: 文本编辑器&lt;/li&gt;&#xA;&lt;li&gt;openssh-server: SSH服务器，使用SSH登录系统的必须&lt;/li&gt;&#xA;&lt;li&gt;build-essential: Debian下用于构建软件包的套件，包含了gcc/g++/make等工具&lt;/li&gt;&#xA;&lt;li&gt;network-manager: Network Manager工具，可以自动配置网络&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;安装这些软件包只要用&lt;code&gt;apt&lt;/code&gt;工具即可。如：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install locales vim build-essential&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h5 id=&#34;网络配置&#34;&gt;&lt;a href=&#34;#%e7%bd%91%e7%bb%9c%e9%85%8d%e7%bd%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;网络配置&#xA;&lt;/h5&gt;&lt;p&gt;网络配置是一件烦人的事情，人生或许应该用在更有意义的事情上。因此我个人喜欢用Netowork Manager自动接管网络配置。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install network-manager&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;还有什么比开机就能看到有线网络已连接，无线网络只需要一行命令就可连接，更令人开心的事情吗？&lt;/p&gt;&#xA;&lt;p&gt;当然，如果你喜欢其他方法，如直接编辑&lt;code&gt;/etc/network/interfaces&lt;/code&gt;，那也可以参考对应的教程。&lt;/p&gt;&#xA;&lt;p&gt;此外，我们还需要配置hostname，也就是本机的主机名。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; myloong &amp;gt; /etc/hostname&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h3 id=&#34;完成&#34;&gt;&lt;a href=&#34;#%e5%ae%8c%e6%88%90&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;完成&#xA;&lt;/h3&gt;&lt;p&gt;我想上述配置已经可以让Debain系统跑起来了。退出chroot环境，重启电脑，记得拔掉U盘，没有意外的话，就可以进入Debian系统了。&lt;/p&gt;&#xA;&lt;p&gt;如果电脑引导卡在&lt;em&gt;Loongnix&lt;/em&gt;字样的引导动画，不妨尝试按下 &lt;em&gt;Ctrl + Alt + F2&lt;/em&gt; （&lt;em&gt;F2~F8&lt;/em&gt;都可以试试），看能否见到熟悉的登录界面。&lt;/p&gt;&#xA;&lt;h2 id=&#34;更换内核&#34;&gt;&lt;a href=&#34;#%e6%9b%b4%e6%8d%a2%e5%86%85%e6%a0%b8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;更换内核&#xA;&lt;/h2&gt;&lt;p&gt;如果你阅读到这里，看起来你已经进入了Debian系统，那么先恭喜你，你的Debian系统已经可以使用了！&lt;/p&gt;&#xA;&lt;p&gt;但问题随之而来，如果你使用的Loongnix镜像和我相同，那你一定会发现，Loongnix使用的内核版本较老，可能是3.10附近的版本。而即便使用Fedora 28，其内核版本号也约为4.4~4.9左右的版本，和Debian官方的内核版本号是不匹配的。对于强迫症来说，这样的情况不太爽， 我们得想想办法替换内核！&lt;/p&gt;&#xA;&lt;h3 id=&#34;备份&#34;&gt;&lt;a href=&#34;#%e5%a4%87%e4%bb%bd&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;备份&#xA;&lt;/h3&gt;&lt;p&gt;然而，这样的操作注定是危险的，经常失败的，我想在进行下述操作前，需要先将系统备份一次。毕竟从debootstrap安装系统的流程终究繁琐，值得创建一个小小的备份帮助我们快速恢复。&lt;/p&gt;&#xA;&lt;p&gt;具体备份的方法就不展开了。数据备份的责任在各位操作者本身！&lt;/p&gt;&#xA;&lt;h3 id=&#34;安装新内核&#34;&gt;&lt;a href=&#34;#%e5%ae%89%e8%a3%85%e6%96%b0%e5%86%85%e6%a0%b8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;安装新内核&#xA;&lt;/h3&gt;&lt;p&gt;安装新版本内核的方法有许多，Debian官方软件源中的会是一个选择。不过既然我没用过，那我也不具体展开介绍了。反正安装方法极为简单，&lt;code&gt;apt install linux-image-loongson-3 linux-headers-loongson-3 linux-libc-dev&lt;/code&gt;就可以了。&lt;/p&gt;&#xA;&lt;p&gt;我们接下来介绍怎么安装北京龙芯提供的4.19.0内核包。&lt;/p&gt;&#xA;&lt;p&gt;下载地址位于&lt;a class=&#34;link&#34; href=&#34;https://mirrors.tuna.tsinghua.edu.cn/bjlx/pool/main/l/linux-4.19.0-loongson-3/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://mirrors.tuna.tsinghua.edu.cn/bjlx/pool/main/l/linux-4.19.0-loongson-3/&lt;/a&gt;，需要下载该地址下的三个文件：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mirrors.tuna.tsinghua.edu.cn/bjlx/pool/main/l/linux-4.19.0-loongson-3/linux-headers-4.19.0-loongson-3_4.19.124-lemote-20200525_mips64el.deb&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;linux-headers-4.19.0-loongson-3_4.19.124-lemote-20200525_mips64el.deb&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mirrors.tuna.tsinghua.edu.cn/bjlx/pool/main/l/linux-4.19.0-loongson-3/linux-image-4.19.0-loongson-3_4.19.124-lemote-20200525_mips64el.deb&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;linux-image-4.19.0-loongson-3_4.19.124-lemote-20200525_mips64el.deb&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mirrors.tuna.tsinghua.edu.cn/bjlx/pool/main/l/linux-4.19.0-loongson-3/linux-libc-dev_4.19.124-lemote-20200525_mips64el.deb&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;linux-libc-dev_4.19.124-lemote-20200525_mips64el.deb&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;可以考虑将三个文件下载到同一个文件夹中。随后进入该文件夹，执行&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dpkg -i *.deb&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;即可安装三个软件包。&lt;/p&gt;&#xA;&lt;h3 id=&#34;更新initramfs&#34;&gt;&lt;a href=&#34;#%e6%9b%b4%e6%96%b0initramfs&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;更新initramfs&#xA;&lt;/h3&gt;&lt;p&gt;首先安装&lt;code&gt;initramfs-tools&lt;/code&gt;软件包&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install initramfs-tools&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;执行下述命令，更新initramfs&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;update-initramfs -k 4.19.0-loongson-3 -u -v&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;这会在&lt;code&gt;/boot&lt;/code&gt;下生成一个&lt;code&gt;initrd.img-4.19.0-loongson-3&lt;/code&gt;文件。我们接下来配置GRUB引导项会使用到这一文件。&lt;/p&gt;&#xA;&lt;h3 id=&#34;修改grub配置文件&#34;&gt;&lt;a href=&#34;#%e4%bf%ae%e6%94%b9grub%e9%85%8d%e7%bd%ae%e6%96%87%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;修改GRUB配置文件&#xA;&lt;/h3&gt;&lt;p&gt;最后一步，修改GRUB配置文件。&lt;/p&gt;&#xA;&lt;blockquote class=&#34;alert alert-note&#34;&gt;&#xA;        &lt;div class=&#34;alert-header&#34;&gt;&#xA;            &lt;span class=&#34;alert-icon&#34;&gt;📝&lt;/span&gt;&#xA;            &lt;span class=&#34;alert-title&#34;&gt;失败的GRUB配置生成&lt;/span&gt;&#xA;        &lt;/div&gt;&#xA;        &lt;div class=&#34;alert-body&#34;&gt;&#xA;            &lt;p&gt;&lt;strong&gt;这一部分我也不确定最佳做法是什么，因此还请熟悉GRUB的同学批评指正！&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;众所周知，在x86平台下，每次更新内核后，只需要使用&lt;code&gt;grub-mkconfig&lt;/code&gt;命令，即可自动生成正确的GRUB配置文件。&lt;/p&gt;&#xA;&lt;p&gt;尽管Debian MIPS64EL软件源不提供GRUB2软件包，但提供了&lt;code&gt;grub-common&lt;/code&gt;软件包，其包含了&lt;code&gt;grub-mkconfig&lt;/code&gt;命令。因此我尝试使用该程序为新内核创建引导菜单。就生成的结果看，其生成确实正常。&lt;/p&gt;&#xA;&lt;p&gt;但在重启引导时，GRUB提示&lt;code&gt;insmod&lt;/code&gt;命令无法找到。&lt;/p&gt;&#xA;&lt;p&gt;这是很奇怪的事情，因为无论是原Loongnix生成的&lt;code&gt;grub.cfg&lt;/code&gt;还是Debian生成的&lt;code&gt;grub.cfg&lt;/code&gt;，都使用了&lt;code&gt;insmod&lt;/code&gt;命令。&lt;/p&gt;&#xA;&lt;p&gt;目前我尚未弄清楚造成该问题的原因，正在比较两配置文件的差异，还请大家批评指正。&lt;/p&gt;&#xA;        &lt;/div&gt;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;这里，我们使用的方法是，直接修改原有的&lt;code&gt;/boot/grub.cfg&lt;/code&gt;文件，将原先引导的3.x内核文件，改为新安装的4.19内核文件。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-diff&#34; data-lang=&#34;diff&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;menuentry &amp;#39;Loongnix GNU/Linux&amp;#39; --class loongnix --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option &amp;#39;gnulinu$        set root=&amp;#39;hd0,msdos1&amp;#39;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        if [ x$feature_platform_search_hint = xy ]; then&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          search --no-floppy --fs-uuid --set=root --hint-ieee1275=&amp;#39;ieee1275//disk@0,msdos1&amp;#39; --hint-bios=hd0,msdos1 --hint-efi=hd0,msd$&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        else&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;          search --no-floppy --fs-uuid --set=root b6a3a91c-82b0-4ac6-ba62-19a9d4cf63c7&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        fi&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;-        echo    &amp;#39;Loading Linux 3.10.84-20.fc21.loongson.3.mips64el ...&amp;#39;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;-        linux   /vmlinuz-3.10.84-20.fc21.loongson.3.mips64el root=/dev/sda2 ro rhgb quiet loglevel=0 LANG=zh_CN.UTF-8&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;-        initrd /initramfs-3.10.84-20.fc21.loongson.3.mips64el.img&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+        echo    &amp;#39;Loading Linux 4.19.0-loongson-3 ...&amp;#39;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+        linux   /vmlinuz-4.19.0-loongson-3 root=/dev/sda2 ro rhgb quiet loglevel=0 LANG=en_US.UTF-8&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+        initrd /initrd.img-4.19.0-loongson-3&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        boot&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;编辑后，保存该文件，重启，至少在我的电脑上，这种方法成功替换了系统内核。&lt;/p&gt;&#xA;&lt;p&gt;目前我还没探索到更优雅地生成GRUB配置文件的方法，如果您有好的想法或见解，欢迎给我发邮件，敬请批评指正。&lt;/p&gt;&#xA;&lt;h4 id=&#34;可能的改进方法&#34;&gt;&lt;a href=&#34;#%e5%8f%af%e8%83%bd%e7%9a%84%e6%94%b9%e8%bf%9b%e6%96%b9%e6%b3%95&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;可能的改进方法&#xA;&lt;/h4&gt;&lt;p&gt;这部分主要是我暂时的改进想法，如果您是参考本文安装Debian系统，或许可以跳过这一段落了。&lt;/p&gt;&#xA;&lt;p&gt;很明显，两种GRUB配置文件中，有部分insmod命令没有正常执行。&lt;/p&gt;&#xA;&lt;p&gt;一种解决方法是，每次安装内核，都通过自己手动修改&lt;code&gt;/boot/grub.cfg&lt;/code&gt;文件，达到引导新内核的目的，缺点是不优雅，容易出错。&lt;/p&gt;&#xA;&lt;p&gt;另一种解决方法是，我们都知道，GRUB配置文件的生成是基于&lt;code&gt;/etc/grub.d/&lt;/code&gt;下的模板文件的，那么可以考虑将Loongnix系统中的模板文件复制到Debian中，即可生成格式接近的配置文件，或许也可以解决问题。&lt;/p&gt;&#xA;&lt;p&gt;但目前头疼的问题还有，Debian不提供MIPS64EL架构的GRUB2包，导致必须依赖Loongnix/Fedora安装GRUB主引导记录。我在尝试自行编译GRUB，具体测试情况可能得等下一篇博文更新了。&lt;/p&gt;&#xA;&lt;h2 id=&#34;尾声&#34;&gt;&lt;a href=&#34;#%e5%b0%be%e5%a3%b0&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;尾声&#xA;&lt;/h2&gt;&lt;p&gt;目前经过几天的使用， 龙芯3A3000整体还是超过了我的预期的。基本上，3A3000接近于英特尔J1900水准。据说使用LoongArch架构的3A5000性能上了几个台阶，或许今后有机会可以试试看。&lt;/p&gt;&#xA;&lt;p&gt;我会更期待，我们有更多的实干家出现。&lt;/p&gt;&#xA;</description>
        </item></channel>
</rss>
