dd命令sd卡系统迁移

DRY!-geek~ DRY!-geek~     2022-09-05     465

关键词:

Linux系统如果想做备份还原,使用ghost的时候经常出现问题,后来发现可以直接使用dd命令完成硬盘的克隆和还原.当拷贝完硬盘后,就可以拿这个硬盘放到其它设备上跑了。也就是完成了“烧写”了。

实际操作中,最好使用另一个系统启动,如另一个硬盘的系统,或者用live cd。当然,拷贝当前运行中的系统也是可以的,但不知当前的这个系统还有哪些不确定东西,所以还是不建议。

用fdisk -l查看当前所有分区信息(记得用root,否则执行了啥也看不到),如:

Device Boot      Start         End      Blocks   Id  System /dev/sdb1            2048     1002047      500000   83  Linux /dev/sdb2         1002048    12002047     5500000   83  Linux /dev/sdb3        12002048    13002047      500000   83  Linux /dev/sdb4        13002048    15002047     1000000   83  Linux

上面是我为了方便写文档而做的分区,可以看到Blocks十分工整,那是故意而为之的。

全盘拷贝的命令:

dd if=/dev/sdb  of=/dev/sdc

分区拷贝:

dd bs=512 count=[fdisk命令中最大的end数+1] if=/dev/sdb of=name.img

以上为例:

dd bs=512 count=15002048 if=/dev/sdb of=ghost_linux_latelee.img

由于ghost_linux_latelee.img会很大,可以在拷贝时将其压缩:

dd bs=512 count=15002048 if=/dev/sdb | gzip -9 > ghost_linux_latelee.img.gz

上面所做的,就是传说的系统“备份”,或叫“系统克隆”。

对应的,有系统恢复的操作。命令如下:

dd if=ghost_linux_latelee.img of=/dev/sda

如果是压缩包,则命令为:

gzip -c -d ghost_linux_latelee.img.gz | dd of=/dev/sda

在上面的拷贝过程中,并不知道拷贝了多少,只有最终结束时才显示出时间、拷贝速度。为了查看进度,可以在另一个终端输入(记得用root):

watch -n 5 killall -USR1 dd

(注:killall并不是传说中把进程kill掉,而是发送一个指定的信号到指定的进程)

之后,就能执行dd的终端看到进度了,如:

58299+0 records in 58298+0 records out 29848576 bytes (30 MB) copied, 4.67728 s, 6.4 MB/s 161403+0 records in 161402+0 records out 82637824 bytes (83 MB) copied, 9.69359 s, 8.5 MB/s 238651+0 records in 238650+0 records out 122188800 bytes (122 MB) copied, 14.7105 s, 8.3 MB/s

备注:

用dd的方式,得到的镜像文件十分庞大——取决于所要做的系统的大小。比如,拷贝4GB的分区,真的就是拷贝4GB,即使是用gzip压缩,也压缩不了多少,文件依然很大。

另外dd的方式也消除了我之前的担心,因为现在的linux发行版的分区使用硬盘uuid作为标识,而不是/dev/sda1这种格式,据说uuid更好。但用dd拷贝,竟然连硬盘的uuid也一一拷贝,毫无变化,这的确让我吃惊。不过,目前看没什么时间研究dd了。

PS:使用dd命令,可以读取硬盘的mbr扇区,示例如下:

dd if=/dev/sdb of=mbr.bin bs=512 count=1

 

 
 

烧录乌班图系统的sd卡怎么格式化

...明输入界面输入用户名:ORBBEC输入密码:ORBBECe.进入系统命令行模式f.输入命令:sudoarmbian-config参考技术A若您想要在手机上格式化SD卡,请参考以下步骤操作:设定-(更多/一般)存储-SD卡-格式化SD卡。1、格式化emmc:使用空的emmc存储... 查看详情

sd启动卡格式化

...经分区,通过读卡器或者TF卡套挂在到ubuntu系统1使用df-h命令查看sd卡分区信息和挂载信息例如:/dev/sdb1挂载点为/media/label1/dev/sdb2挂载点为/mdeia/label22卸载SD卡umount/media/label1umount/media/label23格式化SD卡sudofdisk/dev/sdb输入选项m,列出... 查看详情

mac上将树莓派已经写了系统的sd卡(磁盘)抹除、格式化

...过linux的SD卡、读卡器(1) 首先打卡“Terminal”,用df命令查看当前已挂载的卷df–h这时候可以找到对应的boot盘(我的电脑中是/dev/disk2s1)(2)使用diskutilunmount将这些分区卸载:diskutilunmount/dev/disk2s1(3) 通过diskutillist来... 查看详情

linux怎么读取sd卡cid?

要在Linux系统上读取SD卡CID,可以使用以下命令:首先,使用以下命令查看SD卡设备名称:sudofdisk-l这将列出所有已连接的设备,包括SD卡。请注意SD卡的设备名称,例如/dev/sdc。然后,使用以下命令读取SD卡CID:sudocat/sys/class/mmc_host... 查看详情

[环境配置][修改]arm系统镜像在ubuntu上的备份与还原(代码片段)

...备份与恢复备份环境系统备份系统恢复本次操作是通过dd命令完整克隆系统。这种方法是块设备的bit复制,所以完全不需要了解上层文件系统 查看详情

