Linux 常用命令指南 - vino命令 vnc服务端

Linux 常用命令指南 - vino命令 vnc服务端本文介绍了 linux 上一个用于远程桌面连接的 VNC 服务端

Linux 常用命令指南 - vino命令 vnc服务端



一、vino 是什么?

vino 是linux上一个用于远程桌面连接的 VNC 服务端。

二、vino 使用场景

2.1 vino 安装

ubuntu 环境安装 vino :

$ sudo apt install vino $ sudo apt install dconf-editor # 非必需,查看gsettings 软件包 

2.2 vino 启动服务端

查看 vino 服务配置 /usr/lib/systemd/user/vino-server.service 内容如下:

[Unit] Description=Vino VNC Server [Server] Type=dbus BusName=org.gnome.Vino ExecStart=/usr/lib/vino/vino-server Restart=on-abnormal 

可通过 systemctl 命令启动:

$ systemctl --user restart vino-server.service # 启动 vino 服务 $ systemctl --user status 

2.3 vino 服务端配置

vino 服务端可以通过 gsettings 进行控制。

gsettings 配置文件如果想修改并生效可按如下操作:

# vino gsettings 配置文件所在目录 $ sudo vim /usr/share/glib-2.0/schemas/org.gnome.Vino.gschema.xml # gnome glib schema 编译使gsettings配置文件生效 $ sudo glib-compile-schemas /usr/share/glib-2.0/schemas 获取 vino 的所有 gsettings 键值对: ```bash $ gsettings list-recursively org.gnome.Vino # 5900端口号如果被防火墙阻挡,可以通过ufw执行以下操作运行5900可用 # ufw enable ; ufw allow 5900` # vnc端口号为5900,有时该端口号也会被其他vnc服务抢占(如x11vnc), # 端口抢占后导致 vino 出现异常,可以更改端口号或者关闭其他vnc服务 org.gnome.Vino alternative-port uint16 5900 # 认证方式,当设置为 ['vnc'],同时 require-encryption 设置为true,即客户端连接vnc服务时,需要登陆密码。 org.gnome.Vino authentication-methods ['none'] org.gnome.Vino disable-background false org.gnome.Vino disable-xdamage false org.gnome.Vino icon-visibility 'client' org.gnome.Vino lock-screen-on-disconnect false org.gnome.Vino mailto '' org.gnome.Vino network-interface '' org.gnome.Vino notify-on-connect true # true 代表客户端连接时,需要服务端手动确认 org.gnome.Vino prompt-enabled true org.gnome.Vino require-encryption true org.gnome.Vino use-alternative-port false org.gnome.Vino use-upnp false # true 代表只可以查看远程vnc远程桌面,不可编辑控制 org.gnome.Vino view-only false # 密码采用base64加解密,可以通过python3 base64库进行解析 org.gnome.Vino vnc-password 'keyring' 

注: vnc-password 密码加解密可参考 Python3 编码解码Base64数据 :

$ python3 >>> import base64 >>> w = b'' # vnc-password 想设置的密码明文 >>> # Encode as Base64 >>> w_encode = base64.b64encode(w) >>>> # 经过base64编码的w_encode 为最终 vnc-password 设置的密码 >>>> print(w_encode) b'MTIzNDU2Nw==' >>> base64.b64decode(w_encode) b'' >>> 

第一种设置 vino 服务方法,通过 gsettings 命令行设置:

# 设置vnc连接服务密码 $ gsettings set org.gnome.Vino vnc-password 'MTIzNDU2Nw==' 

可以将相关 gsettings 设置写入一个脚本 ~/vino-set.sh

$ vi ~/vino-set.sh # 加入以下内容 #!/bin/bash # DISPLAY为需要展示的vnc 屏幕,对于多屏幕来说需要额外设置 export DISPLAY=:0 gsettings set org.gnome.Vino enabled true gsettings set org.gnome.Vino prompt-enabled false gsettings set org.gnome.Vino require-encryption false xrandr --fb 1280x1024 # 设置分辨率 /usr/lib/vino/vino-server & $ sudo chmod +x ~/vino-set.sh # 赋予可执行权限 $ ~/vino-set.sh # 设置并启动vino服务 

第二种设置 vino 服务方法,通过启动 dconf-editor 进入 /org/gnome/desktop/remote-access/ vino 所在gsettings 页面设置。

当vino 默认分辨率比较模糊,除了xrandr可以设置分辨率,也通过客户端 remmina 设置 vnc 连接的分辨率为良好,这样就不会模糊了。

三、总结

本文介绍了linux上一个用于远程桌面连接的 VNC 服务端。

今天的文章 Linux 常用命令指南 - vino命令 vnc服务端分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2024-12-27 07:17
下一篇 2024-12-27 07:11

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/96429.html