【嵌入式Linux U盘升级】

嵌入式Linux U盘升级

1. 步骤

  1. 现在开发板目录/etc/init.d下 放S89_updata.sh。 //这步骤已经在打包的文件系统里面了,以后不需要操作。
  2. 在U盘中放dockupfile.tar目录,和updata.sh 文件 //文件和目录名字最好不要修改。
  3. 将U盘插入DOCK重启就能烧录。

upfile文件有 app wav lib config 文件。
//打包升级文件
tar -vcf dockupfile.tar upfile
//升级文件和updata.sh文件放在U盘根目录下。

2. S89_updata.sh

开发板目录/etc/init.d下 放S89_updata.sh

#!/bin/sh

ROOT_DIR=/media
UPDATE=updata.sh

start() {
	echo "Starting update: "
	ls ${ROOT_DIR} | while read line; do \
		cd $ROOT_DIR/$line
		if [ -f $UPDATE ]; then
			echo "exec $UPDATE..."
			./$UPDATE && break
		fi
		cd -
	done		

	echo "OK"
}

stop() {
        echo "nothing to do: "
        echo "OK"
}

restart() {
        stop
        start
}

case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart|reload)
        restart
        ;;
  *)
        echo "Usage: $0 {start|stop|restart}"
        exit 1
esac

exit $?

3. updata.sh

#!/bin/sh

#### add your operation in here ####


####         the sample         ####
# copy app to /opt/app directory
if [ -f ./dockupfile.tar ]; then

	wr mkdir temp 
    tar -xvf dockupfile.tar -C ./temp
	
	echo "updata --------system--------------------------------"
	
	if [ -d ./temp/upfile/system ]; then
		
		if [ -f ./temp/upfile/system/u-boot.imx ]; then
			echo "up u-boot.imx" 
			mount -t debugfs debugfs /sys/kernel/debug
			flash_erase /dev/mtd0 0 0 
			wr kobs-ng init -x -v --chip_0_device_path=/dev/mtd0 ./temp/upfile/system/u-boot.imx
			sync
		fi

		if [ -f ./temp/upfile/system/imx6y2c-512m-nand.dtb ]; then
			echo "up imx6y2c-512m-nand.dtb" 	
			flash_erase /dev/mtd1 0 0 
			nandwrite -p /dev/mtd1 -p ./temp/upfile/system/imx6y2c-512m-nand.dtb 
			sync
		fi
		
		if [ -f ./temp/upfile/system/zImage ]; then
			echo "up zImage" 	
			flash_erase /dev/mtd2 0 0 
			nandwrite -p /dev/mtd2 -p ./temp/upfile/system/zImage 
			sync
		fi
		
		if [ -f ./temp/upfile/system/logo.bmp ]; then
			echo "up logo.bmp" 	
			flash_erase /dev/mtd4 0 0  
			nandwrite -p /dev/mtd4 -p ./temp/upfile/system/logo.bmp 
			sync
		fi
    fi
	
	echo "updata --------app-----------------------------------"
    if [ -d ./temp/upfile/app ]; then
		if [ -f ./temp/upfile/app/config.json ]; then
			echo "cp config.json" 	
			cp ./temp/upfile/app/config.json /opt
		fi
		
		if [ -f ./temp/upfile/app/dockTopApp ]; then
			echo "cp dockTopApp" 
			cp ./temp/upfile/app/dockTopApp /opt 
		fi
    fi
	
	echo "updata --------wav-----------------------------------"
	
	if [ -d ./temp/upfile/wav ]; then
        if [ -f ./temp/upfile/wav/high.wav ]; then
			echo "cp high.wav"
			wr cp ./temp/upfile/wav/high.wav /opt
		fi
		
		if [ -f ./temp/upfile/wav/Hint.wav ]; then
			echo "cp Hint.wav" 	
			wr cp ./temp/upfile/wav/Hint.wav /opt
		fi
		
		if [ -f ./temp/upfile/wav/low.wav ]; then
			echo "cp low.wav" 	
			wr cp ./temp/upfile/wav/low.wav /opt
		fi
		
		if [ -f ./temp/upfile/wav/medium.wav ]; then
			echo "cp medium.wav" 	
			wr cp ./temp/upfile/wav/medium.wav /opt
		fi
    fi
	
	echo "updata --------QtLib---------------------------------"
	
	if [ -d ./temp/upfile/Qt5.12.9 ]; then
        wr cp ./temp/upfile/Qt5.12.9  /opt -rf
    fi

	echo "updata --------end-----------------------------------"
	sync
	rm  ./temp -rf 
fi

#if [ -f ./S90start_userapp.sh ]; then
#	wr cp ./S90start_userapp.sh /etc/init.d/
#fi


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

光芒Shine

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值