windows远程桌面 (windows 虚拟机) 中 复制操作 (ctrl+c) 造成 本地机器 cpu狂增

最近我厂推广使用堡垒机 ,通过堡垒机 连接 远程的 windows虚拟机。

使用几天之后一切正常。今天却发生一件怪事,在虚拟机(windwos xp)中 一执行 复制操作,则 本地笔记本电脑(windows 7) 的cpu狂增,直接死机。 而同时 虚拟机本身的cpu未出现变化。等待几分钟后,恢复正常。

在本地电脑中 自行复制 ,不存在上述现象。 


通过 在虚拟机中执行 复制操作 后,同时 查看本地系统cpu的进程,可以看见 复制操作一致性,则 本地各种进程启动,各耗费8%左右的CPU,造成 整体cpu达到90%多,处于假死机状态。

即 在 复制操作触发后,本地cpu的QQ、hi、office等各种进程  都在监测到 剪贴板,然后这些进程的cpu都增加。


故怀疑是 本地电脑的问题,是不是安装了一些  与 堡垒机插件 有冲突 的 软件。

我的排查步骤如下: 1. 重启本地电脑。然后登陆 虚拟机,问题可以复现。  多次重启,仍然存在。

                                      2,逐渐关闭本地电脑的一些软件,问题 让人可以复现。

                                     3. 逐渐关闭 虚拟机中的软禁,问题仍然存在。

各种无奈后,泪奔。只好 咨询 堡垒机的支持同学。他也没遇到过 类似问题。

纠结了几天后,今天 找 堡垒机的同学 要了 另外一个 临时的windows虚拟机,然后我登陆后,测试,发现一切正常。

故可以 推断是我的 虚拟机存在问题。 果断 重启 我的虚拟机。

重启后,不能复现。故 问题解决。



偶尔也会遇到 本地window7 系统 与 堡垒机中的 虚拟机 之间 无法复制的问题,重启 虚拟机 即可解决。


一句话总结 :   “解决任何电脑问题 前,重启永远是 第一步!!! ”


<think>好的,用户问的是在远程连接虚拟机开始编译后,如果远程连接断开了,虚拟机那边是否会继续编译。我需要逐步分析这个问题,确保回答准确且结构清晰。 首先,我应该考虑远程连接断开的影响。当用户通过SSH或者远程桌面连接到虚拟机时,断开连接通常意味着终止了当前的会话。这时候,用户可能会担心正在运行的进程,比如编译任务,是否也会被终止。 接下来,需要区分两种情况:前台进程和后台进程。如果用户在断开连接前直接运行了编译命令,比如“make”或者“gcc”,那么这个进程通常是在前台运行的。这种情况下,远程会话终止可能会导致进程收到SIGHUP信号,从而被终止,编译也就停止了。 但是,如果用户在启动编译时使用了后台运行的方式,比如在命令后加上“&”或者使用nohup、disown等命令,那么即使断开连接,进程也不会收到终止信号,编译会继续在后台运行。例如,使用“nohup make &”可以让编译任务忽略挂断信号,继续执行。 此外,屏幕管理工具如screen或tmux也能帮助保持进程运行。用户可以在这些工具中启动编译任务,然后断开连接,任务会继续在后台执行,之后重新连接时可以恢复会话查看进度。 还需要考虑虚拟机的配置和资源情况。如果虚拟机本身没有资源限制或故障,编译任务在后台运行时应该可以正常继续。但如果虚拟机因为资源不足(如内存、CPU)而崩溃或冻结,编译也会中断,但这与远程连接断开无关。 最后,用户可能需要具体的操作建议,比如如何将进程放入后台,或者使用screen/tmux的方法。这样他们在遇到连接不稳定时,可以确保编译任务不受影响。 总结一下,回答需要分情况讨论,说明断开连接的影响,并给出解决方案,确保用户理解不同情况下的结果以及如何避免编译中断。</think>### 问题分析:远程连接断开后虚拟机是否继续编译? #### 1. **关键因素:进程运行方式** - **前台进程**:如果编译命令直接在远程连接的终端中运行(例如 `make` 或 `gcc`),默认是**前台进程**。此时远程连接断开会导致进程收到 `SIGHUP` 信号,编译**可能被终止**。 - **后台进程**:若编译任务被放入后台(例如 `make &` 或 `nohup make &`),或使用工具(如 `screen`/`tmux`)守护进程,则断开连接后编译**会继续执行**。 #### 2. **解决方案:确保编译持续运行** - **方法 1:使用 `nohup` 忽略挂断信号** ```bash nohup make > output.log 2>&1 & ``` - **说明**:`nohup` 会忽略 `SIGHUP` 信号,`>` 将输出重定向到日志文件,`&` 表示后台运行。 - **方法 2:使用 `screen` 或 `tmux` 会话管理** ```bash screen -S compile_session # 创建新会话 make # 在会话中启动编译 Ctrl+A D # 分离会话(编译继续运行) ``` - **重连后恢复会话**: ```bash screen -r compile_session ``` #### 3. **特殊情况的处理** - **虚拟机资源限制**:若虚拟机因内存/CPU不足而崩溃,编译会中断(与连接无关)。 - **编译依赖网络**:如果编译需要访问外部资源(如下载依赖包),而虚拟机网络断开,则可能失败。 #### 4. **验证是否在运行** - 重新连接后,通过命令检查进程: ```bash ps aux | grep make ``` ### 总结表格 | **场景** | **编译是否继续** | **原因** | |------------------------|------------------|-----------------------------------| | 前台进程 + 直接断开连接 | ❌ 终止 | 收到 `SIGHUP` 信号 | | 后台进程 + `nohup` | ✅ 继续 | 忽略 `SIGHUP`,进程由系统托管 | | 使用 `screen`/`tmux` | ✅ 继续 | 会话独立于连接,进程在后台保留 | **建议**:对于长时间任务,始终使用 `nohup` 或 `screen`/`tmux` 启动进程,避免因连接问题导致中断。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值