jetson nano默认已经下载SSH服务,且开机自启动。
1、查看账号与ip
1)看一下nano的账号名和ip:
账号名:nvidia
ip:192.168.1.133
2)看一下虚拟机的账号名和ip:
账号名:crj
ip:192.168.1.124
2、SSH远程登陆
A想要远程连接B,则A是客户端,B是服务器。
1)虚拟机 远程登陆 nano:
在虚拟机终端执行:
ssh nvidia@192.168.1.133
2)nano 远程登陆 虚拟机 :
在nano终端执行:
ssh crj@192.168.1.124
3、SSH 数据传输
参考:Introduction · Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程 8.5.3
前提:在虚拟机上,可以成功实现ssh远程登录 nano(不是非得真ssh连接后才可文件传输哈!)
上传文件(从虚拟机拷贝到nano):
scp [本地文件路径] [nano账号]@[nanoip]:[nano路径]
上传文件夹(从虚拟机拷贝到nano):
scp -r [本地文件夹路径] [nano账号]@[nanoip]:[nano路径]
下载文件(从nano拷贝到虚拟机):
scp [nano账号]@[nanoip]:[nano路径] [本地文件路径]
下载文件夹(从nano拷贝到虚拟机):
scp -r [nano账号]@[nanoip]:[nano路径] [本地文件夹路径]
4、SSH 免密码登陆(未尝试)
参考:Introduction · Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程 8.5.3
视频:【赵虚左】《ROS理论与实践》第8、9章–ROS机器人操作系统_哔哩哔哩_bilibili
使用优化
每次登陆 jetson nano 时,都需要输入密码,使用不方便,可以借助密钥简化登陆过程,实现免密登陆,提高操作效率,实现思想是:生成一对公钥私钥,私钥存储在本地,公钥上传至服务器,每次登陆时,本地直接上传私钥到服务器,服务器有匹配的公钥就认为是合法用户,直接创建SSH连接即可。
具体实现步骤只有两步:
- 本地生成密钥对
- 将公钥上传至nano
1.本地生成密钥对
本地客户端生成公私钥:(一路回车默认即可)
ssh-keygen
上面这个命令会在用户目录 ~/.ssh 文件夹下创建公私钥:
- id_rsa (私钥)
- id_rsa.pub (公钥)
2.将公钥上传至nano
上传命令:
ssh-copy-id -i ~/.ssh/id_rsa.pub nano账号@nanoip
上面这条命令是写到服务器上的ssh目录下,该目录下有文件authorized_keys保存了公钥内容。
以后再登陆 nano 就无需录入密码了。
文章出处登录后可见!
已经登录?立即刷新