Linux 上安装和配置 VNC 远程桌面

在 Linux 上安装和配置 VNC(Virtual Network Computing)可以让你远程访问图形化桌面环境。以下是详细的安装和配置步骤,适用于主流 Linux 发行版(如 Ubuntu、CentOS、Debian 等)。


1. 安装 VNC 服务器

Ubuntu/Debian

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

CentOS/RHEL

sudo yum install tigervnc-server -y

Fedora

sudo dnf install tigervnc-server -y

Arch Linux

sudo pacman -S tigervnc

2. 设置 VNC 密码

运行以下命令设置 VNC 访问密码(至少 6 位):

vncpasswd

密码会保存在 ~/.vnc/passwd(加密存储)。

⚠️ 注意:此密码仅用于 VNC 连接,不是系统用户密码。


3. 配置 VNC 服务器

(1)创建 VNC 配置文件

nano ~/.vnc/config

添加以下内容(示例配置):

geometry=1920x1080  # 分辨率
depth=24            # 颜色深度(16/24/32)
localhost=no        # 允许远程连接
alwaysshared=yes    # 允许多用户同时连接

(2)选择桌面环境

编辑 ~/.vnc/xstartup 文件,指定要启动的桌面环境(如 GNOME、KDE 或 XFCE):

nano ~/.vnc/xstartup
GNOME(Ubuntu 默认)
#!/bin/sh
export GNOME_SHELL_SESSION_MODE=ubuntu
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
exec /etc/X11/Xsession ubuntu-xsession
XFCE(轻量级推荐)
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4
KDE Plasma
#!/bin/sh
exec startplasma-x11

保存后赋予可执行权限:

chmod +x ~/.vnc/xstartup

4. 启动 VNC 服务器

vncserver :1 -geometry 1920x1080 -depth 24
  • :1 表示显示编号(端口号为 5901:2 对应 5902,依此类推)。
  • 关闭 VNC 服务:
    vncserver -kill :1
    

5. 配置防火墙(如果需要)

Ubuntu/Debian(UFW)

sudo ufw allow 5901/tcp
sudo ufw reload

CentOS/RHEL(Firewalld)

sudo firewall-cmd --add-port=5901/tcp --permanent
sudo firewall-cmd --reload

6. 连接 VNC

