解决VirtualBox中虚拟机(ubuntu)与主机(windows)之间互相复制粘贴(文本)

一.开始的设置

1.在VirtualBox中打开设置,常规中修改主机与虚拟机交互设置

2.虚拟机关闭状态下,存储中选中控制器SATA,勾选'使用主机输入输出'

3.选中操作系统对应的虚拟文件,.vdi文件,勾选右边的固态驱动器。

4.启动虚拟机,右ctrl+c,切换到全屏模式,使菜单栏出现。点击安装增强功能。

5.打开文件管理,里面有增强功能的程序,点击运行软件。

6.需要认证

7.出现错误,bzip2没找到

8.运行sudo apt install -y bzip2

9.运行软件,还是报错,遇到的 touch: 无法 touch '/var/lib/VBoxGuestAdditions/skip-6.11.0-19-generic': 没有那个文件或目录 这个错误,通常意味着安装程序想为一个特定版本的内核(这里是 6.11.0-19-generic)创建一个标记文件,但相关的目录结构可能不存在,或者这个内核版本可能不是你当前正在运行的。

更关键的信息是:

  • This system appears to have a version of the VirtualBox Guest Additions already installed.
  • If you wish to replace it with this version, please do not continue with this installation now, but instead remove the current version first, following the instructions for the operating system.

这说明我的 Ubuntu 24.04 系统可能已经通过 apt 包管理器安装了 Guest Additions 的一部分(比如 virtualbox-guest-utils, virtualbox-guest-x11 等)。直接从 VirtualBox 的 ISO 镜像运行安装脚本可能会与系统包管理器安装的版本冲突。

二.问题解决,成功文本双向复制粘贴

1.解决:

尝试卸载所有与 virtualbox-guest- 相关的包并清理不再需要的依赖:

sudo apt-get purge virtualbox-guest-*

sudo apt-get autoremove

2.重启虚拟机,确保旧的模块被卸载。

sudo reboot

3.在已经安装 bzip2 的基础上,需要确保其他构建工具和内核头文件存在。

bash 复制代码
sudo apt update
sudo apt install build-essential dkms linux-headers-$(uname -r)
  • build-essential: 包含编译C/C++程序所需的基本工具(如 gcc, make)。
  • dkms: Dynamic Kernel Module Support,帮助在内核更新时自动重新编译内核模块。
  • linux-headers- ( u n a m e − r ) (uname -r) (uname−r): 安装与你当前正在运行的内核版本匹配的头文件。 ( u n a m e − r ) (uname -r) (uname−r) 会自动替换为你的内核版本号。

4.重新运行 Guest Additions 安装程序,打开/VBox_GAs_x.y.z 文件夹 (其中 x.y.z 是版本号),黑窗口运行命令:

sudo ./VBoxLinuxAdditions.run

5.内核模块可能已经编译好了,但它们还没有被激活和加载。重启:

sudo reboot

6.效果,这样虚拟机与主机就可以双向复制文本。

三.解决拖放问题(待完善)

可以先用共享文件夹进行挂载,由于文本复制粘贴已够用,且拖放不常用,这里占时空着。

1.拖拽文件出现问题

2.可以看到双向是打开的

相关推荐
zhengfei61114 小时前
CVE-2026-98432:Linux 内核 TCP 释放后重用漏洞,CVSS 9.8 但补丁覆盖极不均衡
linux·运维·tcp/ip
叼烟扛炮15 小时前
Linux 学习笔记(六十一):网络编程毕业设计——Reactor 反应堆模式
linux·网络·笔记·学习·课程设计
xyzzklk15 小时前
变相解决华为Mate 8锁屏后无法建立入站网络连接
linux·运维·服务器·网络·华为·go·安卓
叼烟扛炮17 小时前
Linux 学习笔记(五十九):epoll 的生死抉择——LT 与 ET 模式
linux·运维·服务器·网络·笔记·学习·php
David猪大卫1 天前
【Linux修炼】环境变量、进程地址空间
linux·c语言·经验分享·笔记·学习·ubuntu·centos
叼烟扛炮1 天前
Linux 学习笔记(五十六):IO 多路复用初探——select 的“三宗罪”
linux·服务器·数据库·笔记·学习·php
Ruiery1 天前
Linux 6.6内核内存管理深度解析(十五):CMA 连续内存分配器
linux·运维·服务器
测试界的小码农1 天前
【Linux 命令实战(01):认识 Linux 终端,从零掌握第一个命令】
linux·运维·服务器
布裘1 天前
【银河麒麟】重启后时区丢失?排查发现 localtime 被业务程序替换成硬链接
linux·运维·网络
GeW1 天前
高端化转型进入“补底层”阶段:Linux与数据库的再定位
linux