Tina-Linux -- 5. 网络通信(有线网络,无线网络,SSH链接)

news2025/2/23 3:25:54

有线网络

bash 指令

ifconfig eth0 192.168.2.222 netmask 255.255.255.0 up
route add default gw 192.168.2.1

开机自启

  • 修改网络设置文件 /etc/init.d/S40network
#!/bin/sh
#
# Start the network....
#

# Debian ifupdown needs the /run/network lock directory
mkdir -p /run/network

MAC_ADDR="`cat /sys/class/sunxi_info/sys_info | awk '$1=="sunxi_chipid" {print $3}' | sed 's/../&:/g' | cut -c1-14`"

case "$1" in
  start)
	printf "Starting network: "
	/sbin/ifup -a
	/sbin/ifconfig lo up
	/sbin/ifconfig eth0 up
	[ $? = 0 ] && echo "OK" || echo "FAIL"
	/sbin/ifconfig eth0 hw ether "00:$MAC_ADDR"
	udhcpc -b -R &
	[ $? = 0 ] && echo static || echo stop
	;;
  static)
	printf "network Static Setting: "
        /sbin/ifconfig eth0 192.168.2.222 netmask 255.255.255.0 up
	/sbin/route add default gw 192.168.2.1
        [ $? = 0 ] && echo "OK" || echo "FAIL"
        ;;
  stop)
	printf "Stopping network: "
	/sbin/ifdown -a
	[ $? = 0 ] && echo "OK" || echo "FAIL"
	;;
  restart|reload)
	"$0" stop
	"$0" start
	;;
  *)
	echo "Usage: $0 {start|stop|restart}"
	exit 1
esac

exit $?


  • 修改启动文件/etc/init.d/rc.final
#!/bin/sh

echo "------run rc.final file-----"
echo "Hello Turing "
amixer cset name="Headphone Switch" 1

if [ -e /tmp/private/ ]; then 
	echo "clear private mount info"
	umount /tmp/private/
	rm -rf /tmp/private
	ubiblock -r /dev/by-name/private
fi
network_start()
{
        echo "network start:"
        /etc/init.d/S40network start
}

wifi_connect()
{
        echo "wifi connect:"
        wifi_connect_ap_test ChinaNet-guo 17388753767
}

sshd_start()
{
        echo "sshd start:"
        /etc/init.d/dropbear start
	dropbear
}

network_start
wifi_connect
sshd_start

无线网络

指令

~: wifi_connect_ap_test ChinaNet-guo 173887*****

SSH 链接

韦东山提供的固件内没有开启 SSH,需要开启配置后编译。但是正常编译会因为 openssl 版本问题导致无法正常工作。
有两种解决方案:

  • openssl 版本回退
  • 使用 Dropbear 进行 SSH 链接

openssl 版本回退

ubuntu 18.0.4 版本内置 openssl 版本为 1.1.1,需要进行版本回退到 1.1.0,然后重新编译。下面是整个过程

版本回退

  • 查看所有版本 apt-cache madison openssl
  • 查看版本详细信息apt-cache policy openssl
  • 安装指定版本sudo apt install openssl=1.1.0g-2ubuntu4

openssh 开启

  • 环境设置
~: source build/envsetup.sh
~: lunch 4
~: make menuconfig
  • 在 menuconfig 菜单中开启如下选项

image.png
其中 Compile with optimized assembly code 这一项查资料说要勾选,但是测试中勾选后编译出来的镜像无法完成烧录。所以去掉了勾选,编译后功能正常。

