部分解决Ubuntu安装X11VNC需要自动登录的问题

2023-05-16

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、GDM是什么?
  • 二、VNC绑定GDM账户
    • 1.vnc绑定gdm登录
  • 总结


前言

Ubuntu18.04~Ubuntu22.04安装并配置VNC

这个教程是接着上面一篇文章的,之前遗留了一个问题,就是VNC启动绑定的是1000这个账户。一般这个账户都是你安装Ubuntu的时候创建的第一个除root外的账户,下面的教程我们会详细论述下之前没有解决的问题,就是VNC绑定id为1000的账户的自动登录问题。


一、GDM是什么?

GDM是计算机术语,全称The GNOME Display Manager,是GNOME显示环境的管理器,并被用来替代原来的X Display Manager。与其竞争者(X3DM,KDM,WDM)不同,GDM是完全重写的,并不包含任何XDM的代码。GDM可以运行并管理本地和远程登录的X服务器(通过XDMCP)。

因为一会要用到这个工具,所以这里先科普下。

二、VNC绑定GDM账户

在 Ubuntu18.04~Ubuntu22.04安装并配置VNC 这篇文章里我们VNC绑定的是1000这个账户,但是这里存在一个问题就是在/run/user/1000目录下并不是总是存在gdm这个文件夹,如果你没有通过图形界面登录进1000这个账户的话,/run/user/1000这个文件夹下是没有gdm的,只有你登录1000这个账户之后/run/user/1000文件夹下才会出现gdm,而且记住必须图形界面登录,ssh等远程登录是不行的。
在这里插入图片描述
看到了没有,以上图片就是我通过ssh登录后截取的/run/user/1000文件夹下面的情况,是没有gdm文件夹的。接下来我通过图形界面登录1000,gdm文件夹就出现了。

在这里插入图片描述
所以这个东西还是绕不过,也是出于安全的考虑。怎么解决这个问题呢,你比如有一种场景下,我会需要使用vnc,但是我又不能让1000设置为自动登录,这样会导致安全问题,这里有一个办法可以解决这个问题,但是又没有完美解决。请继续往下看。

1.vnc绑定gdm登录

修改x11vnc.service将1000改为125(此处为gdm的id,不通系统可能不一样,你需要看下gdm的id,方法如下:)

cat /etc/passwd | grep gdm
gdm:x:125:130:Gnome Display Manager:/var/lib/gdm3:/bin/false

125就是我的系统的id,接下来修改x11vnc.service,将1000改为125,然后执行下面的命令

sudo systemctl daemon-reload

重启之后你不用自动登录都可以访问vnc了。使用vncviewer打开之后就可以看到1000账号的登录画面了。

在这里插入图片描述
这个时候/run/user/1000下面还没有gdm这个文件夹

在这里插入图片描述

接下来登录你的1000账号会出现黑屏,但是远程端已经登进去了,这是因为打开的桌面不属于gdm,属于1000。所以目前我们止步于黑屏了,接下来只需要把x11vnc.service里面的gdm改为1000就可以远程登陆了,远程端你只需要screen blank就行了,不需要logout

在这里插入图片描述
再去/run/user/1000下面去看,已经有gdm文件夹了。

在这里插入图片描述

关于这个问题我去x11vnc的官网兜了一圈,明确的一点是官网说明了这个问题的存在,主要还是认证方面的需要。


总结

方法不完美,但是又近了一步,这种方法可以解决远程无人值守的场景,我觉得也是有可操作性的。安全上肯定会比之前的好一些。
我还是继续研究下,看看能不能彻底解决不需要自动登录的问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

部分解决Ubuntu安装X11VNC需要自动登录的问题 的相关文章

