当前位置: 首页 > news >正文

(四)配置有线网口、SSH登陆、文件传输以及运行交叉编译程序测试

文章目录

  • 配置有线网口
    • 原因自动分配不行
    • 第一步 设置前先停止网络接口
    • 第二步 手动分配ip
    • 第三步 使配置的网口ip永久生效
    • 第四步 测试一下网络是否通了
  • SSH登陆
  • 文件传输以及运行交叉编译程序测试
    • 第一种借助基于SSH的命令行工具SCP传输文件
    • 第二种借助基于MobaXterm 软件直接上传
    • 测试


配置有线网口

原因自动分配不行

由于该开发板 没有 wifi模块,因此只能通过有线的网口和主机连接,进行上网。

板子网口配置信息:

评估板配备 1 个千兆网口 ETH0(RGMII)和 1 个百兆网口 ETH1(USB1)。

当插入网线(用的是TEH0(RGMI)接口)时,发现并不能直接自动的分配ip进行上网,需要我们进行配置ip。

请添加图片描述
请添加图片描述

执行指令,udhcpc,网口自动获取和更新网络接口的IP地址和其他网络配置信息,如子网掩码、默认网关、DNS服务器等。 -i eth0 是指定网口是eth0 网口 也可以不指定。

udhcpc -i eth0  

发现还是不能自动获取,一直卡死在sending discover这边
请添加图片描述
请添加图片描述


第一步 设置前先停止网络接口

指令:

ifconfig eth0 down

看到eth0 已经停止:

请添加图片描述


第二步 手动分配ip

这里我直接将eth0,eth1手动分配ip并且设置成静态的IP(用哪个网口就将网口ip设置成与电脑主机同一网段即可,其实这里应该是和路由器在同一网段,我这里因为是和电脑网口接在一起的,就说的是和电脑同一网段)。

主机的ip是:192.168.1.100,因此就是192.168.1.xxx网段,也就是路由器同一网段。

指令:

ifconfig eth0 192.168.1.101 netmask 255.255.255.0 broadcast 192.168.1.255
route add default gateway 192.168.1.1

请添加图片描述

指令 ifconfig eth0 192.168.1.101 netmask 255.255.255.0 broadcast 192.168.1.255 用于手动设置网口(网络接口)eth0 的 IP 地址配置。这条命令的具体作用如下:

(1) eth0:指定要配置的网络接口名称。不同的系统可能会有不同的接口名称,比如 eth1, wlan0, ens33 等。192.168.1.101:这是为 eth0 接口分配的静态 IP 地址。

(2) netmask 255.255.255.0:设置子网掩码,它定义了IP地址中哪一部分是网络地址,哪一部分是主机地址。

在这个例子中,255.255.255.0 表示前24位是网络地址,后8位是主机地址。

(3) broadcast 192.168.1.255:指定了广播地址,该地址用于向整个子网内的所有设备发送信息

指令route add default gateway 192.168.1.1是设计默认网关,这里因为ifconfig 不识别 gateway 参数。要设置默认网关,需要使用 route 或者更现代的 ip 命令。


执行完上面命令时,它会立即生效,并且不需要重启网络服务或计算机。
然而,请注意,这种配置通常只在当前会话有效,也就是说,一旦系统重启,这些设置将会丢失。要不然就用一次设置一次如果你希望永久保存这些设置,你需要编辑相关的网络配置文件,或者使用图形界面中的网络设置工具(如nmcli)来配置静态 IP 地址。但是此板子不支持nmcli配置工具。

这里是直接通过修改网络接口配置文件(如 /etc/network/interfaces 或 /etc/sysconfig/network-scripts/ifcfg-eth0)来使这些设置永久化,这款板子是修改文件:/etc/network/interfaces 来完成永久配置的。


第三步 使配置的网口ip永久生效

继续第二步,输入指令:

vi /etc/network/interfaces

看到如下内容:

请添加图片描述
这里我只用了eth0,只修改eth0部分内容如下:

auto eth0
iface eth0 inet staticaddress 192.168.1.101netmask 255.255.255.0broadcast 192.168.1.255gateway 192.168.1.1

请添加图片描述

退出保存,重启板子,可以发现设置的静态网口ip已生效:

请添加图片描述

再设置一下DNS服务器,亲测可以不用管,不设置,前面操作就可以了.

vi /etc/resolv.conf

添加内容:

nameserver 8.8.8.8

最后重启板子,以上操作成功永久的设置静态的网口ip.


第四步 测试一下网络是否通了

板子ip:192.168.1.101
主机ip:192.168.1.100

板子ping主机:

请添加图片描述

主机ping板子:

请添加图片描述
至此有线网络配置成功.


SSH登陆

板子默认已经安装SSH服务器了,没有安装的可以自行安装.

打开MobaXterm,和Serial串口登陆类似.

在这里插入图片描述

在这里插入图片描述

此时SSH登陆成功可以放心大胆的拔掉Type-c----USB接口了.


