有线网络
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/networkMAC_ADDR="`cat /sys/class/sunxi_info/sys_info | awk '$1=="sunxi_chipid" {print $3}' | sed 's/../&:/g' | cut -c1-14`"case "$1" instart)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
esacexit $?
- 修改启动文件
/etc/init.d/rc.final
#!/bin/shecho "------run rc.final file-----"
echo "Hello Turing "
amixer cset name="Headphone Switch" 1if [ -e /tmp/private/ ]; then echo "clear private mount info"umount /tmp/private/rm -rf /tmp/privateubiblock -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 startdropbear
}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 菜单中开启如下选项
其中 Compile with optimized assembly code 这一项查资料说要勾选,但是测试中勾选后编译出来的镜像无法完成烧录。所以去掉了勾选,编译后功能正常。
- 在 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 INFOHostKey /etc/ssh/ssh_host_rsa_keyHostKey /etc/ssh/ssh_host_ed25519_key# Authentication:
LoginGraceTime 2m
PermitRootLogin yes
PermitEmptyPasswords yes
StrictModes yes
MaxAuthTries 6
MaxSessions 10
AuthorizedKeysFile .ssh/authorized_keysTCPKeepAlive yesSubsystem 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 客户端进行连接即可