2.4远程控制和调试

无线远程调试的方法有很多,下面我分享几种:

SSH连接

在同一局域网下,ssh可以连接Windows和Linux,也可以连接Linux和Linux,从而控制对方的终端及数据传输。

Windows设置SSH:

打开“设置”,选择“应用”>“应用和功能”,然后选择“可选功能” 。

扫描列表,查看是否已安装 OpenSSH。 如果未安装,请在页面顶部选择“添加功能”,然后:

查找“OpenSSH 客户端”,再单击“安装”

查找“OpenSSH 服务器”,再单击“安装”

设置完成后,回到“应用”>“应用和功能”和“可选功能”,你应会看到已列出 OpenSSH 。

Linux安装SSH命令:

sudo apt-get install sshd
sudo apt-get install openssh-server

在终端输入  ifconfig   查看ip地址 

SSH连接命令为:

ssh  用户名@主机名  

或者   ssh  用户名@IP地址 
例如:
 ssh  vision@vision-jqr1        
 ssh  vision@192.168.1.112  

要退出对方的终端,输入 exit  就可以退出

如果使用主机名来连接,建议将对方的主机名更改得好记一点,或者到路由器的登录网页查看对应的主机名。

SSH每次连接都需要密码,不方便,免输入密码的方法:

1.生成本地密钥对

本地计算机命令: ssh-keygen     连续回车默认

2.公钥上传

将本地密钥对上传到对方的系统保存

  (1)ubuntu系统ssh连接ubuntu系统上传命令:

ssh-copy-id -i ~/.ssh/id_rsa.pub 账号@ip

  (2)windows系统ssh连接ubuntu系统上传命令:

cat ~/.ssh/id_rsa.pub | ssh 账号@ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

SSH可视化

ssh  -Y 用户名@IP地址 

加参数-Y,这样在终端运行命令就可以查看对方的图片,视频等东西

如何要使用对方的文件系统,远程连接后,终端输入  nautilus 即可打开对方的文件系统,修改文件

SSH传输文件


注意:命令在主机的终端运行,注意传输者和被传输者的关系,注意在哪个终端执行命令

背公式:复制 什么文件 到对方主机 的什么路径

scp <本地文件路径> <用户名>@<Linux机IP地址>: 路径

 复制 Windows 文件到 Linux 主目录

scp D:\ws\666.txt  vision@192.168.1.109:~
或者: scp D:\ws\666.txt  vision@vision-jqr2:~
复制文件夹、目录要加 -r 参数
scp -r D:\ws  vision@vision-jqr1:~

复制 Linux 文件到 Windows,在windows终端执行
scp vision@192.168.1.109:~/555.txt  D:\ws
复制 Linux 目录到 Windows(记得加 -r)
scp -r  vision@192.168.1.109:var/apt/   D:\ws

 复制 Linux 文件夹到 Linux ,同理

scp -r /path/ username@remote:/path/

终端调参

ssh连接后,可以控制对方的终端,那么我们就可以无线调参了。

退出脚本      ./killrun.sh
停止运行代码        pkill Vision_MY_new

注意用户名及路径:

使用vim文本编辑, 进入文件修改代码
vim /home/Vision/Vision_MY_new/Vision_MY_new/Slove/Angle.cpp
写代码: 按 i   写完按Esc   输入:和wq, 保存退出 

编译命令:
cd /home/Vision/Vision_MY_new/build-Vision_MY_new-Desktop_Qt_5_14_2_GCC_64bit-Debug/
make clean && make -j   
运行命令: 
bash -c "./Vision_MY_new; exec bash;"         //直接运行,不显示图像

如果Jetson的开发板NX,TX2, nano等不方便关机或者重启,使用ssh连接控制其终端,然后输入  sudo  reboot 进行重启等

VNC远程连接

远程控制的时候,保证双方都连同一个WIFI,即双方都在同一个局域网内

客户端 (使用的计算机)

服务端(被控制的计算机)

在被控制的ubuntu22安装所需环境(服务端)

ubuntu系统设置 ,共享 ,远程登录开启 ,远程桌面开启。其中,需要打开远程控制开关,并设置用户名和密码

安装桌面环境所需的软件包,包括系统面板、窗口管理器、文件浏览器、终端等桌面应用程序

sudo apt install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal ubuntu-desktop  gnome-session

安装 TightVNC 服务

sudo apt install tightvncserver

通过 vncserver 命令启动 VNC 服务

vncserver

系统将提示设置密码:(密码的长度必须介于六到八个字符之间)

验证密码:再输入一次设置的密码

OutputWould you like to enter a view-only password (y/n)?

密码仅供查看,不不不,所以输入 n

配置 xstartup 配置文件

