windows上用vnc viewer 能连接mac,不能连ubuntu

如果 VNC Viewer 可以连接 macOS,但无法连接 Ubuntu,通常是由于 Ubuntu 上的 VNC 服务配置问题或网络限制导致的。以下是逐步排查和解决方案:


1. 确认 Ubuntu 上已安装并运行 VNC 服务

(1) 检查是否安装了 VNC 服务器

Ubuntu 常用的 VNC 服务器有:

  • TigerVNC(轻量级,推荐)

  • RealVNC(商业版)

  • x11vnc(临时共享)

安装 TigerVNC:

sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common

(2) 设置 VNC 密码

vncpasswd

(输入密码,会保存在 ~/.vnc/passwd

(3) 启动 VNC 服务器

vncserver :1 -geometry 1920x1080 -depth 24
  • :1 表示显示端口 5901:2 对应 5902,依此类推)。

  • -geometry 设置分辨率,-depth 设置颜色深度。

(4) 检查 VNC 是否运行

ss -tulnp | grep vnc

正常应显示:tcp LISTEN 0 5 0.0.0.0:5901 0.0.0.0:* users:(("Xvnc",pid=1234,fd=7))

如果没有,可能是服务未启动或端口被占用。


2. 检查防火墙是否放行 VNC 端口

(1) Ubuntu 防火墙(UFW)

sudo ufw status

如果防火墙开启,放行 VNC 端口(默认 5901):

sudo ufw allow 5901
sudo ufw reload

(2) 检查云服务器安全组(如果是云主机)

  • AWS/Azure/GCP 需在控制台放行 5901 端口(TCP)。


3. 确保 VNC 服务绑定到 0.0.0.0(允许远程连接)

默认情况下,VNC 可能只监听 127.0.0.1(仅本地访问),需修改配置:

vim ~/.vnc/config

添加:

localhost=no

然后重启 VNC:

vncserver -kill :1
vncserver :1

4. 检查 VNC 客户端连接方式

(1) 正确连接格式

在 VNC Viewer 输入:<Ubuntu的IP>:1

:1 对应 5901:2 对应 5902,依此类推。

(2) 使用 SSH 隧道(更安全)

如果直接连接失败,可以尝试 SSH 端口转发:

ssh -L 5901:localhost:5901 username@ubuntu-ip

然后在 VNC Viewer 连接 localhost:1


5. 常见错误及解决方案

错误现象可能原因解决方案
Connection refused服务未运行/端口未开放检查 vncserver 是否运行,防火墙是否放行
Authentication failed密码错误重新运行 vncpasswd 设置密码
Black screen未正确启动桌面环境确保 Ubuntu 安装了 GNOME/XFCE 等桌面
Cannot currently show the desktop未配置桌面会话修改 ~/.vnc/xstartup 文件

6. 配置桌面环境(解决黑屏问题)

如果连接后黑屏,可能是未正确启动桌面。编辑 ~/.vnc/xstartup

写入(以 GNOME 为例):

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec /usr/bin/gnome-session

然后赋予执行权限并重启 VNC:

chmod +x ~/.vnc/xstartup
vncserver -kill :1
vncserver :1

7. 测试 VNC 服务

在 Ubuntu 上运行:

vncserver -list

应显示:

TigerVNC server sessions:X DISPLAY #	PROCESS ID
:1		1234

然后在 VNC Viewer 输入 <Ubuntu-IP>:1,输入密码连接。


总结

  1. 安装 TigerVNC 并设置密码。

  2. 放行防火墙5901 端口)。

  3. 确保 VNC 监听 0.0.0.0(允许远程连接)。

  4. 配置桌面环境(避免黑屏)。

  5. 使用 SSH 隧道(提升安全性)。

如果仍然无法连接,检查日志:

