6 Replies Latest reply on Sep 28, 2015 7:35 AM by egorf

    How do I clone my Edison so it can be put on other Edisons?

    floridianfisher

      I have a custom Edison that I want to be able to move to other Edisons. I tried this Backup/Restore Intel Edison tutorial and it did copy all of the files but the programs did not run properly. Can someone please help?

        • 1. Re: How do I clone my Edison so it can be put on other Edisons?
          PabloM_Intel

          Hi floridianfisher,

           

          This was asked in another thread some time ago. One thing you could try is to use the dd command to backup to a USB drive and restore from the USB drive as long as the root password was not set.

           

          The command to backup would look like this:

          dd if=/dev/mmcblk0 of=/mnt/sda1/<Any File Name> bs=1M
          

           

          To restore you’ll need to enter:

          dd if=/mnt/sda1/<File Name> of=/dev/mmcblk0 bs=1M
          

           

          You can check some more information in the original thread https://communities.intel.com/thread/55807.

           

          Regards,

          PabloM_Intel

          • 2. Re: How do I clone my Edison so it can be put on other Edisons?
            mhahn

            although it's always a bit risky to dd a running system (you might have pending writes ...). Usually you would mount a drive which you then can dd - which in the case of Edison wouldn't work (unless you have a live USB system you can boot Edison).

             

            Just some more thoughts:

            If it's about the image you may also want to Yocto build a customized image which you then can flash to Edison.

            If you don't need to customize the image but just to modify the standard image you can also mount the ext4 partition as loop device in the Edison image to flash folder, modify it there and afterwards flash the modified image.

            If it's about user data somewhere in /home folder - if you use the Arduino board you could put the user data on a sdcard which obviously easily can be copied

            • 3. Re: How do I clone my Edison so it can be put on other Edisons?
              egorf

              Hello PabloM_Intel!

               

              I have tried this approach with only difference of piping dd output through the network to my computer.
              When you try to dd the copied image onto a working Edison it seems to succeed and after reboot all the files are intact. But it keeps firing ext4 filesystem errors to the serial console. Is there a way to avoid this? No other way to copy image changes to other Edison other than building a yocto image?

               

              Thanks!

              • 4. Re: How do I clone my Edison so it can be put on other Edisons?
                PabloM_Intel

                Hi egorf,

                 

                Have you tried following the other comments from this post https://communities.intel.com/thread/55807? Another user suggested that probably the issue was due to the system being active when he made the backup and the restore. Later he says that to avoid ext4 errors he had to boot from a microSD and with the Edison partitions unmounted, make a dd of root and home partitions. Then restore with dd on the new Edison, always maintaining the partitions unmounted.

                 

                Regards,

                PabloM_Intel

                • 5. Re: How do I clone my Edison so it can be put on other Edisons?
                  doumdi

                  Hi everybody,

                   

                  My guess is that you need to copy the flash content using read/write functions from the u-boot bootloader. This is not a good idea to clone the file system while still running and this will not be reliable. So far, the way I am "cloning" my setup on my Edisons is using a custom image with all the tools I need (git, svn, libraries, kernel modules, etc.). I use Flash Tool Lite (IoT - Flash Tool Lite User Manual | Intel® Developer Zone) to flash the image. Then, I do :

                   

                  1) Minimal configuration of the Edison by connecting through the USB / Ethernet driver (192.168.2.15) and the configure_edison script.

                  2) git clone everything I need on the newly flashed Edison OR

                  3) copy through ssh everything I need

                  4) Execute some automated scripts to finalize the configuration.

                   

                  I am very interested to know if you have a better solution.

                   

                  Regards,

                   

                  Dominic

                  • 6. Re: How do I clone my Edison so it can be put on other Edisons?
                    egorf

                    Hi Dominic,

                     

                    My goal was to automate everything, including initial setup, so I was actually left with no choice but modifying Intel's yocto image to fit my interests. I ended up with a combination of writing yocto recipes and modifying the built image via mounting it to the file system.

                     

                    Hope that kind of helps!