当前位置:首页 » 编程软件 » 编译pve内核

编译pve内核

发布时间: 2025-07-20 02:30:10

① PVE内核在ARM64下安装及编译

以下命令在linux root下进行

1.apt-getinstall gnupg2 wget –y

2.加入Proxmox 软件包源

wget -qO -http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg | sudo apt-key add echo "deb http://download.proxmox.com/debian/pve buster pve-no-subscription " | sudotee /etc/apt/sources.list.d/buster-pvetest.list

3.apt-getupdate

4.安装编译环境

apt-get install build-essentialasciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch unzipzlib1g-dev libc6-dev subversion flex uglifyjs p7zip p7zip-full msmtp libssl-devtexinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automakelibtool autopoint device-tree-compiler screen

apt-get install python3-dev  python3-sphinx lintian bc bison libdw-devlibiberty-dev libnuma-dev libslang2-dev lz4 rsync  libpve-common-perl dh-make docbook5-xml

若是出现libncurses5-dev安装依赖错误,用aptitude安装即可解决

5. Git pve内核源码

git clonegit://git.proxmox.com/git/pve-kernel.git

6. 修改Makefile文件

23行内容 KERNEL_ARCH=x86和之后 修改成如下图所示:

7.  在pve-kernel/debian/rules.d文件目录下生成文件arm64.mk,内容如下

KERNEL_BUILD_ARCH       = arm64

KERNEL_HEADER_ARCH   = $(KERNEL_BUILD_ARCH)

KERNEL_BUILD_IMAGE     = Image

KERNEL_IMAGE_PATH =arch/$(KERNEL_BUILD_ARCH)/boot/${KERNEL_BUILD_IMAGE}

KERNEL_INSTALL_FILE       = vmlinuz

8.  修改pve-kernel/debian/rules文件,将rysnc中的tools修改成source,修改结果如下图所示

9.  Make all

10.最终编译成功后会生成四个文件包,使用dpkg -i命令安装四个deb包,即可完成pve内核的安装。

linux-tools-{KERNEL_VER}_arm64.deb

linux-tools-5.0-dbgsym_{KERNEL_VER}_arm64.deb

pve-headers-{KERNEL_VER}_arm64.deb

pve-kernel-{KERNEL_VER}_arm64.deb

② 普化群晖将其改造成正常磁盘布局及编译源码打开kernel message

普化群晖将其改造成正常磁盘布局及编译源码打开kernel message的方法主要包括以下步骤

  1. 调整磁盘布局

    • 扩展启动分区:将原有的32MB启动分区扩展为1GB,以便容纳更多的启动信息和日志。
    • 调整镜像存储空间:将镜像空间从50GB减小至20GB,以优化存储空间的使用。
    • 磁盘分区调整:识别和重建可用存储空间,确保磁盘布局符合常规标准。
  2. 编译源码与内核调整

    • 准备编译环境:确保能在console上直接观察群晖的输出,便于调试。利用SSH等远程访问工具接入不同的终端。
    • 编译内核:根据需要重新编译内核,以包含正确的设备支持。这可能涉及修改内核配置文件,选择适当的驱动和模块。
    • 确保GRUB兼容性:在编译内核后,确保GRUB的device map与镜像文件兼容,以避免启动问题。
  3. 打开kernel message

    • 配置内核日志:在内核编译过程中,确保启用了内核日志功能。这通常涉及在内核配置文件中启用相关的日志选项。
    • 查看日志:在系统启动后,可以通过console或日志文件查看内核输出的消息,以便进行调试和问题排查。
  4. 使用PVE环境优化镜像

    • 创建或编辑镜像:在PVE环境中创建或编辑群晖镜像,将镜像存储在本地文件系统以提高灵活性。
    • 管理RAID:使用mdadm等工具管理RAID,确保存储系统的可靠性和性能。
  5. 解决启动问题

    • 绕过非原生分区检查:在改造过程中,可能需要绕过群晖的非原生分区检查,以避免启动失败。
    • 重建存储区:如果遇到存储区重建问题,需要根据具体情况进行修复或重建。
  6. 多系统集成

    • 探索其他操作系统集成:考虑将其他操作系统如Deepin、Windows Server等集成到群晖环境中,使用GRUB2的Windows版或NTBOOT等工具实现多系统引导。

请注意,以上步骤涉及的技术操作较为复杂,且可能因具体环境和需求而有所不同。在实际操作中,建议详细记录每一步的操作和配置,以便在出现问题时进行排查和修复。同时,确保在进行任何修改之前备份重要数据,以防数据丢失。

③ 【教程】PVE下uhd630核显直通HDMI输出 以NUC9为例

在PVE下为NUC9的uhd630核显实现直通HDMI输出的教程如下

  1. 准备阶段

    • 更改源:删除或注释掉原有的源,替换为推荐的源。
    • 更新系统:确保PVE系统是最新的,以便兼容后续操作。
  2. 启用IOMMU

    • 修改GRUB配置:编辑/etc/default/grub文件,启用IOMMU支持,并更新GRUB配置以使其生效。
  3. 屏蔽驱动

    • 编辑配置文件:添加内容以加载相应的内核模块,屏蔽不必要的驱动。
  4. 配置VFIO

    • 识别设备ID:找到需要直通的uhd630核显的设备ID。
    • 添加直通组:将找到的设备ID添加到VFIO直通组中。
  5. 防止显卡错误

    • 添加配置选项:在PVE或虚拟机配置中添加特定选项,以防止Windows 10中出现显卡代码43错误,以及防止VM死机。
  6. 信任设备

    • 允许不安全中断:更新配置以信任直通设备,并允许其产生的不安全中断。
  7. 更新内核并重启

    • 重启PVE:完成上述配置后,更新内核并重启PVE系统。
  8. 虚拟机配置

    • 修改虚拟机设置:在虚拟机的配置中,注意args参数和hostpci0的设置。
    • 下载ROM文件:根据需要下载并配置ROM文件。
    • 设置VGA为none:由于已经设置了legacyigd=1,因此VGA设置必须为none。
  9. 解决声卡问题

    • 手动添加声卡:虽然可能找不到声卡,但可以直接手动在hostpci0下面添加声卡设备。

注意: 直通雷电口目前无法使用,这是一个遗留问题。 确保按照步骤正确操作,以避免配置错误导致的系统不稳定或设备无法正常工作。

热点内容
服务器虚拟化怎么存储 发布:2025-07-20 07:03:24 浏览:871
瑞星加密盘64 发布:2025-07-20 06:56:55 浏览:279
阻抗压缩 发布:2025-07-20 06:38:35 浏览:832
猎犬ftp 发布:2025-07-20 06:19:17 浏览:758
静态存储定义 发布:2025-07-20 05:59:58 浏览:981
c盘java 发布:2025-07-20 05:55:05 浏览:518
修改linux时间的命令 发布:2025-07-20 05:40:58 浏览:543
python编程第四版中文pdf 发布:2025-07-20 05:39:37 浏览:260
普尔家庭资产怎么配置 发布:2025-07-20 05:39:30 浏览:910
c语言退出程序函数 发布:2025-07-20 05:24:34 浏览:203