cat ~/.vnc/*.log

或尝试其他 VNC 服务器(如 x11vnc):

sudo apt install x11vnc
x11vnc -display :0 -forever -passwd 你的密码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/pingmian/84880.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Electron-vite【实战】MD 编辑器 -- 编辑区(含工具条、自定义右键快捷菜单、快捷键编辑、拖拽打开文件等)

最终效果 页面 src/renderer/src/App.vue <div class"editorPanel"><div class"btnBox"><divv-for"(config, key) in actionDic":key"key"class"btnItem":title"config.label"click"config.a…

没有宝塔面板的服务器上的WordPress网站打包下载到本地?

在服务器上部署的wordpress博客站&#xff0c;没有宝塔面板&#xff0c;怎么将服务器上的wordpress打包下载到本地&#xff1f; 作者: 晓北斗NorSnow 晓北斗动态视觉设计师&#xff0c;岚度视觉工作室执行人&#xff1b;主要从事展厅视频制作、图形工作站销售、AIGC研究&#…

Atcoder Beginner Contest 410 题解报告

零、前言 经过七七四十九天的分别&#xff0c;本期 ABC 题解又和大家见面啦&#xff01; 经过七周的奋勇杀题&#xff0c;我终于达成了三个小心愿&#xff1a; 不吃罚时AK上金排名 100 100 100 以内 且 Rated&#xff08;悲催的是&#xff0c;我 ABC400 排名两位数但没Rate…

pyspark非安装使用graphframes

pyspark版本3.1.3 需要文件 graphframes-0.8.2-spark3.1-s_2.12.jarspark-graphx_2.12-3.1.3.jar从 https://github.com/microsoft/adb2spark/raw/main/graphframes-0.8.2-py3-none-any.whl 下载graphframes-0.8.2-py3-none-any.whl。下载后把whl后缀改成zip&#xff0c;解压…

[Linux入门] Linux磁盘管理与文件系统

目录 Linux磁盘与文件系统管理详解&#xff1a;从基础到实践 ​​一、磁盘基础简述​​ 1️⃣​​硬盘类型​​&#xff1a; ​2️⃣机械硬盘结构​​&#xff1a; 3️⃣​​磁盘容量计算​​&#xff1a; 公式&#xff1a;磁盘容量磁头数柱面数每磁道扇区数每扇区字节数 …

【Flutter】性能优化总结

【Flutter】性能优化总结 Flutter 性能优化是提升应用流畅度、响应速度和用户体验的关键。可以从以下几个方面进行优化&#xff1a; 一、UI 构建与布局优化 1、避免不必要的重建 使用 const 构造函数&#xff1a;如 const Text(Hello)&#xff0c;可以减少 Widget 重建。使用…

5、ZYNQ PL 点灯--流水灯

目录 1、 概述 2 、硬件电路 3、 新建 VIVADO 工程 4、 添加工程文件 6、编写流水灯功能的Verilog代码 7 、添加管脚约束文件 8、 RTL 仿真 8.1 添加仿真测试源码 8.2 仿真结果 9、 编译并且产生 bit 文件 10、 下载程序 11、实验结果 ​编辑12、总结 1、 概述 本…

HTML5 浮动

1. 常见网页布局 1-3-1布局 1-2-1布局 2. 标准文档流 3. display属性⭐ display&#xff1a; block 给span元素设置成block display&#xff1a; inline 给div元素设置成inline display&#xff1a; inline-block 给div和span元素设置为inline-block display&#xff1a; no…

若依使用RedisCache需要注意的事项

存入redis对象的时候会带一个type字段&#xff0c;此处需要注意 存入方&#xff1a; 此处需要注意&#xff0c;存入redis的时候会带一个type&#xff0c;也就是类的路径名 redisCache.setCacheObject(screenPlayQueueName, userDemondDto,userDemondDto.getPlayDuration().in…

【STM32的通用定时器CR1的CKD[1:0]: 时钟分频因子 (Clock division)】

在 STM32 的通用定时器&#xff08;如 TIM2, TIM3, TIM4, TIM5 等&#xff09;中&#xff0c;CR1 (Control Register 1) 寄存器中的 CKD[1:0] (Clock division) 位域是一个与抗干扰和数字滤波相关的设置&#xff0c;它并不直接影响定时器计数器 (CNT) 的计数频率&#xff08;计…

渲染学进阶内容——机械动力的渲染系统(2)

Flywheel代码 这篇来研究一下实例 InstanceHandle 接口深度解析 接口核心作用 InstanceHandle 是 Flywheel 渲染引擎中的 GPU实例句柄 接口,它提供了对底层渲染实例的直接控制能力。这个接口是**实例化渲染(Instanced Rendering)**系统的核心操作接口,与之前讨论的 Vis…

Redis:极速缓存与数据结构存储揭秘

Redis —— 这个强大又灵活的 开源、内存中的数据结构存储系统。它常被用作数据库、缓存、消息代理和流处理引擎。 核心特点 (为什么它这么受欢迎&#xff1f;)&#xff1a; 内存存储 (In-Memory): 数据主要存储在 RAM 中&#xff0c;读写操作直接在内存中进行。核心优势&…

vulnyx Diff3r3ntS3c writeup

信息收集 arp-scan nmap 这里默认的话是只有80端口的&#xff0c;这个22端口是我拿到root后开的 获取userFlag 直接上web看看 扫个目录 把网页拉到最下面可以看到一个文件上传点 我们尝试上传一个php文件 失败了&#xff0c;那xxx呢 上传成功了&#xff0c;看来后端的后缀名…

【构建】CMake 构建系统重点内容

CMake 构建系统重点内容 1 基本语法与结构 cmake_minimum_required() 指定使用的最低 CMake 版本&#xff0c;防止不同版本行为不一致&#xff1a; cmake_minimum_required(VERSION 3.16)project() 定义项目名称、语言和版本&#xff1a; project(MyApp VERSION 1.0 LANGU…

Packagerun:VSCode 扩展 快捷执行命令

Packagerun&#xff1a;VSCode 快捷命令扩展&#xff08;兼容cursor&#xff09; Packagerun 是一个为 前端和node开发者设计的 VSCode 扩展&#xff0c;旨在简化 package.json 中脚本的执行&#xff0c;并支持自定义命令以提升开发效率。通过右键菜单、快捷键或自定义配置&am…

【C语言】计算机组成、计算机语言介绍

1.1 计算机组成 1946年2月14日&#xff0c;由美国军方定制的世界上第一台电子计算机“电子数字积分计算机”( ENIAC Electronic Numerical And Calculator)在美国宾夕法尼亚大学问世。 计算机(俗称电脑)堪称是人类智慧的结晶&#xff0c;随着计算机的不断发展&#xff0c;各行各…

(九)山东大学软件学院项目实训-基于大模型的模拟面试系统-面试对话标题自动总结

面试对话标题自动总结 主要实现思路&#xff1a;每当AI回复用户之后&#xff0c;调用方法查看当前对话是否大于三条&#xff0c;如果大于则将用户的两条和AI回复的一条对话传给DeepSeek让其进行总结&#xff08;后端&#xff09;&#xff0c;总结后调用updateChatTopic进行更新…

降阶法求解偏微分方程

求解给定的四个偏微分方程,采用降阶法,令 v = u x v = u_x v=ux​,从而将原方程转化为关于 v v v 的一阶方程。 方程 u x y = 0 u_{xy} = 0 uxy​=0 令 v = u x v = u_x v=ux​,则方程变为 v y = 0 v_y = 0 vy​=0。解得 v = C 1 ( x ) v = C_1(x) v=C1​(x),即 u …

提的缺陷开发不改,测试该怎么办?

经历长时间的细致检查&#xff0c;逐条执行数十条测试用例&#xff0c;终于发现一处疑似缺陷。截图留存、粘贴日志&#xff0c;认真整理好各项信息&#xff0c;将它提交到缺陷管理系统。可不到五分钟&#xff0c;这条缺陷就被打回了。开发人员给出的回复十分简洁&#xff1a;“…

【Flutter】Widget、Element和Render的关系-Flutter三棵树

【Flutter】Widget、Element和Render的关系-Flutter三棵树 一、前言 在 Flutter 中&#xff0c;所谓的“三棵树”是指&#xff1a; Widget Tree&#xff08;部件树&#xff09;Element Tree&#xff08;元素树&#xff09;Render Tree&#xff08;渲染树&#xff09; 它们是…