文件传输以及运行交叉编译程序测试

第一种借助基于SSH的命令行工具SCP传输文件

scp(Secure Copy Protocol)是一个基于 SSH 的命令行工具,用于在本地计算机和远程主机之间或者两个远程主机之间安全地复制文件。它使用 SSH 协议进行数据传输,并且继承了 SSH 的认证方式和安全性。

如何使用:

第一种:本地主机向远程主机发送文件:

scp  /path/to/local/file  username@192.168.1.101:/path/to/remote/directory/

第二种:从远程主机下载文件到本地主机:

scp  username@192.168.1.101:/path/to/remote/file  /path/to/local/directory/

如果要是文件夹可以使用:

scp -r /path/to/local/directory username@192.168.1.101:/path/to/remote/directory/
scp -r username@192.168.1.101:/path/to/remote/file  /path/to/local/directory/

如果要指定端口号:

scp -P 22  /path/to/local/file username@192.168.1.101:/path/to/remote/directory/

现向板子传输之前交叉编译arm架构的可执行文件a.out,指令:

 scp ./a.out  root@192.168.1.101:/root

第一次传输 可能会出现以下提示,输入yes即可:

请添加图片描述


第二种借助基于MobaXterm 软件直接上传

先将交叉编译生成的a.out可执行文件放到samba共享文件夹里面,再放到windows其他目录(我放在D盘下面了),最后直接上传到板子root工作目录下.

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

注意通过这种方式上传来的可执行文件限权不足,因此要加可执行的权限.

chmod 0777 a.out

或者:

chmod +x a.out

这里文件权限为什么是0777,为什么是+x ,可以百度了解一下

在这里插入图片描述

在这里插入图片描述

推荐用scp指令传输哈!


测试

传输成功,执行a.out,如图:

在这里插入图片描述

一般嵌入式开发都是采取交叉编译生成可执行文件放到板子上直接运行的.当然,如果要做成产品,那必然少不了开机自启动,因此必须学会这一系列的此操作哈.

相关文章:

(四)配置有线网口、SSH登陆、文件传输以及运行交叉编译程序测试

文章目录 配置有线网口原因自动分配不行第一步 设置前先停止网络接口第二步 手动分配ip第三步 使配置的网口ip永久生效第四步 测试一下网络是否通了 SSH登陆文件传输以及运行交叉编译程序测试第一种借助基于SSH的命令行工具SCP传输文件第二种借助基于MobaXterm 软件直接上传测试…...

离线的方式:往Maven的本地仓库里安装依赖

jar文件及源码的绝对路径,gav坐标,打包方式,Maven本地仓库的路径 mvn install:install-file ^-DfileD:\hello-spring-boot-starter-1.0-SNAPSHOT.jar ^-DsourcesD:\hello-spring-boot-starter-1.0-SNAPSHOT-sources.jar ^-DgroupIdcom.examp…...

《深入浅出HTTPS​​​​​​​​​​​​​​​​​》读书笔记(22):密钥协商算法

《深入浅出HTTPS​​​​​​​​​​》读书笔记(22):密钥协商算法 密钥的管理和分配是个难题,尤其是生成一个动态密钥更难,而密钥协商算法就可以解决密钥分配、存储、传输等问题。 在网络通信中,为了加密…...

kubernetes学习-Service

kubernetes学习-Service 1. Service说明2. 功能3.Service类型3.1 NodePort3.1.1 创建web-service.yaml3.1.2 创建web-pod.yaml3.1.3 部署3.1.4 验证 3.2 ClusterIP3.2.1 创建web-clusterIp-service.yaml3.2.2 创建web-clusterIp-pod.yaml3.2.3 部署3.2.4 验证 3.3 LoadBalancer…...

Springcloud项目-前后端联调(一)

项目采用SpringCloud整体构建,nacos作为注册中心,Mysql和Redis进行数据存储,整体项目类似于平时使用的出行APP,idea2023编写后端,vscode编写前端 后端代码先前已经编写完毕 这部分功能主要是通过前端输入出发地和目的地之后调用…...

洛谷P1525 [NOIP2010 提高组] 关押罪犯(种子并查集基础)

题目链接:P1525 [NOIP2010 提高组] 关押罪犯 - 洛谷 | 计算机科学教育新生态 题目难度:普及+/提高 题目描述: S 城现有两座监狱,一共关押着 N 名罪犯,编号分别为 1∼N,有m对罪犯,每对之间有仇恨值,问如何分配罪犯使得现 Z 市长要看到其中最大的矛盾值最小。 输入格…...

【算法刷题指南】模拟

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站 🌈个人主页: 南桥几晴秋 🌈C专栏: 南桥谈C 🌈C语言专栏: C语言学习系…...

学习笔记078——Java Properties类使用详解

