作者: 付汉杰 hankf@xilinx.com hankf@amd.com,文章来源:博客园
测试环境: PetaLinux 2021.2
开发过程中,经常要检查rootfs的内容。使用命令,“gzip -d rootfs.cpio.gz”,“cpio -i < rootfs.cpio”,可以解压rootfs.cpio.gz的内容。
如果经常解压,可以采用下面的脚本,简化操作。
#!/bin/bash echo -e "\nBegin to run script: $0" # array definition, work for /bin/bash, does not work for /bin/sh file_array_check=( bl31.bin bl31.elf BOOT.BIN boot.scr Image image.ub rootfs.cpio.gz rootfs.manifest system.dtb u-boot.bin u-boot.elf vmlinux ) # Get array elements number file_array_check_length=${#file_array_check[@]} # C-language style loop # Check PetaLinux image/linux directory. for (( i=0; i<$file_array_check_length; i++)) { CHECK_FILE=${file_array_check[i]} echo "Check No.$i directory: $CHECK_FILE"; if [ ! -f $CHECK_FILE ]; then echo "Not PetaLinux project image directory. No file: $CHECK_FILE. " echo "Exit." exit 1 fi } mkdir -p rootfs rm -rf ./rootfs/* ls -l ./rootfs cd rootfs cp ../rootfs.cpio.gz ./ gzip -d rootfs.cpio.gz cpio -i < rootfs.cpio ls -l cd ../