同一物理机上,/和/home分区都不够大,这两个分区是最后两个分区了,没法直接扩展,我把这两个分区删了,分配了两个大一点的分区。
我可以使用cp
备份这两个分区然后将它们恢复到新的 / 和 /home 吗?我使用 USB 磁盘来存储和恢复备份文件。
答案1
是的,你可以这样做。
如果您希望使用 cp,请使用标志-R
进行递归复制并-p
保留文件属性(模式、所有权、时间戳)
答案2
您的 USB 驱动器上的文件系统应该是 Unix 文件系统,因此您将保留所有文件的属性(权限、所有者、组等)。
然后该cp
命令有一个--archive (-a)
选项可以保留属性。理想情况下,您可以添加该--one-file-system (-x)
选项,这样您就不会备份其他文件系统,例如/proc
、/sys
或其他。
shell# cp --archive --one-file-system /home <DESTINATION>
shell# cp --archive --one-file-system / <DESTINATION>
就是这样。要进行恢复,您需要执行以下操作:
shell# cp --archive <ROOT_BACKUP>/* /
shell# cp --archive <HOME_BACKUP>/* /home
答案3
是的,你可以,但要小心
- 使用 -p(否则权限会搞乱)
- 为了安全使用 -f
- 复制回内容后,您可能需要更新 grub(sudo update-grub)才能使其正常运行。(如果您使用备份的 grub.cfg 文件进行启动,就会出现这种情况)
选择:您可以使用磁盘实用程序分区(sudo apt-get install gparted)也可以移动分区。只需在 / 和 /home 前清空一些空间,然后让 GParted 向后扩展(参考:GParted 手册页)
答案4
我建议使用专用的 Live 发行版。
我通常用于这些目的的工具是分区和克隆兹拉,既可以独立使用,也可以包含在专门的发行版中,例如Parted Magic。
我建议您使用后一个选项,因为 Clonezilla 和 Gparted 还有很多其他有用的磁盘和系统维护工具。