We hope you'll join us for our 4/23 webinar on using data tables to apply reference ranges and AE codes in OC4. For more information and to register, visit https://register.gotowebinar.com/register/2882170018956684555

1.6.1.Backup and restore system

Sometimes you want to backup your system for pcDuino8 Uno. The simplest way is using dd on Linux or Win32DiskImager on Windows to read back the whole TF card and save it as system image file. If I use 8G TF card, the backup image file will be 8G, but in fact, the system just take 2G disk space.So how can I backup a smaller system image? The following steps will tell you.

TF card reader
PC running Linux OS

Steps about backup
1. Set a first boot flag

In official Ubuntu image for pcDuino8 Uno, there is a shell script at /etc/init/, called pcduino.conf. This is the init script for pcDuino board, and one job of this script is used to expand the rootfs. Each time system boots, this script will check there is pcduino_init_flag file at /etc or not. If yes, resize the rootfs. If we want to create a auto-resized system image, we need to create pcduino_init_flag.

Login Ubuntu on pcDuino8 uno and run commands as follows to create the pcduino_init_flag file:
cd /ect/ vim pcduino_init_flag
2. Install pgarted tool

On another PC running Linux(Take Ubuntu as example), not on your pcDuino8 Uno, install gparted tool which can resize your disk partition.
sudo apt-get -y install gparted
3. Resize your partition using gparted

Shut down pcDuino8 Uno, remove TF card and insert it into Linux PC, then open gparted.
sudo gparted /dev/sdb
Note: Suppose your TF card is recognized as /dev/sdb.

Right click the partitions that have been mounted, then umount them. umount

Right click the partition which need to shrink and select resize.

Set Free space preceding(MiB) is 0, this guarantee the continuity of these three partitions.

Set Free space following(MiB), make sure the partition still have about 300MB space. resize2 Apply all operations.

4. Generate image file
$ sudo dd if=/dev/sda of=<image-path>/system.img bs=1M count=2500
Take my case, I resize the partitions from 8GB to 2.4GB, so I set count as 2500 to make sure dd should not damage system file.

Furthermore, you can use tar or 7z to compress the image file. As to me, I use 7z tool to compress it and get an compressed file whose size is only about 650MB.
5. Restore system from image file

On windows, you can use win32disk tool to write the image file into TF card.

As to Linux, also use dd like:
sudo dd if=<image-path>/system.img of=/dev/sda bs=1M
Note: /dev/sda is your TF card.
6. Run

Insert the TF card into pcDuino8 Uno and after the second boot, all things are back to normal.

Maybe you can directly use dd to backup the system into a smaller image file, but I have never try it.



  • RoseKeys10RoseKeys10 Posts: 1
    edited January 2017
    Nicely explained. Thank you.
    Post edited by ccollins on
Sign In or Register to comment.