我有一个可启动的 32 GB Ubuntu USB 棒具有持久存储。
这32 GB USB 记忆棒吃饱了,所以我想将其克隆到 64 GBUSB 记忆棒和增加这俩casper-rw和数据接口分割。
我该怎么做不会丢失任何数据?
以下是我将 32 GB USB 驱动器克隆到 64 GB USB 驱动器的方法。首先,我发出以下命令:
lsblk
其次,我使用了 DD 命令:
sudo dd if=/dev/sdb of=/dev/sde status=progress
第三,我关闭电脑,取出 32 GB 的 U 盘,然后打开电脑。系统从新的 USB 盘正确启动,似乎所有文件都在那里。
现在回到我最初的问题:我该如何使用可用/未分配的空间来增加 casper-rw 和 usbdata 分区而不丢失任何数据?
答案1
使用 mkusb 克隆
您可以使用以下方式从驱动器克隆到另一个驱动器mkusb
. 通过图形界面或使用
dus /dev/sdx
其中 x 是设备字母或克隆操作中的源。将通过菜单以安全的方式选择目标。
- mkusb 用安全带包裹
dd
- 如果有 GUID 分区表 GPT,mkusb 会修复驱动器尾端的备份分区表。(否则,您必须手动执行此操作,例如使用
gdisk
。)
克隆后,您可以使用 编辑分区gparted
。如果您只触及casper-rw
分区和usbdata
分区(如果是 MSDOS 分区表,则为扩展分区),则启动不会受到影响。
编辑:如何编辑分区以填充驱动器。
- 确保您有备份(例如原始驱动器)。
- 读如何使用
gparted
。 - 从另一个驱动器启动
- 卸载目标驱动器上的所有分区
- 启动并检查和
gparted
上没有锁符号。/dev/sdb1
/dev/sdb5
- 移至
/dev/sdb1
尾端(右侧) - 将其左边框
/dev/sdb1
向左拖动,直到达到所需大小 - 将 /dev/sdb5 的右边框拖到右侧以使用所有剩余的未分配驱动器空间。两个分区应该“互相接触”。
- 检查事情是否符合您的要求。
- 点击勾选图标开始操作。
- 请稍候...这将需要很长时间。请确保电量充足(不要使用电池)。
如果你使用克隆,dd
你需要修复驱动器尾端的备份分区表,gdisk
或者使用gpt 修复。
编辑:gdisk
命令选项从中剪切gpt-fix
echo \
"v
x
e
r
d
w
y" \
| gdisk "$1"
如果直接运行(而不是在 shellscript 中),则其中"$1"
应该替换为目标设备。/dev/sdx
这些命令字母的解释如下
man gdisk
关键命令是
在专家菜单中
e Move backup GPT data structures to the end of the disk. Use this
command if you've added disks to a RAID array, thus creating a
virtual disk with space that follows the backup GPT data struc‐
tures. This command moves the backup GPT data structures to the
end of the disk, where they belong.
在恢复和转换菜单中
d Use main GPT header and rebuild the backup. This option is
likely to be useful if the backup GPT header has been damaged or
destroyed.
其他命令是验证、在菜单之间移动和写入。
OP 添加的链接@BlueSkies:
使用 mkusb 克隆、从原始 USB 驱动器复制分区并从新的更大的驱动器启动后,我无法访问 usbdata。
请提供建议。谢谢!
建议:请发布以下命令行的输出(从新的更大的棒启动时),
sudo lsblk -f
sudo lsblk -m
sudo ls -l /mountpoint-to-usbdata
sudo ls -l /mountpoint-to-casper-rw
您可以在其中输入实际的挂载点来查看usbdata
和casper-rw
。
这将帮助我了解问题是什么,以便我可以建议下一步该做什么。
请编辑您的原始问题在我的答案中输入这些输出文本,而不是在这里。每行缩进 4 个字符,以便将输出呈现为代码。您可以标记(高亮显示)文本并单击{}
编辑窗口顶部的图标即可快速进行缩进。
上述四个命令的输出:
该命令
sudo lsblk -f
给出以下结果
另一个(sudo lsblk -m
)输出以下信息:
最后两个命令和结果:
答案2
您可以尝试 ddrescue 或 gddrescue。
sudo apt-get install gddrescue ddrescue
ddrescue /dev/sda /dev/sdb -v