随机推荐

  • net core Ocelot 网关 初使用(1)

    新建 net core webapi 项目 安装 nuget 包 96 96 96 Install Package Ocelot 96 96 96 配置 添加一个Ocelot json的文件用来添加Ocelot的配置 转发 http loc
  • net core Ocelot 网关 初使用(2)- 搭配 consul 服务使用 Ocelot

    搭配 consul 服务使用 Ocelot xff0c 自动路由配置 新建webapi 项目 xff0c 安装 nuget 包 install package Ocelot install package Ocelot Provider C
  • spring boot web开发(1)构建项目

    spring boot web开发 xff08 1 xff09 构建项目 1 构建项目 去 https start spring io 下载基础项目在pom xml 添加 web 依赖 lt dependency gt lt groupId
  • SpringBoot web开发(2)session登录注册

    SpringBoot web开发 xff08 2 xff09 session登录注册 新建 LoginController java 文件使用 session 控制登录 64 Autowired HttpSession session 添加
  • SpringBoot web开发 (3) 使用 mysql-jpa 登录验证

    3 使用 mysql jpa 构造 数据库实体类型 添加maven依赖 lt dependency gt lt groupId gt org springframework boot lt groupId gt lt artifactId
  • JAVA+Netty根据二级域名实现多租户内网穿透功能【设计实践】

    目录 背景 实践 项目结构 原理分析 代码实现 cc common项目 cc server项目 cc client项目 Nginx配置 使用 启动服务端 启动客户端 背景 上一篇JAVA基于Netty实现内网穿透功能 设计实践 殷长庆的博客
  • C++:stringstream格式化字符串

    C语言通过snprintf对字符串进行格式化 格式化前需要首先对字符串的长度预估 如果长度大于了字符数组的大小 格式化字符串会被截断 C 通过stringstream对字符串进行格式化 include lt sstream gt inclu
  • Ubuntu:apt软件包管理工具

    apt是Advanced Packaging Tool 是Ubuntu的安装包管理工具 主要的几个操作为 1 安装软件包 sudo apt install 软件包名 2 卸载软件包 而保留软件的配置文件 sudo apt remove 软件
  • CMake:message输出消息

    可以在执行cmkae的时候使用message输出信息 xff1a message lt mode gt 34 message text 34 其中mode有如下几个选项 xff08 优先级由低到高 xff09 xff1a TRACE xff
  • C++(11):通过underlying_type获取/输出枚举类的值

    C 11 枚举类 风静如云的博客 CSDN博客 c 11 枚举类 介绍了枚举类使用的好处 不过如果直接输出枚举类的值是不行的 include lt iostream gt using namespace std int main enum
  • gitlab-ce安装

    GitLab是一个利用 Ruby on Rails 开发的开源应用程序 xff0c 实现一个自托管的Git项目仓库 xff0c 可通过Web界面进行访问公开的或者私人项目 GitLab拥有与Github类似的功能 xff0c 能够浏览源代码
  • WSL2安装到其它目录下

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 WSL2是什么 xff1f 二 下载Ubuntu20 041 打开Mocrosoft Store2 导出发行版 总结 前
  • 解决Ubuntu20.04安装CUDA-11.2报256错误的问题

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 报错的原因是什么 xff1f 二 安装cuda 11 2三 安装nvidia driver 455四 再装cuda 11
  • ARM整形算力计算

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 RK3399规格 xff1f 二 开始计算1 参考2 计算 总结 前言 之前做人工智能使用RK3399的CPU去推理 x
  • WSL2使用USB设备

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 WSL2是什么 xff1f 二 编译内核1 查看自己的内核2 准备工作3 下载适合自己的内核版本4 开始编译4 使用内核
  • cron的正确食用方法

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 cron是什么 xff1f 二 使用步骤1 字段含义2 加强学习3 crontab命令4 工作原理5 其它用法6 补充内
  • windows 下 mongodb 导入导出collection(json、csv)

    1 下载mongodb xff0c 并安装 https www mongodb com dr fastdl mongodb org win32 mongodb win32 x86 64 2008plus ssl 3 4 0 signed m
  • 【WSL2启用systemd支持(一个配置即可)】

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 systemd是什么 xff1f 二 备份数据1 归档2 备份分支 三 准备工作1 内核升级 四 修改配置总结 前言 很
  • WSL2+Systemd支持度测试

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 systemd是什么 xff1f 二 开始测试1 Docker2 rsyslog3 systemd timesyncd4
  • 部分解决Ubuntu安装X11VNC需要自动登录的问题

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 GDM是什么 xff1f 二 VNC绑定GDM账户1 vnc绑定gdm登录 总结 前言 Ubuntu18 04 Ubun