教你编译群晖7.1引导,小白一看就会!
梦心折腾记
编辑于 2022年07月07日 23:02

自从上次立心发了一个黑群晖7.0的安装教程后,有很多粉丝私下问立心怎么搜不到IP、网卡插上怎么用不了、sas卡插上怎么没反应呢?等等这样的问题,这是因为没有驱动而造成的,这就只能找大神帮忙编译或自己编译了。

感谢TossPig大神制作的群晖一键编译工具:https://github.com/tossp/redpill-tool-chain

感谢pocopico大神的驱动仓库:https://github.com/pocopico/rp-ext

视频教程链接:网页链接​

之前出的那个7.0的群晖引导文件也是用这个工具编译的,只是那个时候编译的引导还不稳定,有很多BUG所以就没出教程。几个月过去了,TossPig大神也在不断的更新修复BUG,和以前来说确实稳定了很多。

首先准备一台可以访问外网的Linux电脑,没有Linux电脑的可以安装虚拟机,立心是用虚拟机安装的Ubuntu-20.04的系统。

安装好后记得拍张快照,要不然因为操作失误或网络问题而导致编译失败就又要重新安装一遍浪费时间。

登录桌面打开终端输入命令:

代码块
JavaScript
自动换行
复制代码
sudo passwd root
复制成功

先输入当前普通用户(如用户angler)的密码,用于提权。(注意在Linux系统下密码是没有显示的)

然后再输入为root用户所设置的密码,输入两次,这样就完成设置root用户密码了

 修改50-ubuntu.conf文件,在终端输入命令:

代码块
JavaScript
自动换行
复制代码
sudo gedit /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
复制成功

在文件末尾增加如下两行并保存:

代码块
JavaScript
自动换行
复制代码
greeter-show-manual-login=true #手工输入登陆系统的用户名和密码

allow-guest=false #不允许guest登录(可选)
复制成功

修改gdm-autologin文件,在终端输入命令:

代码块
JavaScript
自动换行
复制代码
sudo gedit /etc/pam.d/gdm-autologin
复制成功

在第三行前面加#以注释掉auth required pam_succeed_if.so user != root quiet_success,随后保存并退出

修改gdm-password文件,在终端输入命令:

代码块
JavaScript
自动换行
复制代码
sudo gedit /etc/pam.d/gdm-password
复制成功

在第三行前面加#以注释掉auth required pam_succeed_if.so user != root quiet_success,随后保存并退出

修改/root/.profile文件,在终端输入命令:

代码块
JavaScript
自动换行
复制代码
sudo gedit /root/.profile
复制成功

将文件末尾的mesg n 2> /dev/null || true这一行注释掉,并随后添加:

代码块
JavaScript
自动换行
复制代码
tty -s&&mesg n || true
复制成功

注销当前用户,登录root用户,一般修改完配置后最好重启一下,在终端输入 :

代码块
JavaScript
自动换行
复制代码
reboot
复制成功

重启完毕后点击未列出?

输入root然后按回车键

输入你之前设置root账户的密码然后按回车键,即可成功登录,进入桌面后关机,然后拍张快照。

接下来就是部署编译环境了,以root权限登录,然后打开终端依次输入以下命令。

代码块
JavaScript
自动换行
复制代码
apt-get update

apt-get -y upgrade

apt-get -y install jq

apt-get -y install curl

apt-get -y install git

apt-get -y install docker.io

sudo gpasswd -a $USER docker
复制成功

出现(正在将用户“root”加入到“docker”组中)就说明编译环境部署完成了。最后设置一下网络确保可以访问GitHub和Google之后拍张快照就可以正式编译了。

打开终端输入命令下载仓库源码:

代码块
JavaScript
自动换行
复制代码
git clone https://github.com/tossp/redpill-tool-chain.git
复制成功

输入命令打开文件夹:

代码块
JavaScript
自动换行
复制代码
cd redpill-tool-chain
复制成功

按照文档提示添加想要的驱动,立心就以蜗牛星际的I211网卡驱动为例添加驱动,在终端输入命令:

代码块
JavaScript
自动换行
复制代码
./redpill_tool_chain.sh add
复制成功

打开pocopico大神的驱动仓库找到对应的驱动:https://github.com/pocopico/rp-ext

复制URL地址:https://raw.githubusercontent.com/pocopico/rp-ext/master/igb/rpext-index.json

回到终端输入一个空格,然后把复制的URL地址粘贴按回车键等待驱动下载完成

再加个pocopico大神的e1000网卡驱动:

代码块
JavaScript
自动换行
复制代码
./redpill_tool_chain.sh add https://raw.githubusercontent.com/pocopico/rp-ext/master/e1000/rpext-index.json
复制成功

这样子驱动就下载好了,接下来修改配置文件,打开redpill-tool-chain文件夹

把sample_user_config.json重命名为ds918p_user_config.json。

然后打开ds918p_user_config.json,把里面的内容按自己的情况修改

代码块
JavaScript
自动换行
复制代码
{
    "extra_cmdline": {
        "pid": "0x1642",
        "vid": "0x0951",
        "sn": "1780PDN234501",
        "mac1": "0011235B0CD5",
        "SataPortMap": "24",
        "DiskIdxMap": "0004",
        "SasIdxMap": "0"
    },
    "synoinfo": {},
    "ramdisk_copy": {},
    "extensions": []
}
复制成功

保存后回到终端输入命令回车,如果网络好的话等待几分钟就下载完成了

代码块
JavaScript
自动换行
复制代码
./redpill_tool_chain.sh build ds918p-7.1.0-42661
复制成功

输入编译命令就开始自动编译了,编译的时间由电脑配置和外网的速度所决定

代码块
JavaScript
自动换行
复制代码
./redpill_tool_chain.sh auto ds918p-7.1.0-42661
复制成功

当终端出现The redpill bootloader is created,the container will be ended niw.之后就表示引导文件已经打包好了,打开redpill-tool-chain中的images文件夹就可以看到已经编译好的引导文件,只需要把它装进U盘就能享用群晖7.1的惊艳了