微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在linux中移动到更大的驱动器

我在非根卷驱动器上有一个耗尽空间的 Linux机箱.
移动到更大的驱动器的最佳方法是什么?

我想我启动到单用户模式,格式化,安装新驱动器,做一些神奇的复制命令,保留链接,权限,文件日期和其他一切,然后卸载旧驱动器,挂载新驱动器作为旧名称,然后重新启动.

听起来不错吗?我错过了什么吗?建议?提示?谁知道cp命令会是什么?

这是一台ubuntu机器.

解决方法

如果你给出了当前的布局(fdisk -l的输出将在你不使用LVM时输出,输出“fdisk -l”,“pvdisplay -C”,“vgdisplay -C”和“lvdisplay -C”如果你使用LVM)和你希望增长的驱动器/分区,我们可以提供更准确的答案.

假设“非根卷驱动器”是指具有单个分区的驱动器,其中包含要在新磁盘上增长的卷,旧磁盘显示为sdb(及其上的分区为sdb1),即现有分区是一个ext2或ext3文件系统,新磁盘在并作为单个卷(例如,sdc1)分区,并且您想要完全移动到新磁盘摆脱旧磁盘,以下将起作用:

>备份数据,以防万一
>停止正在访问卷/ dev / sdb1的任何服务和其他进程
>卸下它
> dd if = / dev / sdb1 of = / dev / sdc1
> fsck / dev / sdc1 -C 0
> resize2fs / dev / sdc1 -p
>将指向旧设备的指针(即/ etc / fstab)调整为新指针
>重新安装和重启服务
>下次机器关闭时取下旧驱动器.您可能希望保留一段时间作为紧急备份,以防新驱动器变成哑弹

编辑:fsck上的“-C 0”和resize2fs上的“-p”告诉各个实用程序输出进度信息.调整大小操作应该非常快(通常只需要花费很多时间来缩小体积,因为在这种情况下需要移动更多数据).如果你安装了pv,那么你可以通过用“pv / dev / sdb1> / dev / sdc1”替换对dd的调用来使第3步给你进度信息.

编辑2:对于相当完整的卷来说,这是一个很好的选择,因为它首先复制块到块,因此不需要在关注文件系统结构的情况下翻转驱动器头(因此复制将像“速度旧驱动器可以批量读取“和”新驱动器可以批量写入的速度“)并且它与硬链接,设备节点或文件系统中可能存在的任何其他特殊内容没有任何混淆 – 对于卷而言相当空,你会发现一个基于cp / cpio的方法更快,因为它们不会将所有空块从磁盘复制到磁盘

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