Jetson Nano配置VNC 2021-5-14

Jetson Nano配置VNC 2021-5-14

参考了很多教程,但是效果都不是很好,有的是桌面灰屏,有的是没鼠标显示黑叉,本来觉得也不是不能用,但是在打开文件编辑器后发现确实不能用。今遇到论坛有国外兄弟发帖:网址,这位兄弟嫌其他vnc太慢了,而笔者没有显示器,虽然情境不同,但是好歹能用,特此记录,感谢那位兄弟。

一、软件安装

首先在安装之前需要保证所有东西都是最新的,然而我觉得并没有什么用,如果有问题再来修正吧。(下面的nano是作者使用的,这里笔者使用vim)

$ sudo apt-get update sudo apt-get upgrade
$ sudo apt-get install nano 

开始安装tigervnc

$ sudo apt install tigervnc-standalone-server

显示安装完成即可

二、为VNC设置密码

需要注意的是这里的密码是vnc登录的密码,并非用户密码

这里只需要简单的一句:

$ vncpasswd

设置密码即可

三、配置文件

这里需要修改一些配置文件,个人理解是用于使vnc画面显示正常。

1. 修改xstartup文件

$ sudo vim ~/.vnc/xstartup

修改成如下:

!/bin/sh
export XDG_RUNTIME_DIR=/run/user/1000
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
xrdb /home//.Xresources
xsetroot -solid grey
gnome-session &
startlxde &

如果这一步,xstartup文件并未创建过, 还需要执行下面一句命令来进行提权操作:

$ sudo chmod 755 ~/.vnc/xstartup

2. 创建.Xresources

检查一下 .Xresources是否存在:

$ ls -al /home/.Xresources

如果不存在就创建一个

$touch /home/.Xresources

3. 创建service文件(文件名为vncserver@.service)

这一步的目的是让VNC能自启动,首先转到systemd路径下:

$ cd /etc/systemd/system

创建并编辑vncserver@.service文件, (没错, 确实带@这个符号):

$ sudo vim vncserver@.service

添加下面的文本到这个文件中,将user, group 以及家目录更改为你自己的情况, 这里原作者制作了一个2K分辨率的配置, 当然我们一般用不到这么大分辨率的, 可以将下面的改成1080P,也可自行设置屏幕大小。

[Unit]
Description=Start TigerVNC Server at startup
After=syslog.target network.target

[Service]
Type=forking
User=
Group=
WorkingDirectory=/home/<home_directory>
PIDFile=/home//.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver :%i -depth 24 -geometry 1920×1080 -nolisten tcp
# ExecStart=/usr/bin/vncserver :%i -depth 24 -geometry 2560×1400 -nolisten tcp
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

4. 修改conf文件

检查/etc/vnc.conf, 确保 VNC可以被localhost以外的用户访问.

$ sudo nano /etc/vnc.conf

vnc.conf文件中, 将下面的文本注释掉,或者自己另起一行 :

localhost = “no”;

配置使用 GDM3自动登录 ,如果没有安装,建议安装一下(原话) :

$ sudo nano /etc/gdm3/custom.conf

custom.conf文件中, 取消注释或者添加下面两行:

AutomaticLoginEnable=true
AutomaticLogin=

使用下面两句来使VNC在启动时运行, 一个启动 daemons, 另一个创建了一个 链接到之前创建好的vncserver@.service

$ sudo systemctl daemon-reload 
$ sudo systemctl enable vncserver@1
Created symlink /etc/systemd/system/multi-user.target.wants/vncserver@1.service → /etc/systemd/system/vncserver@.service.

在重启之前可以测试一下vnc的服务是否启动:

$ sudo systemctl start vncserver@1 
$ sudo systemctl enable vncserver@1

相应的,我们也可以通过下面的命令关闭vnc服务和取消启动项

$ sudo systemctl stop vncserver@1 
$ sudo systemctl disable vncserver@1

这里可以参考这个博客的解释:"systemctl mask"和"systemctl disable"有什么区别?

检查是否有错,这里我运行上面两个命令中的第一条报错,但是手动启动vncserver可以成功运行,并且能够正常显示画面。

四、验证

重启nano或者使用上面的start命令启动vnc。可以通过这样的方式链接vnc: 192.168.0.101:1

下面是我连接后的截图,效果还行,但是帧率比较低,建议改低分辨率。
在这里插入图片描述

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值