(四)配置有线网口、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,…...
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之组合与聚合
关联和链接关系在很多情况下是对称的,即被关联的两个类都有以自己为源端对方为目标端的角色存在,而且角色与源端类的属性是等价的,即在关联一端的关联端(角色)等价于另外一端的属性。例如,在下图中…...
使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...
大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...
逻辑回归:给不确定性划界的分类大师
想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
