首页主机资讯VirtualBox中Linux系统如何更新内核

VirtualBox中Linux系统如何更新内核

时间2025-11-14 16:39:04发布访客分类主机资讯浏览918
导读:在 VirtualBox 中更新 Linux 内核的实用步骤 一、准备与版本确认 在宿主机上确认 VirtualBox 版本,并优先安装对应版本的 Guest Additions 扩展包(菜单:全局设定 → 扩展),避免后续编译增强功能失...

在 VirtualBox 中更新 Linux 内核的实用步骤

一、准备与版本确认

  • 在宿主机上确认 VirtualBox 版本,并优先安装对应版本的 Guest Additions 扩展包(菜单:全局设定 → 扩展),避免后续编译增强功能失败。
  • 在虚拟机内查看系统与内核版本:
    • 查看系统:cat /etc/os-release
    • 查看内核:uname -r
  • 更新前建议创建快照,便于回滚。
  • 说明:VirtualBox 的增强功能需要内核头文件与编译环境,内核更新后通常需要重新编译或重装增强功能。

二、发行版通用流程

  • 更新软件索引与系统:sudo apt update & & sudo apt full-upgrade -y(Debian/Ubuntu),或 sudo yum update -y / sudo dnf update -y(RHEL/CentOS/Fedora)。
  • 安装编译依赖与头文件:
    • Debian/Ubuntu:sudo apt install -y build-essential linux-headers-$(uname -r)
    • RHEL/CentOS/Fedora:sudo yum groupinstall -y "Development Tools"sudo yum install -y kernel-headers kernel-devel gcc make elfutils-libelf-devel
  • 重启并选择新内核:sudo reboot,进入系统后确认:uname -r

三、RHEL/CentOS 7 使用 ELRepo 升级到主线内核(可选)

  • 导入 GPG 并安装 ELRepo:
    • sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
    • sudo rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
  • 查看并安装内核:
    • 查看:sudo yum --disablerepo=\* --enablerepo=elrepo-kernel list kernel*
    • 安装主线 ML 版:sudo yum --disablerepo=\* --enablerepo=elrepo-kernel install -y kernel-ml
    • 如需开发头文件:sudo yum --enablerepo=elrepo-kernel install -y kernel-ml-devel
  • 设置默认启动内核并重启:
    • 查看默认:grubby --default-kernel
    • 设置默认(示例条目名按实际为准):sudo grub2-set-default 'CentOS Linux (5.16.10-1.el7.elrepo.x86_64) 7 (Core)'
    • 生成配置并重启:sudo grub2-mkconfig -o /boot/grub2/grub.cfg & & sudo reboot
    • 验证:uname -r

四、升级后安装或重建 VirtualBox Guest Additions

  • 挂载增强功能镜像并安装:
    • 挂载:sudo mkdir -p /mnt/cdrom & & sudo mount /dev/cdrom /mnt/cdrom
    • 安装:sudo /mnt/cdrom/VBoxLinuxAdditions.run
  • 常见构建失败与修复:
    • 报错含 “unable to find the sources of your current Linux kernel”:确保已安装匹配版本的 kernel-devel/headers,必要时建立符号链接(如 ln -s /usr/src/kernels/< 实际版本> /usr/src/kernels/$(uname -r))。
    • 报错含 “Cannot generate ORC metadata … please install libelf-dev/libelf-devel or elfutils-libelf-devel”:安装 elfutils-libelf-devel 后重试。
    • 若仍失败,可先卸载旧版再装:sudo /sbin/rcvboxadd cleanup,然后重新运行 VBoxLinuxAdditions.run
  • 完成后重启:sudo reboot,检查服务是否正常。

五、常见问题与排错要点

  • 启动后未进入新内核:检查 GRUB 默认项(grubby --default-kernelcat /boot/grub2/grub.cfg | grep menuentry),必要时用 grub2-set-default 指定新内核并重建配置。
  • 增强功能编译失败:确认 kernel 与 kernel-devel/headers 版本完全一致,并安装 gcc make elfutils-libelf-devel 等依赖。
  • 旧内核清理:确认新内核可正常启动后再删除旧包,避免误删导致无法启动(如 yum remove -y kernel-< 旧版本> )。
  • 扩展功能异常:优先确保 VirtualBox 与 Guest Additions 版本匹配,再重建内核模块。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: VirtualBox中Linux系统如何更新内核
本文地址: https://pptw.com/jishu/748160.html
ubuntu readdir如何统计目录下文件数量 ubuntu readdir如何查看隐藏文件

游客 回复需填写必要信息