(0{2CWRXJ6%6O9WGMNVVBM3.png

  • 在 TinaSDK 根目录删除 out 文件夹,然后编译

测试

编译后烧录到开发板测试。

  • 启动 eth0 ifconfig eth0 192.168.2.222 up,启动后测试网络是否 ping 通
  • 配置 ssh
rm -rf /etc/ssh/sshd_config
vim /etc/ssh/sshd_config

输入以下配置:
Port 22

# Logging
SyslogFacility AUTH
LogLevel INFO


HostKey /etc/ssh/ssh_host_rsa_key

HostKey /etc/ssh/ssh_host_ed25519_key

# Authentication:
LoginGraceTime 2m
PermitRootLogin yes
PermitEmptyPasswords yes
StrictModes yes
MaxAuthTries 6
MaxSessions 10
AuthorizedKeysFile      .ssh/authorized_keys

TCPKeepAlive yes

Subsystem       sftp    /usr/lib/sftp-server

  • 启动 ssh
cd /etc/init.d/
./sshd start
  • 报错处理 Privilege separation user sshd does not exist
vi /etc/passwd

在末尾添加一行:
sshd:x:109:65534::/var/run/sshd:/usr/sbin/nologin
  • 报错处理 procd_add_mdns
vim /etc/init.d/sshd

注释掉如下代码:
#procd_add_mdns “ssh” “tcp” “$lport”

  • 启动 ssh
cd /etc/init.d/
./sshd start

Dropbear 链接

开启 Dropbear

~: make menuconfig

->base System
  ->dropbear

测试

  • 编译后烧录到开发板
  • 进入到/etc/init 执行指令./dropbear start
  • 执行指令 dropbear
  • 使用 ssh 客户端进行连接即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1689796.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

明天(周六)下午!武汉Linux爱好者线下沙龙,我们在华中科技大学等你!

2024 年 5月 25 日(周六)下午,我们将在「武汉市洪山区」 珞喻路 1037 号华中科技大学南五楼 613 室举办武汉 Linux 爱好者线下沙龙(WHLUG),欢迎广大 Linux 爱好者来到现场,与我们一同交流技术&a…

flutter开发实战-flutter播放PAG动画

flutter开发实战-flutter播放PAG动画 最近开发过程中,遇到了PAG动画,这里进行记录一下。 一、什么是PAG? 官网:https://pag.art/ Portable Animated Graphics 是一套完整的动效工作流解决方案。 目标是降低或消除动效相关的研…

【小tips】当机器里面有多个版本的gcc时,该如何切换当前的gcc版本?

背景切换gcc版本 背景 有时候因为项目需求,可能不同的项目需要不同的gcc版本,所以机器上会安装多个版本的gcc,那我们如何切换到想要使用的版本? 切换gcc版本 比如我的机器上有两个版本的gcc: 我当前的版本是gcc-4…

【C++提高编程-03】----C++之STL常用容器基础实战

🎩 欢迎来到技术探索的奇幻世界👨‍💻 📜 个人主页:一伦明悦-CSDN博客 ✍🏻 作者简介: C软件开发、Python机器学习爱好者 🗣️ 互动与支持:💬评论 &…

智简云携手云器Lakehouse打造一体化大数据平台,释放数据价值

导读 本篇分享的是智简云使用云器Lakehouse升级数据平台的实践总结。 智简云,是一家拥有十余年历史的科技公司,专注于企业服务领域,开发了两款核心产品:基于PASS平台的客户关系管理(CRM)系统和为中小型用…

加密与解密(第四版)】第二十三章笔记

第二十三章 代码的二次开发 23.1 数据对齐 23.2 增加空间 利用区块空隙(注意区块属性) 增加区块(增加一个块头、增加块头指向的数据段、调整文件映像的尺寸(SizeOfImage)) 23.3 获得函数的调用信息 修…

用Python的PyAutoGUI库控制鼠标滚轮

哈喽,大家好,我是木头左! 轻松上手:安装与导入 要开始使用pyautogui库,你需要做的第一件事就是确保它已经被安装在你的Python环境中。你可以通过运行以下命令来安装: pip install pyautogui安装完成后&am…

【Web】CISCN 2024初赛 题解(全)

目录 Simple_php easycms easycms_revenge ezjava mossfern sanic Simple_php 用php -r进行php代码执行 因为ban了引号,考虑hex2bin,将数字转为字符串 php -r eval(hex2bin(16进制)); 注意下面这段报错,因为加不了引号,开…

稳定性大升级!EMCS全球服务网络携手NineData实现数据实时同步

易客满(ECMS Express)专注于提供全球化的国际物流解决方案和经济快递服务,服务网络覆盖全球主要贸易市场的国际物流公司。ECMS拥有国际快递、国际货代、仓储供应链全球覆盖服务能力。 1. 易客满(ECMS)数据复制的技术挑…

初始Java篇(JavaSE基础语法)—— 内部类

找往期文章包括但不限于本期文章中不懂的知识点: 个人主页:我要学编程(ಥ_ಥ)-CSDN博客 所属专栏:JavaSE 目录 内部类的概念 内部类的种类 使用举例: 1. 静态内部类: 2. 实例内部类 3. 局部内部类 4. 匿名内部…

跨境电商赛道,云手机到底能不能化繁为简?

当下国内电商背景: 从零售额的数据来看:随着互联网的普及和消费者购物习惯的改变,国内电商市场规模持续扩大。据相关数据显示,网络消费亮点纷呈,一季度全国网上零售额达到了3.3万亿元,同比增长12.4%。这表…

linux 上除了shell、python脚本以外,还有什么脚本语言用得比较多?

在开始前我有一些资料,是我根据网友给的问题精心整理了一份「 Linux的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!说到在 Linux下的编程&#xf…

TECHNIUM INTERNATIONAL: 利用 AI 和 TECHNIUM 矩阵协议引领区块链创新

在充满活力的加密货币和区块链技术领域,Technium International 以领军者的姿态迅速崛起,跻身科技巨头的顶尖行列。Technium International 成立于 2018 年,总部设于塞席尔,透过人工智慧(AI)和区块链技术的…

云计算-基础设施和管理机制(Infrastructure and Management Mechanisms)

逻辑网络边界(Logical Network Perimeter) 逻辑网络边界是软件控制的虚拟网络,它是物理网络的一部分。其主要思想是隔离逻辑网络,防止不希望的访问,同时仍然为合法用户提供访问权限。下图显示了云系统中一个简单的逻辑…

Windws MySQL 8.4 LTS的安装(保姆级教程)

Windws MySQL 8.4 LTS的安装(保姆级教程) 一、Mysql版本二、Mysql下载三、Mysql安装3.1 Mysql安装3.2 Mysql配置 四、Mysql环境变量配置五、验证Mysql 一、Mysql版本 美国时间 2024 年 4 月 30 日,Oracle正式发布了MySQL数据库8.0.37版本的更…

初步学习pygame,使用pygame搭建简单的窗口效果

在VSCode上使用pygame 第一步:创建 Python 虚拟环境 打开 VSCode 中的 Terminal(在菜单栏中选择 View > Terminal)使用 cd 命令切换到你的项目文件夹输入以下命令来创建一个新的虚拟环境: python3 -m venv env这将在你的项目…

机械臂与Realsense D435 相机的手眼标定ROS包

本教程主要介绍机械臂与 Realsense D435 相机手眼标定的配置及方法。 系统:Ubuntu 20.0.4 ◼ ROS:Noetic ◼ OpenCV 库:OpenCV 4.2.0 ◼ Realsense D435:librealsense sdk(2.50.0)、realsense-ros 功能包&…

electron调试自动更新,不触发下载进度解决方案

调试时候删除掉后缀是.blockmap的文件。如果你的代码在改动不大的情况下发布一个新版本。那个安装器可能会根据这个数据自动合成一个包,而不走网络路径。从而不触发下载进度。

初阶数据结构之双向链表详解

目录 一:双向链表的概念 1.什么是双向链表? 2.双向链表的优点 3.双向链表的结构 二:双向链表的实现 1.定义链表结点 2.初始化双向链表 3.添加结点 4.尾插 5.头插 6.打印双向链表 7.查找链表结点 8.在指定结点后插入新结点 9.删…

KMP算法【C++】

KMP算法测试 KMP 算法详解 根据解释写出对应的C代码进行测试&#xff0c;也可以再整理成一个函数 #include <iostream> #include <vector>class KMP { private:std::string m_pat;//被匹配的字符串std::vector<std::vector<int>> m_dp;//状态二维数组…