1.问题出现

  首先,我在linux主机上编译好程序,但是每次都要把可执行文件通过filezilla或者scrt拉倒板子中去,十分的麻烦。所以我想到利用makefile中执行shell命令的方法,来实现直接上传文件。

  我看了一些资料,感觉还是对sftp中“服务器”,“客户端”这两个概念不太理解。但是我现在还是知道了如何简便的操作,并且这里我不说服务器和客户端这个名词,免得理解麻烦。

2.问题解决

  1.在我的linux主机上生成ssh key。

ssh-keygen –t rsa

  这里会出现一些问题,一路回车即可,这里我是已经生成过了,所以问我是否覆盖,覆盖即可。

zqh@linux:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/zqh/.ssh/id_rsa):
/home/zqh/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/zqh/.ssh/id_rsa.
Your public key has been saved in /home/zqh/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:QPS0Nbi2WPOmlHBFJgu2OZSA7Lostg87ptwWnfXGP1g zqh@linux
The key's randomart image is:
+---[RSA 2048]----+
| . ..o*.oo=      |
|  o  +.*.*..     |
| .    = +o       |
|  .   .+*        |
| .  . o*S=       |
|.  . o. ++oE     |
|.o  .  ..o+      |
|+=+.    .. o     |
|*+=o        .    |
+----[SHA256]-----+

  2.将linux主机上的公匙上传到arm开发板

zqh@linux:~/.ssh$ cat id_rsa.pub >> authorized_keys    #复制key

  复制key之后将key上传,到arm板的.ssh/文件(这个时候还是问我输入密码)

zqh@linux:~/.ssh$ scp authorized_keys root@172.24.41.12:/root/.ssh
root@172.24.41.12's password:
authorized_keys                                         100%  782     0.8KB/s   00:00

  3.完成

  尝试sftp到arm开发板,发现不需要密码了,那么我现在就可以免密码使用scp直接传文件,非常方便

zqh@linux:~/.ssh$ sftp root@172.24.41.12
Connected to 172.24.41.12.
sftp>

3.Makefile

#General Purpose Makefile for cross compile Linux Kernel module
ifneq ($(KERNELRELEASE),)obj-m := led.o  #+=是连接字符串elseOBJ := led
ARCH := arm
CROSS_COMPILE := /usr/local/arm/arm-linux-gnueabihf-4.9/bin/arm-linux-gnueabihf-
KERN_DIR := /home/zqh/lichee/linux-zero-4.14.y  #选择内核路径
SOURCE := main.c
TARGET := test_led
PWD :=$(shell pwd)   #当前路径
LICHEDIR := /root/led_driver/all:make ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KERN_DIR) M=$(PWD) modules$(CROSS_COMPILE)gcc $(SOURCE) -o $(TARGET)
clean:                                   rm -f *.ko *.o *.symvers *.mod.c *.mod.o *.order .*.o.ko.cmd .*.ko.cmd .*.mod.o.cmd .*.o.cmd $(TARGET)
install:scp $(PWD)/$(OBJ).ko root@172.24.41.12:$(LICHEDIR)scp $(PWD)/$(TARGET) root@172.24.41.12:$(LICHEDIR)
endif

这样,执行make install时就可以自动将我的文件下载到arm开发板中了。

转载于:https://www.cnblogs.com/ZQQH/p/8681783.html

ssh、sftp、scp免密码登录相关推荐

  1. SSH基本原理和免密码登录

    SSH基本原理和免密码登录 SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定:SSH 为建立在应用层和传输层基础上的安全协 ...

  2. [Linux] scp免密码登录

    shell脚本里scp免密码登录(远程scp免输入密码)(从远程机器上拷文件到本地) 一.在本机上 # ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码) sc ...

  3. 使用ssh公钥实现免密码登录

    使用ssh公钥实现免密码登录     ssh 无密码登录要使用公钥与私钥.Linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 有机器A(192.168.1.155), ...

  4. Ubuntu使用ssh公钥实现免密码登录

    ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以Ubuntu为例. 有机器A(10.0.2.1),B(10.0.2.100).现想A通过ssh免密 ...

  5. SSH协议及免密码登录

    一.简述 SSH是一种网络协议,用于计算机之间的加密登录. 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露. 二.公钥加密 ( ...

  6. linux ssh 下实现免密码登录

    1.Linux下生成密钥 ssh-keygen的命令手册,通过"man ssh-keygen"命令: 通过命令"ssh-keygen -t rsa" 生成之后会 ...

  7. ubuntu 安装SSH并设置免密码登录

    cd ~/.ssh/ # 若没有该目录,请先执行一次ssh localhost ssh-keygen -t rsa # 会有提示,都按回车就可以 cat ./id_rsa.pub >> . ...

  8. linux ssh公钥免密码登录

    ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 一.SSH公钥登录原理 在平时工作中我们经常要远程登录服务器,这就要用到SSH ...

  9. centos配置ssh免密码登录后仍要输入密码的解决方法

    From: https://blog.csdn.net/zwbill/article/details/80448939 前言 在搭建Linux集群服务的时候,主服务器需要启动从服务器的服务,如果通过手 ...

最新文章

  1. python能做出什么样的网站_我能用Python做什么?
  2. 推荐系统--基于用户的协同过滤算法
  3. 苹果广告背景音乐大全【转】
  4. 华为鸿蒙发布会新手机,曝华为 P50/Pro 系列最终版确定,6 月 2 日揭晓鸿蒙手机发布时间...
  5. Linux的rsync远程数据同步工具
  6. Asp.NetCoreWebApi入门 - 从零开始新建api项目
  7. 孙正义举债豪购ARM的3个理由:潜伏物联网时代
  8. 作者:刘阳(1988-),男,军事医学科学院放射与辐射医学研究所博士生
  9. goahead 的认证和自定义登陆页面的cookie使用【原创】
  10. 这一次,彻底弄懂 Java 字节码文件!
  11. php出现photo.scr,u盘中了scr病毒怎么办
  12. 各应用市场(安卓)的入口整理:
  13. Win8系统封装、恢复、OEM激活方法
  14. C#类与结构体的区别
  15. 360安全卫士查杀日志位置
  16. 内部披露!最新大厂的薪资和职级一览
  17. 格林函数(Green's function)-- 更新中
  18. 函数 - 计算机函数
  19. java 获取当前月日_Java获取当前时间年月日的方法
  20. java实现冻结/锁定excel表头

热门文章

  1. linux线程同步之互斥锁——linux的关键区域
  2. 87.VGA 88.FPGA
  3. 报Access数据库不存在或者打不开的错误
  4. 语言 提取列名_学习健明老师发布的R语言练习题的学习笔记(二)
  5. 打开虚拟服务器设置,什么样配置的虚拟主机打开网站快
  6. php $globa作用是l,php 关键字global在定义变量中的作用
  7. linux基础知识和命令试题,Linux基础试题及答案
  8. 黑苹果睡眠无法唤醒_电脑睡眠后无法唤醒怎么办?
  9. 008_效果和动画的Callback函数
  10. go 公众号 关注 监听_荐号丨推荐五个适合法学院关注公众号