For the complete documentation index, see llms.txt. This page is also available as Markdown.

20.3 Ubuntu/Debian/Kali Linux 兼容层

本节基于 debootstrap 和 WSL 在 FreeBSD 上构建 Ubuntu 22.04/26.04 LTS 兼容层,并附 Debian 13/Kali Linux 构建脚本。

视频教程:06-FreeBSD-Ubuntu 兼容层脚本使用说明

Ubuntu 兼容层

Ubuntu 兼容层

此外,可采用类似方法构建 Debian 兼容层。其他系统的支持情况请参见 /usr/local/share/debootstrap/scripts/ 目录。

开始构建 Ubuntu 兼容层(基于 Ubuntu 22.04 LTS)

构建前,需启用相关守护进程和服务:

构建 Ubuntu 22.04 LTS 基本系统:

指定兼容层路径

构建完成后,须挂载必要的文件系统。将 Linux 兼容层默认路径指向 /compat/ubuntu 以实现相关文件系统的自动挂载。

立即生效:

永久设置:

设置 Linux 内核版本

可能需要设定合适的 Linux 内核版本,否则 chroot 时将提示 FATAL: kernel too old

7.0.11 仅为示例,建议参考 The Linux Kernel Archives 中公布的版本号设置。

重启 Linux 兼容层服务:

进入 Ubuntu 兼容层

完成文件系统挂载和内核版本设定后,进入 Ubuntu 兼容层继续配置。

chroot 进入 Ubuntu 兼容环境,移除可能导致错误的软件:

Ubuntu 切换软件源

更换 Ubuntu 兼容层的软件源可提高下载速度。

卸载 rsyslog 后须更换软件源;由于 SSL 证书尚未更新,暂时无法使用 HTTPS 源。

使用文本编辑器编辑 Ubuntu 兼容环境中的 APT 软件源配置文件 /compat/ubuntu/etc/apt/sources.list,写入软件源:

进入 Ubuntu 兼容层,开始更新系统,安装常用软件:

附录:Ubuntu 兼容层脚本(基于 Ubuntu 26.04 LTS)

Ubuntu 26.04 LTS 兼容层:

Ubuntu 26.04 LTS 兼容层

脚本内容如下:

附录:Debian 13 / Kali Linux 兼容层

Debian 13 兼容层:

Debian 13 兼容层

Kali Linux 兼容层:

Kali Linux 兼容层

脚本内容如下:

附录:运行 X11 软件

允许所有本地用户访问当前 X Server 实例:

故障排除与未竟事宜

程序的命令行启动命令是什么?

按以下方法依次查找(以 gedit 为例):

  • 直接执行软件包名 # gedit

  • whereis 软件包名,定位后执行。whereis gedit

  • 通过软件图标定位,进入 /usr/share/applications 目录,根据软件包名找到对应文件,并使用文本编辑器(如 ee、nano)打开(.desktop 文件 是文本文件,而非软链接或图片),找到其中的程序启动命令并复制到终端运行即可。

  • 通过 find 命令全局查找(如 # find / -name gedit)。

如何查找软件?

将 XXX 改为所需搜索的软件名即可。

缺少 .so 文件

  • 先查看缺少哪些 .so 文件,通常不会只缺失一个。

根据输出 libffmpeg.so => not found,判断缺失“libffmpeg.so”。

  • 安装工具

  • 查看 libffmpeg.so 文件属于哪个包:

多个包都提供了该文件,任选一个安装即可。

  • 按照上述路径复制文件,并刷新 ldd 缓存:

  • 再次查看可执行文件 /usr/bin/qq 所依赖的动态链接库:

参考文献

最后更新于