853 字
4 分钟
解决RK3588用Redroid运行碧蓝航线出现闪退的问题
对于 armbian 系统(内核5.10.160),可直接使用上述issue中@CNflysky编译好的内核deb包
-
卸载旧内核
Terminal window dpkg -l | grep linux-imagedpkg -l | grep linux-headers根据输出找到旧版本号,执行:
Terminal window apt-get remove --purge linux-image-xxxapt-get remove --purge linux-headers-xxx -
下载并安装新内核
Terminal window mkdir -p /tmp/azur-lane-fixcd /tmp/azur-lane-fixwget https://github.com/user-attachments/files/16227927/linux-image-5.10.160-rockchip-rk3588_5.10.160-rockchip-rk3588-1_arm64.zipwget https://github.com/user-attachments/files/16227929/linux-headers-5.10.160-rockchip-rk3588_5.10.160-rockchip-rk3588-1_arm64.zipunzip *.zipdpkg -i *.deb -
重启系统
Terminal window reboot
如果使用的是 ubuntu-rockchip 的 22.04版本,可以使用我编译好的内核包
注意,如果你现有的内核版本比我这里的高,按评论区所说,降级内核后无法开机,对于内核版本更高的系统,请考虑使用这个链接: https://share.nyanners.moe/ubuntu-rockchip-5.10.0-1012-kernel.zip
- 卸载旧内核的步骤不再赘述
-
下载并安装新内核
Terminal window mkdir -p /tmp/azur-lane-fixcd /tmp/azur-lane-fixwget -O ubuntu-rochship-5.10.0-1010-kernel.zip https://share.nyanners.moe/ubuntu-rochship-5.10.0-1010-kernel.zipunzip ubuntu-rochship-5.10.0-1010-kernel.zipdpkg -i *.deb -
重启
Terminal window reboot -
冻结内核更新
Terminal window apt-mark hold linux-rockchip linux-image-rockchip linux-headers-rockchip linux-tools-rockchip
如果你使用的是其他系统,那么只好自己编译内核了^_^
- 获取内核源码
- 进入源码目录
- 安装依赖
- 配置内核
在
Terminal window make menuconfig # 当然,你也可以直接修改.config文件Kernel Features>Virtual address space bits中设置为39 bits,然后保存退出。 - 编译安装
- 重启

特别地(已过时,建议直接修改https://github.com/Joshua-Riek/linux-rockchip/blob/noble/debian.rockchip/config/config.common.ubuntu 该文件对应的值而不是使用make menuconfig):
- 如果你使用的是ubuntu-rockchip的24.04版本,同作者项目下的linux-rockchip即为内核源码。然后你只需设置
CONFIG_ARM64_VA_BITS=39,执行build-kernel.sh脚本:
# 安装所需依赖sudo apt-get install -y build-essential gcc-aarch64-linux-gnu bison \qemu-user-static qemu-system-arm qemu-efi u-boot-tools binfmt-support \debootstrap flex libssl-dev bc rsync kmod cpio xz-utils fakeroot parted \udev dosfstools uuid-runtime git-lfs device-tree-compiler python2 python3 \python-is-python3 fdisk bc debhelper python3-pyelftools python3-setuptools \python3-distutils python3-pkg-resources swig libfdt-dev libpython3-dev
# 设置CONFIG_ARM64_VA_BITS=39cd /path/to/ubuntu-rockchip/buildgit clone https://github.com/Joshua-Riek/linux-rockchip -b noble --depth 2cd linux-rockchipmake menuconfig # 然后 `Kernel Features` -> `Virtual address space bits` -> `39`# 然后保存
# 编译内核cd /path/to/ubuntu-rockchipexport SUITE=noble./scripts/build-kernel.sh
# 等待一段可能很长的时间^_^
# 卸载旧内核,略
# 安装内核dpkg -i ./build/*.deb
# 重启reboot务必根据最新文档和仓库更新进行操作,因为本文内容可能已过时。更多详细信息,请参考ubuntu-rockchip Wiki。最后,请确保在操作前备份重要数据,并根据实际情况调整步骤。
写在最后
我猜你一定还想要顺便运行Alas对吧?
这里最简单的方式是使用别人build好的Alas镜像:
- 创建docker-compose.yaml
mkdir -p /opt/alascd /opt/alascat << EOT > docker-compose.yamlversion: '3.7'services: ALAS: ports: - 22267:22267 - 22268:22268 volumes: - './AzurLaneAutoScript:/app/AzurLaneAutoScript:rw' - './MAA:/app/MAA:rw' - '/etc/localtime:/etc/localtime:ro' container_name: alas restart: always image: crestfallmax/azurlaneautoscript:v0.1EOT- 拉取alas的源码
git clone https://github.com/LmeSzinc/AzurLaneAutoScript.git- 应用docker版配置文件
cp AzurLaneAutoScript/config/deploy.template-docker-cn.yaml AzurLaneAutoScript/config/deploy.yamlvim AzurLaneAutoScript/config/deploy.yaml # 根据实际情况修改- 启动
docker-compose up -d- 打开浏览器,访问
http://<你的设备IP>:22267,然后进行配置 - 在你一切设置完毕后,可以修改
docker-compose.yaml文件,覆写command字段,以便在容器启动时alas自动运行
command: ["python", "gui.py" , "--run", "alas"]完整的docker-compose.yaml文件如下:
cat << EOT > docker-compose.yamlversion: '3.7'services: ALAS: ports: - 22267:22267 volumes: - './AzurLaneAutoScript:/app/AzurLaneAutoScript:rw' - '/etc/localtime:/etc/localtime:ro' container_name: alas restart: always image: crestfallmax/azurlaneautoscript:v0.1 command: ["python", "gui.py" , "--run", "alas"]EOT在修改完成后,执行docker-compose up -d即可。
备注
该镜像的作者似乎修改了自己的github用户名(或者和他的dockerhub用户名不是同一个),所以我无法提供他的github主页链接,但是你可以在dockerhub上找到他的镜像。
解决RK3588用Redroid运行碧蓝航线出现闪退的问题
https://nyanners.moe/fix-rk3588-redroid-azur-lane-crash