RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
...
extract.
shsh
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
#-------------------------------------------------------------------------------------------------- # Extract meta information of Downloaded image #-------------------------------------------------------------------------------------------------- mkdir -p extblock fdisk -u -l $1 > extblock/sector.txt linux_sector=`tail -2 extblock/sector.txt | tr -s ' ' | cut -d'*' -f2 | cut -d' ' -f2 | head -n1` linux_offset=$((linux_sector*512)) rootfs_sector=`tail -2 extblock/sector.txt | tr -s ' ' | cut -d'*' -f2 | cut -d' ' -f2 | tail -1` rootfs_offset=$((rootfs_sector*512)) mkdir -p extblock/linux_data mkdir -p extblock/rootfs_data mkdir -p extblock/vlinux_backup_data mkdir -p extblock/vrootfs_backup_data #sudo mount /dev/mmcblk0p1 extblock/bank0_linux #-------------------------------------------------------------------------------------------------- # Loop mount + Extract kernel and bootload data of Downloaded image to storage area #-------------------------------------------------------------------------------------------------- sudo mount -o loop,offset=$linux_offset $1 extblock/linux_data cp -R extblock/linux_data/* extblock/vlinux_backup_data/ sudo umount extblock/linux_data rm -rf extblock/linux_data #-------------------------------------------------------------------------------------------------- # Loop mount + Extract rootfs data of Downloaded image to storage area #-------------------------------------------------------------------------------------------------- sudo mount -o loop,offset=$rootfs_offset $1 extblock/rootfs_data cp -R extblock/rootfs_data/* extblock/vrootfs_backup_data sudo umount extblock/rootfs_data rm -rf extblock/rootfs_data |
multiSDcard_partition.sh
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
# This code is for partitioning and image flashing into multiple SD cards echo Please enter the input arguments in this order : bash partition.sh bb_image video_image SDcardDetail_filename echo Please keep the script extract.sh in the same folder # Get user input for Broadband and Video image and SD card partition names and their respective sizes echo Broadband image : $1 echo Video image : $2 echo SDcard details filename : $3 echo Deleting few folders if they are pre-existing... sudo rm -rf videomnt/ sudo rm -rf extblock/ echo Video image is going to be extracted... sudo sh extract.sh $2 sudo mkdir videomnt loopcnt=1 while IFS=' ' read -r part_name sdcard_size do sudo mkdir videomnt/videomnt'_'$loopcnt dir_name='videomnt/videomnt''_'$loopcnt echo $dir_name echo Calling the thread script which will paralleley execute for multiple SD cards... sudo bash threadSD.sh $1 $part_name $sdcard_size $dir_name & loopcnt=`expr $loopcnt + 1` done < $3 # Check file inside videomnt is empty or not cd videomnt while true do for file in *; do echo Check for file present in the directory... done if [ "$file" == "*" ] then echo All SD card partitioning and image flashing are completed !! # Deleting temporary folders. cd .. sudo rm -rf videomnt sudo rm -rf extblock/ exit 1 fi sleep 60 sleep_cnt=`expr $sleep_cnt + 1` if [ "$sleep_cnt" == "10" ] then echo Multisd card flashing failed due to slow processing or error. Increase sleep count thresold sleep_cnt. exit 1 fi done |
Code Block | ||||
---|---|---|---|---|
| ||||
# This program implements thread functionality for better performance for multiple SD card partitioning and image flashing # Input arguments bb_image=$1 part_name=$2 sdcard_size=$3 dir_name=$4 echo Going to flash the Broadband image in SD card which loaded in $part_name ... `sudo dd if=$bb_image of=$part_name bs=4M` echo Broadband Image flashed in SD card !! echo SD card partitioning is going to start !! sudo parted $part_name --script print sudo parted $part_name --script resizepart 2 2048 sudo parted $part_name --script print free sudo parted $part_name --script mkpart primary ext4 2049 4096 sudo parted $part_name --script print free sd_size=$sdcard_size'GB' sudo parted $part_name --script mkpart primary ext4 4097 $sd_size sudo parted $part_name --script print sudo parted $part_name --script quit part3=$part_name'3' part4=$part_name'4' sudo mkfs.ext4 $part3 sudo mkfs.ext4 $part4 echo Video image is going to be copied in the extended partition ... sudo mount $part4 $dir_name sudo cp -r extblock/v* $dir_name/ sudo cp -r extblock/vrootfs_backup_data/* $dir_name/ echo Video image is stored in extended partition !! sleep 10 sudo umount $dir_name sleep 10 echo SD card unmounted. echo Partitioning and Image flashing in the SD card mounted in $part_name is Completed !!! sudo rm -rf $dir_name |
6.Create a file (For ex. sudo vi sd_part_size) where all the SD card partition names and their respective sizes are mentioned
2) Connect all the SD cards with host PC and execute the command : sudo fdisk -l . It will list all the SD card partitions with their respective sizes
...