在配置 xstartup 配置文件时,可以使用不同的窗口管理器和桌面环境。本教程使用的是 GNOME Flashback 桌面环境和 metacity 窗口管理器。如果希望使用其他的桌面环境和窗口管理器,需要相应地修改 xstartup 配置文件。

备份VNC的xstartup配置文件。

cp ~/.vnc/xstartup ~/.vnc/xstartup.bak

修改VNC的xstartup配置文件。

gedit ~/.vnc/xstartup

复制以下内容到文件下面

#!/bin/sh

export XKL_XMODMAP_DISABLE=1

export XDG_CURRENT_DESKTOP="GNOME-Flashback:GNOME"

export XDG_MENU_PREFIX="gnome-flashback-"

gnome-session --session=gnome-flashback-metacity --disable-acceleration-check

保存退出

 chmod 777 ~/.vnc/xstartup

输入下面命令重新启动 VNC。

vncserver -geometry 1920x1080 :1 -localhost no

geometry 选项指定窗口大小,localhost 选项设为 no 以开放连接。

关闭vnc再重新启动

vncserver -kill :1

vncserver  :1

查看vnc端口情况

ps -ef | grep vnc

netstat -tuln | grep 5901

 如果远程连接没有出现屏幕,或者是灰色的,不正常的,是 gedit   ~/.vnc/xstartup 里面的配置造成的,上网解决,修改里面的参数

Ubuntu22远程控制ubuntu22

如果用的是ubuntu系统作为客户端,需要开启

系统设置 ,共享 ,远程登录开启 ,远程桌面开启

下载VNC客户端:

Download VNC Viewer | VNC® Connect

安装:sudo apt install ./VNC-Viewer-7.10.0-Linux-x64.deb

然后打开应用程序。选择使用VNC不要登录

打开VNC Viewer,在顶部菜单栏,选择File > New connection...。

在Properties对话框,配置Ubuntu桌面的登录信息,然后单击OK。

必须的配置项说明:

VNC Server:输入IP地址:端口号,例如:192.168.1.1:5901。

这里建议直接输入IP地址就行,暂时不用端口号

Name:输入自定义的Ubuntu桌面的名称。例如:test001。

双击Ubuntu桌面的卡片。

在Authentication对话框的Password文本框中,输入VNC登录密码,然后单击OK。

windows远程控制ubuntu22

通过VNC搭建Ubuntu 18 04和20 04图形界面_轻量应用服务器(SAS)-阿里云帮助中心

你喜欢的客户端连接到 VNC 服务器,我这里用的是 RealVNC 的 VNC Viewer。

下载:  Download VNC Viewer | VNC® Connect

与上面的使用方法同理,输入对应的 IP:端口 回车即可连接。

静态IP

因为IP地址是DHCP服务动态分配的,有可能每次都不一样,所以用IP地址来连接的话建议将对方的IP地址设为静态IP地址

有时候我们并不知道对方的IP地址,因为IP地址是动态分配的,所以要设置静态ip

查看网络情况以及网卡名,记下来,后续用到

ifconfig 
#输出示例(查看flags=4163前面的,这里wlp1s0是网卡名),192.168.5.45是ip地址

wlp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.5.45  netmask 255.255.255.0  broadcast 192.168.5.255
        inet6 fe80::6585:ea3f:6f47:8805  prefixlen 64  scopeid 0x20<link>
        ether 14:5a:fc:22:2d:03  txqueuelen 1000  (以太网)
        RX packets 78495  bytes 28153235 (28.1 MB)
        RX errors 0  dropped 638  overruns 0  frame 0
        TX packets 52717  bytes 19287110 (19.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

执行ip route 查看网关

# 进入网络配置目录
cd /etc/netplan
# 查看网络配置文件
ll
# 如果已有manger文件先备份
sudo cp 01-network-manager-all.yaml 01-network-manager-all.yaml.bak

修改配置文件,替换

sudo gedit 01-network-manager-all.yaml

填充以下配置
配置文件主要包含网卡名、DHCP配置、静态IP、网关、DNS,自己根据路由器或者虚拟机的NAT网络指定即可
需要注意的是,如果是在VMware虚拟机环境下,默认网关是192.168..2,而不是192.168..1

network:
  ethernets:
    wlp1s0:     # 网卡名
      dhcp4: no # 关闭IPV4 DHCP
      dhcp6: no # 关闭IPV6 DHCP
      addresses:
        - 192.168.5.45/24    # IP
      routes:
        - to: default
          via: 192.168.5.1  # 网关
      nameservers:            # DNS
        addresses:
          - 114.114.114.114
          - 8.8.8.8
  version: 2

应用设置

sudo netplan apply

 如果出现红色报错,再执行一次sudo netplan apply

查看设置情况
# 查看网络
ifconfig
# ping测试
ping baidu.com

如果需要给配置个service,让它可以开机自启动

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT小艺

如果文章对你有用,请我喝咖啡吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值