在OpenHarmony中使用busybox

Posted qq_17814753

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在OpenHarmony中使用busybox相关的知识,希望对你有一定的参考价值。

在OpenHarmony中使用busybox

下载busybox

页面:https://busybox.net/downloads/binaries/

地址:https://busybox.net/downloads/binaries/1.31.0-defconfig-multiarch-musl/busybox-armv7r

获取读写权限

hdc smode
hdc shell mount -oremount,rw /

安装busybox

hdc file send busybox-armv7r /system/bin/busybox
hdc shell chmod a+x /system/bin/busybox
hdc shell mkdir /system/busybox
hdc shell busybox --install -s /system/busybox

使用busybox环境

hdc shell
export PATH="$PATH:/system/busybox"

现在你可以尽情的使用常见的linux命令

# 如以下命令
ifconfig -a
ping 127.0.0.1
vi /etc/prop.default

访问网络

  1. 推送udhcpc.script到开发板

    hdc smode
    hdc shell mount -oremount,rw /
    hdc file send udhcpc.script /system/busybox/udhcpc.script
    hdc shell chmod a+x /system/busybox/udhcpc.script

    udhcpc.script内容如下

    #!/system/bin/sh
    # file: udhcpc.script
    case $1 in
        bound|renew)
        [ -n "$broadcast" ] && BROADCAST="broadcast $broadcast"
        [ -n "$subnet" ] && NETMASK="netmask $subnet"
        ifconfig $interface $ip $BROADCAST $NETMASK
    ​
        if [ -n "$router" ]; then
            ip route del default >/dev/null
            ip route add default via $router
        fi
    ​
        if [ -n "$dns" ]; then
            rm /data/local/tmp/busybox-resolv.conf -f
            for i in $dns; do
                echo "nameserver $i" >> /data/local/tmp/busybox-resolv.conf
            done
            ln -sf /data/local/tmp/busybox-resolv.conf /etc/resolv.conf
        fi
    esac
  2. 将开发板的网线插在路由器上

    hdc shell
    export PATH="$PATH:/system/busybox"
    # 使能eth0
    ifconfig eth0 up
    udhcpc -i eth0 -s /system/busybox/udhcpc.script
    # 检查网络连通
    ping www.baidu.com -c 4
    # 获取公网IP地址
    wget -O- http://checkip.amazonaws.com 2>/dev/null

其他说明

注意:本篇文章中提供的busybox使用musl作为C库,所以nameserver需要用到/etc/resolv.conf文件。但openharmony标准系统并不需要用到这个文件。

 

 

以上是关于在OpenHarmony中使用busybox的主要内容,如果未能解决你的问题,请参考以下文章

在OpenHarmony中使用busybox

在OpenHarmony中使用busybox

源码分析 ---------openHarmony IPC数据传输情景分析

OpenHarmony测试代码编译执行流程

OpenHarmony测试代码编译执行流程

一种简单的OpenHarmony开发环境搭建