使用 VNC 客户端(如 TigerVNC、RealVNC 或 Remmina)连接:

  • 地址: <你的IP>:5901(例如 192.168.1.100:5901
  • 密码: 之前通过 vncpasswd 设置的密码。

7. 设置 VNC 开机自启动(可选)

Systemd 服务(推荐)

创建服务文件:

sudo nano /etc/systemd/system/vncserver@.service

粘贴以下内容(替换 <USER> 为你的用户名):

[Unit]
Description=Start TigerVNC server at startup
After=syslog.target network.target[Service]
Type=forking
User=<USER>
ExecStart=/usr/bin/vncserver :1 -geometry 1920x1080 -depth 24
ExecStop=/usr/bin/vncserver -kill :1
Restart=on-failure[Install]
WantedBy=multi-user.target

启用并启动服务:

sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@1.service

8. 常见问题

(1)黑屏或无响应

  • 确保 ~/.vnc/xstartup 文件正确配置了桌面环境。
  • 检查日志:
    cat ~/.vnc/*.log
    

(2)连接被拒绝

  • 确认 VNC 服务正在运行:
    ss -tulnp | grep vnc
    
  • 检查防火墙是否放行端口。

(3)提高安全性

  • SSH 隧道加密(推荐):
    ssh -L 5901:localhost:5901 user@your-server-ip
    
    然后在 VNC 客户端中连接 localhost:5901

总结

步骤命令/操作
安装 VNCsudo apt install tigervnc-standalone-server
设置密码vncpasswd
配置桌面编辑 ~/.vnc/xstartup
启动服务vncserver :1
防火墙sudo ufw allow 5901/tcp
开机自启systemctl enable vncserver@1

通过以上步骤,你可以轻松在 Linux 上搭建 VNC 远程桌面环境。如果需要更安全的访问,建议结合 SSH 隧道使用。

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

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

相关文章

《AI大模型应知应会100篇》第22篇:系统提示词(System Prompt)设计与优化

第22篇&#xff1a;系统提示词(System Prompt)设计与优化 摘要 在大语言模型&#xff08;LLM&#xff09;应用中&#xff0c;系统提示词&#xff08;System Prompt&#xff09;是控制模型行为的核心工具之一。它不仅定义了模型的身份、角色和行为规范&#xff0c;还直接影响输…

其他网页正常进入,但是CSDN进入之后排版混乱

显示不正常&#xff0c;排版混乱 解决方法&#xff1a; ①打开网络设置 ②更改适配器 ③所连接的网络 --右键 属性 然后就可以正常访问了。

Qwen2.5-VL视觉大语言模型复现过程,没碰到什么坑

视频讲解&#xff1a;Qwen2.5-VL视觉大语言模型复现过程&#xff0c;没碰到什么坑_哔哩哔哩_bilibili Qwen2.5-VL视觉大语言模型复现过程&#xff0c;没碰到什么坑 今天复现下Qwen2.5-VL玩玩 https://github.com/QwenLM/Qwen2.5-VL 创建conda环境&#xff0c;实测22.04&#x…

宫庭海:跨界融合与家国情怀的影视开拓者

从音乐经纪人到影视多面手的创业之路 近日&#xff0c;国内娱乐产业领军人物、著名音乐经纪人、制片人、影视投资人宫庭海先生再次受到广泛关注。凭借其卓越的成就和贡献&#xff0c;宫庭海先生在业界树立了良好的口碑和广泛的影响力。 宫庭海&#xff0c; 辽宁省大连市人&…

LeetCode算法题(Go语言实现)_51

题目 给你两个下标从 0 开始的整数数组 nums1 和 nums2 &#xff0c;两者长度都是 n &#xff0c;再给你一个正整数 k 。你必须从 nums1 中选一个长度为 k 的 子序列 对应的下标。 对于选择的下标 i0 &#xff0c;i1 &#xff0c;…&#xff0c; ik - 1 &#xff0c;你的 分数 …

并查集(力扣2316)

这种涉及不同连通分量的&#xff0c;看上去就可以用并查集。并查集的模板请参见上一篇内容。并查集&#xff08;力扣1971&#xff09;-CSDN博客 现在我们要求的是无法互相到达的点对。根据观察易得&#xff0c;我们只需要求出每个并查集的元素数量&#xff0c;然后遍历每个点&…

Python在生成艺术中的创新应用

Python在生成艺术中的创新应用 在数字艺术的浪潮中,Python以其强大的库支持和简洁的语法,成为了生成艺术领域的一颗璀璨明珠。今天,就让我们一起踏上这段充满创意与惊喜的旅程,探索Python如何在生成艺术中大放异彩。 一、引言 生成艺术,是一种通过算法自动生成艺术作品的…

ROS ROS2 机器人深度相机激光雷达多传感器标定工具箱入门教程(一)

系列文章目录 目录 系列文章目录 前言 一、安装 1.1 ROS 2 官方软件包 二、教程 2.1 标定配置器 2.1.1 机器人选项 2.1.2.1 外参相机-激光雷达标定 2.1.2.2 外参激光雷达-激光雷达标定 2.1.2.3 外参相机参照标定 2.1.2.4 外参激光雷达-参考标定 2.2 外参照相机-激…

Ubuntu利用docker搭建Java相关环境问题记录

Docker拉取镜像超时 报错 Unable to find image dpanel/dpanel:latest locally docker: Error response from daemon: Get "https://registry-1.docker.io/v2/ ": context deadline exceeded (Client.Timeout exceeded while awaiting headers)解决方式 在etc/do…

list的模拟实现和反向迭代器的底层

1&#xff1a;list的模拟实现 1&#xff1a;链表的节点 对于list的模拟实现&#xff0c;我们需要先定义一个节点的类可以使用&#xff08;class也可以使用struct&#xff09; // List的节点类 template<class T> struct ListNode {ListNode(const T& val T()){_p…

数据加载与保存

通用方式‌ SparkSQL提供了通用的数据加载方式&#xff0c;使用spark.read.loa方法&#xff0c;并可通过format指定数据类型&#xff08;如csv、jdbc、json、orc、parquet、textFile&#xff09;。 load方法后需传入数据路径&#xff08;针对csv、jdbc、json、orc、parquet、…

7 编译型语言、解释型语言与混合型语言的深度解析:以 C、Java、Python 为例

在编程领域&#xff0c;语言的执行方式是其设计哲学的核心体现&#xff0c;直接影响着性能、可移植性和开发效率。本文将深入剖析编译型语言&#xff08;以 C 语言为例&#xff09;、解释型语言&#xff08;以 Python 为例&#xff09;和混合型语言&#xff08;以 Java 为例&am…

Edge浏览器安卓版流畅度与广告拦截功能评测【不卡还净】

安卓设备上使用浏览器的体验&#xff0c;很大程度取决于两个方面。一个是滑动和页面切换时的反应速度&#xff0c;另一个是广告干扰的多少。Edge浏览器的安卓版本在这两方面的表现比较稳定&#xff0c;适合日常使用和内容浏览。 先看流畅度。Edge在中端和高端机型上启动速度快&…

智能云图库-12-DDD重构

本节重点​ 之前我们已经完成了本项目的功能开发。由于本项目功能丰富、代码量大&#xff0c;如果是在企业中维护开发的项目&#xff0c;传统的 MVC 架构可能会让后续的开发协作越来越困难。所以本节鱼皮要从 0 带大家学习一种新的架构设计模式 —— DDD 领域驱动设计。 大纲…

量子安全邮件系统 —— 邮件回溯密钥销毁机制

这里写目录标题 量子安全邮件系统 —— 邮件回溯密钥销毁机制一、项目背景与简介二、理论基础2.1 密钥销毁的重要性2.2 时间衰减与回溯销毁2.3 安全日志与报警机制三、系统架构设计3.1 模块划分3.2 系统架构图(Mermaid示意图)四、关键算法与实现流程4.1 密钥生成与存储4.2 邮…

个人博客系统后端 - 用户信息管理功能实现指南(上)

本文记录了如何实现用获取户信息&#xff0c;用户信息更新&#xff0c;用户头像上传三大基础功能 先上接口实现截图&#xff1a; 一、项目结构概览 先介绍一下 个人博客系统采用了标准的 Spring Boot 项目结构&#xff0c;用户功能相关的文件主要分布在以下几个目录&#xff1a…

趣味编程之分布式系统:负载均衡的“雨露均沾“艺术

#此篇文章由Deepseek大力支持&#x1f60b; 凌晨三点&#xff0c;西二旗某火锅店后厨—— “羊肉卷走3号桌&#xff01;” “肥牛卷去7号&#xff01;” “虾滑优先给VIP区&#xff01;” 我蹲在传菜口的监控屏幕前&#xff0c;看着机器人服务生们忙而不乱地穿梭。突然间&am…

Linux——信号(1)信号的产生

我们在讲进程的多种状态时提到过&#xff0c;一个进程的退出有三种情况&#xff1a;正常退出&#xff0c;结果出错退出&#xff08;代码也执行完了&#xff09;&#xff0c;异常终止退出&#xff08;代码未执行完&#xff09;&#xff0c;其中最后一种退出相当于进程在运行时&a…

LeetCode 2919 使数组变美的最小增量运算数

动态规划解题&#xff1a;最小操作次数使数组变为美丽数组 问题描述 给定一个下标从0开始、长度为n的整数数组nums和一个整数k。你可以对数组中的任意一个元素进行加1操作&#xff0c;操作次数不限。如果数组中任意长度大于或等于3的子数组的最大值都大于或等于k&#xff0c;…

计算生物学在中国的发展情况?

李升伟 整理 计算生物学在中国的发展呈现出多方面积极态势&#xff0c;具体表现如下&#xff1a; 发展概述&#xff1a; 上海发布了医用AI发展的专项方案&#xff0c;特别强调了脑科学与计算生物学的前沿领域。这表明政府有意推动该领域的技术进步和技术合作平台建设。国内的…