[关闭]
@leaveye 2022-04-12T05:02:02.000000Z 字数 1534 阅读 318

d2201生产脚本

d2201 脚本 生产


裸板安装程序

  1. mount -t nfs -o nolock 192.168.0.197:/home/levi/Work /root/app &&
  2. /root/app/hi3531d/production/setup.sh

会输出

  1. ./etc/profile
  2. ./etc/hosts
  3. ./etc/hostname
  4. ./etc/shadow
  5. new MAC addr: [5C:D9:7F:19:86:29]
  6. ADDRESS: [192.168.2.101]
  7. NETMASK: [255.255.248.0]
  8. OK! Successfully setup programms into /

表示已经安装到根目录 / 下面。
且生成 Mac 地址 5C:D9:7F:19:86:29 ,设置了 IP 为 2.101 。

重刷 MAC 地址

  1. # update_sysconfig VAR VALUE
  2. update_sysconfig() {
  3. sed -i "s|^\($1=\).*$|\1\"$2\"|" /etc/sysconfig/sysconfig.conf &&
  4. sed -i "s|^\($1=\).*$|\1\"$2\"|" /etc/sysconfig/default.conf &&
  5. return $?
  6. }
  7. # 随机生成 MAC 地址
  8. flush_macaddr() {
  9. MACADDR="$(
  10. xxd -g1 -l5 /dev/urandom |
  11. cut -d' ' -f2-6 |
  12. tr 'a-f' 'A-F' |
  13. sed -e 's| |:|g;s|^|48:|'
  14. )"
  15. update_sysconfig CONFIG_NETWORK_MACADDR "$MACADDR" &&
  16. echo "new MAC addr: [$MACADDR]"
  17. }
  18. #---
  19. flush_macaddr

更新升级脚本 20220210>>20220412

20220210 版本的升级脚本有问题,会令前端无法升级

在 telnet 后端,登录后,命令行里粘贴这段文本。

  1. test "$VERSION_FIRMWARE" == 20220210 && sed -i '
  2. s|echo \([a-z]\+_update "\$ABSPATH"\)|\1|;
  3. s|echo \(opkg_install "\$ABSPATH"\)|\1|;
  4. s|^\(FILELIST="\$(\)\(\$extract)"\)|\1eval \2|;
  5. s|\$do_cleanup\b|do_cleanup|;
  6. s|\$fatal\b|fatal|;/^fatal=/d;
  7. s|\$error\b|error|;/^error=/d;
  8. s|^_error().*$|error() { echo "${RED}ERR${NORMAL}: ${*:2}" >\&2; return 1; }|;
  9. s|^_fatal().*$|fatal() { error "$@"; do_cleanup; exit 1; }|;
  10. s|^do_cleanup=.*$|do_cleanup() { eval "{ ${CLEANUP:-true;} }" >/dev/null 2>\&1; unset CLEANUP; }|;
  11. /^push_cleanup() {$/{s|^.*$|push_cleanup() { CLEANUP="$*;${CLEANUP}"; }|p;N;N;d};
  12. ' /sbin/update-firmware &&
  13. echo "update script ${GREEN}flushed{NORMAL}" ||
  14. echo "update script ${GREEN}was updated${NORMAL}"

更新历史:

  • 20220410 修正下载协议匹配问题
  • 20220412 升级后回收占用空间
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注