当前位置: 首页 > news >正文

群晖 做网站 Java网站优化及推广方案

群晖 做网站 Java,网站优化及推广方案,wordpress 建立数据库连接时出错,标智客免费logo设计xilinx zynq petalinux 默认编译打包出的SPI flash烧写启动文件是BOOT.BIN,然而每次需要修改rootfs内的文件时都要重新build rootfs 然后再 package一次才能生成新的BOOT.bin文件,地球人都知道petalinux编译一次是很耗时间的,那么有没有什么简…

    xilinx zynq petalinux 默认编译打包出的SPI flash烧写启动文件是BOOT.BIN,然而每次需要修改rootfs内的文件时都要重新build rootfs 然后再 package一次才能生成新的BOOT.bin文件,地球人都知道petalinux编译一次是很耗时间的,那么有没有什么简单的办法能修改rootfs呢?

为了达到这么个目的,我花点时间研究了一下petalinux编译打包过程,执行build命令后最终会生成linux内核,rootfs,dtb,u-boot,fsbl,fpga.bit这些最终文件,然后package时将这些文件一起打包成BOOT.bin才可以烧写spi flash,其中kernel,rootfs,dtb会被预先打包成image.ub文件才会参与到package过程,如果要修改rootfs,可以把image.ub文件解包出rootfs,修改其中的内容,再重新打包成新的rootfs,就可以了,下面过程是经过多次尝试后总结出的步骤,以供参考

首先需要准备 image.ub文件,这个文件在编译完成后自动生成,petalinux2019.2中这个文件在xxxx/images/linux目录下,使用dumpimage命令拆包,如下面的样子,可以解出kernel,设备树文件和rootfs。

dumpimage -i image.ub -T flat_dt  -p 0 kernel.bin
dumpimage -i image.ub -T flat_dt  -p 1 devicetree.dtb
dumpimage -i image.ub -T flat_dt  -p 2 rootfs.cpio.gz

第二步,对rootfs解压出原始文件

mkdir ramdisk_unzip
gunzip -c rootfs.cpio.gz | sh -c 'cd ramdisk_unzip/ && cpio -i'

经过上面两步骤后就可以在ramdisk_unzip文件夹下看到原始的rootfs目录结构,这个时候就可以对rootfs随意修改了

第三部,修改完成后重新对rootfs再打包成rootfs.cpio.gz,使用如下命令进行打包

sh -c 'cd ramdisk_unzip/ && find . | cpio -H newc -o' | gzip -9 > repack_ramdisk.cpio.gz

第4步,重新生成一个新的image.ub文件,使用mkimage命令,如下

mkimage -f package_image_ub.its repack_image.ub

其中的package_image_ub.its是告诉mkimage打包需要的参数,这个文件在petalinux编译路径下有模板,我这里复制出petalinux的模板,修改了一下,主要是几个文件路径,改成自己的文件

/dts-v1/;/ {description = "U-Boot fitImage for PetaLinux/4.19-xilinx-v2019.2+git999/plnx-zynq7";#address-cells = <1>;images {kernel@1 {description = "Linux kernel";data = /incbin/("刚才第一步解压出来的kernel.bin文件路径");type = "kernel";arch = "arm";os = "linux";compression = "none";load = <0x8000>;entry = <0x8000>;hash@1 {algo = "sha1";};};fdt@system-top.dtb {description = "Flattened Device Tree blob";data = /incbin/("刚才第一步解压出来的devicetree.dtb文件路径");type = "flat_dt";arch = "arm";compression = "none";hash@1 {algo = "sha1";};};ramdisk@1 {description = "petalinux-user-image";data = /incbin/("重新打包生成的repack_ramdisk.cpio.gz文件路径");type = "ramdisk";arch = "arm";os = "linux";compression = "gzip";hash@1 {algo = "sha1";};};};configurations {default = "conf@system-top.dtb";conf@system-top.dtb {description = "1 Linux kernel, FDT blob, ramdisk";kernel = "kernel@1";fdt = "fdt@system-top.dtb";ramdisk = "ramdisk@1";hash@1 {algo = "sha1";};};};
};

第5步,使用原本petalinux自带的package命令重新打包生成BOOT.BIN

petalinux-package --boot --fsbl ./fsbl.elf --fpga --u-boot ./u-boot.elf --kernel ./repack_image.ub -o ./BOOT.BIN --force

其中的fsbl,u-boot都是原先build后自动生成的,在xxxx/images/linux路径下就有,经过上面的步骤后就重新生成了烧写文件,理论上烧写到spiflsh就可以正常启动了

简单几步就完成了rootfs的重新修改和配置,想添加删除什么文件比原先的build命令方便多了。

http://www.dinnco.com/news/81769.html

相关文章:

  • 免费下载ppt模板网站有哪些app网络推广方案
  • 电脑可以做网站服务器吗网站推广优化外链
  • 东山县建设局网站百度一级代理商
  • 宁波企业自助建站企业培训权威机构
  • 营销广告策划方案谷歌seo查询
  • 企业网站有什么功能网站seo思路
  • 做律师网站公司教育培训机构营销方案
  • asp.net 4.0网站开发与项目实战兰州网络seo
  • 汽车行业网站设计培训网
  • 网站设计模板 优帮云seo运营学校
  • 网站建设论文结尾网络推广外包内容
  • 做黑彩网站赚钱吗个人信息怎么在百度推广
  • 网站公司后台seo推广优化排名软件
  • 网页制作软件是哪个百度seo指南
  • 做电子商城网站网页制作软件免费版
  • idc数据中心排名百度关键词在线优化
  • 做视频网站成本百度竞价规则
  • 别人带做的网站关闭了权限咋办seo排名技术教程
  • 苏州餐饮 网站建设谷歌引擎搜索
  • 网站建设样式百度平台app
  • 建设好网站怎么付费推广广州网站快速优化排名
  • 网站基本配置百度灰色关键词排名代做
  • 网站设计所需软件广告策划方案怎么做
  • 上海国际建设总承包公司网站免费网站制作平台
  • 国内网站开发公司b站推广网站2023
  • 网络存储上做网站杭州seo联盟
  • 鸡西网站制作网页设计培训
  • wordpress网站推翻重建专业网站优化公司
  • 环保设备在那个网站做seo营销是什么
  • wordpress视频背景宁波谷歌seo