linux中u盘和sd卡加载卸载命令

U盘挂载命令U盘插入的时候会显示启动信息,启动信息中sda:sda1指U盘的设备名为sda1dev设备目录下有一个sda1设备文件,此设备文件就是我们插入的U盘,我们将这个设备文件挂载到Linux系统的/mnt/udisk1这个目录下,这样我们即可以通... 查看详情

(重新)在安卓模拟器上安装 SD 卡

...何在模拟器上重新安装它(无需重新启动它)。提示:adb命令remount不相关:它与/system有关emulator命令无关:它只是关于启动模拟器 查看详情

stm32使用sdio进行sd卡读写-了解sd总线,命令的相关介绍

...章的介绍内容一、SD总线,传输的流程二、SD总线里面的命令和响应的数据格式三、SDIO进行传输时,使用4根数据线的传输情况四、CMD表格,和SD卡通讯所需的命令介绍  一、SD总线,传输的流程下面来看一下SD bus(总线... 查看详情

stm32开发_利用spi协议读写sd卡介绍sd卡spi时序(代码片段)

...间区别2.2SD卡版本说明2.3SD卡常用的指令表三、向SD卡发送命令的步骤介绍(SendSDCardCmd)3.1取消选中SD卡(SDCardCancelCS)3.2选中SD卡(SDCardSelectCS)3.3向SD卡发送操作命令cmd3.4向SD卡发送命令参数3.5发送CRC校验3.6等待SD卡响应四、SD卡的寄存器... 查看详情

sd卡命令格式

为什么SD卡命令最后一个字节都是0x95?手册上说最后一个字节前七位为CRC校验,最后一位为停止位(0x95最后一位是1是不错),但是循环沉余校验为什么是0x95-1呢?  SD卡的命令格式:    SD卡的指令由6字节(Byte)组成,如下... 查看详情

6410下,能不能从sd卡启动系统?要从sd卡启动该做些啥工作

...pdd)层,主要实现一些对sd控制器的配置以及一些基本sd命令的实现和对sd卡的操作。sdmmc.c实现了从sd卡读取nk并跳到内存去运行的代码(基本可以理解为sd驱动的mdd层)。sdfat.c文件就是实现fatfs的。mdd层通过fatfs来对pdd层操作以实... 查看详情

linux系统下怎么查看sd卡cid信息?

参考技术A使用以下命令:cat/sys/devices/platform/jz-msc.0/mmc_host/mmc0/mmc0:1234/cid或者使用通配符cat/sys/devices/platform/jz-msc.0/mmc_host/mmc0/mmc0:*/cid追问提示没有那个目录🤔 参考技术B使用以下命令:cat/sys/devices/platform/jz-msc.0/mmc_host/mmc0/mmc0... 查看详情

贴片sd卡移植fatfs文件系统

...头有一块深圳雷龙的SDIO接口的贴片SD卡,挂载个文件系统把玩一下。首先介绍一下使用的贴片SD卡,以前使用的都是拔插式的SD卡,下面这个样子:拿到的贴片雷龙SD卡如下图:二、贴片SD卡介绍雷龙的SD卡LGA-8... 查看详情

如何通过 ADB 命令将便携式 SD 卡变成内部存储?

】如何通过ADB命令将便携式SD卡变成内部存储?【英文标题】:HowtoturnaportableSDcardintointernalstorageviaADBcommand?【发布时间】:2016-10-2821:52:01【问题描述】:Android6.0Marshmallow引入了AdoptableStorage,该功能允许将SD卡用作内部存储。是否... 查看详情

在树莓派上安装raspbx,实现一个sip电话系统

...p://download.raspberry-asterisk.org/raspbx-04-04-2018.zip在终端中执行命令,卸载SD卡:在终端中执行命令,写入SD卡:提示:要执行好长时间(大概有15分钟)!!!把SD卡放入树莓派后启动。user:rootpassword:raspberry按提示创建管理员账户。... 查看详情

u-boot命令之mmc(emmc和sd卡)操作命令(代码片段)

参考:U-Boot命令之EMMC和SD卡操作命令作者:一只青木呀发布时间:2020-10-2015:02:16网址:https://blog.csdn.net/weixin_45309916/article/details/109178989目录EMMC和SD卡操作命令1、mmcinfo命令2、mmcrescan命令3、mmclist命令4、 查看详情

能不能在sd卡上装linux系统

...是在你的机器上能否启动不好说,安装方法与装在u盘的pe系统类似,会装pe就可以。 参考技术B可以实现的,你可以通过SD卡启动uboot,不过加载内核的话,可以通过tftp下载内核加载;也可以通过nand里面的内核,如果用SD卡内核是... 查看详情

threadxfilex文件系统移植到stm32f429(sd卡)

​​​​第4章  ThreadXFileX文件系统移植到STM32F429(SD卡)本章节为大家讲解SD卡的ThreadXFileX文件系统移植。4.1初学者重要提示4.2SD卡硬件接口设计4.3SD卡基础知识4.4各种存储卡区别4.5关于SD卡内部是否自带擦写均衡4.6ThreadXFli... 查看详情