文章目录 概述常见方法写入读取遍历 概述 Properties 继承于 Hashtable。表示一个持久的属性集,属性列表以key-value的形式存在,key和value都是字符串。 Properties 类被许多Java类使用。例如,在获取环境变量时它就作为System.getPropertie…...

若依使用 Undertow 替代 Tomcat 容器

文章目录 需求提出应用场景解决思路注意事项完整代码第一步:在 ruoyi-framework/pom.xml 文件中进行依赖配置第二步:修改 application.yml 配置文件第三步:修改文件上传工具类 FileUploadUtils.java 运行结果 需求提出 在开发若依框架的前后…...

多输入多输出 | Matlab实现WOA-CNN鲸鱼算法优化卷积神经网络多输入多输出预测

多输入多输出 | Matlab实现WOA-CNN鲸鱼算法优化卷积神经网络多输入多输出预测 目录 多输入多输出 | Matlab实现WOA-CNN鲸鱼算法优化卷积神经网络多输入多输出预测预测效果基本介绍模型背景程序设计参考资料 预测效果 基本介绍 Matlab实现WOA-CNN鲸鱼算法优化卷积神经网络多输入…...

Elasticsearch:基础概念

一、什么是Elasticsearch Elasticsearch是基于 Apache Lucene 构建的分布式搜索和分析引擎、可扩展数据存储和矢量数据库。它针对生产规模工作负载的速度和相关性进行了优化。使用 Elasticsearch 可以近乎实时地搜索、索引、存储和分析各种形状和大小的数据。Elasticsearch 是…...

Spring MVC的@ResponseBody与@RequestBody

ResponseBody注解用于将Controller的方法返回的对象,通过springmvc提供的HttpMessageConverter接口转换为指定格式的数据如:json,xml等,通过Response响应给客户端。 RequestBody注解用于读取http请求的内容(字符串),通过springmv…...

智能商业分析 Quick BI

Quick BI 是阿里云提供的一款智能商业分析(BI)工具,旨在帮助企业快速获取业务洞察、优化决策过程、提升数据分析效率。通过强大的数据可视化和分析功能,Quick BI 能够帮助用户轻松连接多种数据源、创建多维度的报表和仪表盘&#…...

LUA基础语法

目录 变量篇 算数运算符 条件分支语句与循环语句 函数 表 Table 全局变量与本地变量 协程 元表 面向对象(封装,继承,多态) 常用自带库 垃圾回收 变量篇 print("hello") print("lua") --注释 --[[…...

SpringBoot的pom.xml文件中,scope标签有几种配置?

1.compile(默认) 含义:表示该依赖在项目的所有阶段(编译、测试、运行)都需要。 当你依赖一个库,并且这个库是你项目的核心部分,比如 Spring Boot 的spring - boot - starter - web&#xff0c…...

Leetcode729: 我的日程安排表 I

题目描述: 实现一个 MyCalendar 类来存放你的日程安排。如果要添加的日程安排不会造成 重复预订 ,则可以存储这个新的日程安排。 当两个日程安排有一些时间上的交叉时(例如两个日程安排都在同一时间内),就会产生 重复…...

青少年编程与数学 02-006 前端开发框架VUE 02课题、创建工程

青少年编程与数学 02-006 前端开发框架VUE 02课题、创建工程 一、开发环境(一)WebStorm安装WebStorm配置WebStorm安装中文语言包安装 Translation插件 (二)Node.jsWindows系统安装Node.jsLinux系统安装Node.jsNode.js与Vue.js的关…...

Redis的生态系统和社区支持

Redis的生态系统和社区支持 1. Redis 生态系统 1.1 Redis核心 Redis 是一个高性能的内存存储系统,支持丰富的数据结构(如字符串、列表、集合、哈希和有序集合)。它的核心提供了: 高性能数据存储:单线程模型支持每秒数百万级别的操作。多种数据结构:适用于多样化场景,如…...

Tomcat解析

架构图 核心功能 Tomcat是Apache开源的轻量级Java ServletServlet容器,其中一个Server(Tomcat实例)可以管理多个Service(服务),一个Service包含多个Connector和一个Engine,负责管理请求到应用的…...

UML之组合与聚合

关联和链接关系在很多情况下是对称的,即被关联的两个类都有以自己为源端对方为目标端的角色存在,而且角色与源端类的属性是等价的,即在关联一端的关联端(角色)等价于另外一端的属性。例如,在下图中&#xf…...

挑战杯推荐项目

“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 ​ - 个性化梦境…...

golang循环变量捕获问题​​

在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下: 问题背景 看这个代码片段: fo…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes&#xff0…...

python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

LLM基础1_语言模型如何处理文本

基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...

12.找到字符串中所有字母异位词

🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...

Java + Spring Boot + Mybatis 实现批量插入

在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法&#xff1a;使用 MyBatis 的 <foreach> 标签和批处理模式&#xff08;ExecutorType.BATCH&#xff09;。 方法一&#xff1a;使用 XML 的 <foreach> 标签&#xff…...