备注

  • 建议使用Ubuntu系统进行备份+再烧录。
  • 如果将SD卡#1的系统备份、烧录到SD卡#2,SD卡#2的容量需要大于等于SD卡#1。
  • 烧录系统过的SD卡在Windows系统下无法识别,可以重新格式化后使用。

备份Ubuntu系统

前提:已有一张烧录过Ubuntu系统的micro SD卡,需要备份这张卡上的Ubuntu系统。

  • 如果不压缩镜像文件,硬盘容量需设置为大于SD卡容量
  • 如果压缩镜像文件,可根据实际大小调整和扩容。(64G的SD卡装有Ubuntu系统压缩至大约16G)
  1. 在Ubuntu虚拟机内备份。

Ubuntu系统

  1. 查看需要备份的SD卡的设备号
sudo fdisk -l

备注:可以通过disk容量、磁盘标签类型(disklabel type: gpt)、磁盘标识符(disk identifier)来判断哪个disk是SD卡。

  1. 使用dd命令压缩备份SD卡(假设设备号是/dev/sdb)
sudo dd if=/dev/sdb conv=sync,noerror bs=16M | gzip -c > nano_back.img.gz

备注:

  • bs为写入和读取速度,可根据机器的实际情况配置。
  • noerror为忽略读过程中的error,如果出现error,sync为error的block填0。
  • 如果不压缩的话,生成的文件会和SD卡的容量一样大。完整备份:
sudo dd bs=16M if=/dev/sdb of=nano_back.img
  • dd过程中如果想要看进度:
sudo pkill -USR1 -n -x dd

烧录Ubuntu系统

前提:有一张空的micro SD卡,已有Ubuntu系统镜像压缩文件。

Ubuntu系统

  1. 查看需要写入的SD卡的设备号
sudo fdisk -l
  1. 解压缩烧录(假设设备号是/dev/sdb)
sudo chmod 777 /dev/sdb
sudo gunzip -c nano_back.img.gz | dd of=/dev/sdb bs=16M

备注:

  • 直接烧录镜像文件
sudo dd bs=16M if=nano_back.img of=/dev/sdb
  • 如果写入的最后报错空间不够,实际上也不影响,因为写满了SD卡。
dd: error writing ‘/dev/sbd’: No space left on device
  1. 把SD卡插入Nano机器,开机即可。

Windows系统

  1. 下载任意SD卡格式化软件以及烧录软件。根据Nvidia官方推荐,下载SD Memory Card Formatter,以及Etcher
  2. 格式化SD卡。在电脑上插入SD卡,打开SD Card Formatter,选择card drive,选择“Quick format“,其它不动,点击”Format“。
  3. 烧录系统。打开Etcher(关闭电脑杀毒软件),选择好压缩的img文件和drive,点击“Flash”。如果结束后Windows提示问是否需要format the disk,点击“Cancel”。
  4. 把SD卡装到Nano里,开机即可。

常见问题

格式化烧录过的SD卡

  • Windows系统下
  • Ubuntu系统下

Windows主机和Ubuntu虚拟机相互传输数据

  1. 在虚拟机上安装SSH
sudo apt-get install openssh-server
  1. 在虚拟机上查看ip地址
ifconfig
  1. 在主机连接,可使用命令行或软件(比如WinSCP)。

Ubuntu虚拟机上删除不需要且被占满的回环设备(/dev/loop0等)

sudo apt autoremove --purge snapd

备注:如果是真实设备,谨慎使用。

VMware虚拟机扩展硬盘空间

  1. 在虚拟机配置里,扩展硬盘容量。
  2. 烧录esim_linux

  3. 进入虚拟机,使用任意方法重新配置分区。Ubuntu系统可使用gparted软件。
sudo apt-get install gparted

VMware虚拟机识别SD卡

  1. 在虚拟机配置里,配置好USB控制器(如果读卡器是USB 3.0需要在配置里选择)。
  2. 烧录esim_ubuntu_02

  3. 开启虚拟机,鼠标右击右上角USB图标,选择连接或断开连接。
  4. 烧录esim_Windows_03

  5. 若始终无法识别SD卡,可选择移除当前的USB控制器后重新添加。