![如何在 Ubuntu CLI 上在硬盘之间复制文件?](https://linux22.com/image/602337/%E5%A6%82%E4%BD%95%E5%9C%A8%20Ubuntu%20CLI%20%E4%B8%8A%E5%9C%A8%E7%A1%AC%E7%9B%98%E4%B9%8B%E9%97%B4%E5%A4%8D%E5%88%B6%E6%96%87%E4%BB%B6%EF%BC%9F.png)
我有一台专用服务器,主 SSD 容量为 120GB。该服务器恰好配备了几块 3000GB 硬盘。我想用它们来备份我的主硬盘。
最好的情况下,我想要一个作为主 SSD 的精确副本,另一个带有 mysql 数据库和用户上传文件的增量备份。
这些是我拥有的驱动器
Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders, total 234441648 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000f2e18
Device Boot Start End Blocks Id System
/dev/sda1 2048 4196352 2097152+ 83 Linux
/dev/sda2 4198400 5246976 524288+ 83 Linux
/dev/sda3 5249024 234441647 114596312 83 Linux
Disk /dev/sdb: 3000.6 GB, 3000592982016 bytes
255 heads, 63 sectors/track, 364801 cylinders, total 5860533168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/sdc: 3000.6 GB, 3000592982016 bytes
255 heads, 63 sectors/track, 364801 cylinders, total 5860533168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000
Disk /dev/sdc doesn't contain a valid partition table
我遇到的第一个问题是,我不知道如何从一个驱动器复制到另一个驱动器。我知道这有点令人尴尬,但我不知道从哪里开始。我正在考虑 Mac OS cli 的问题,我可以在两者之间进行复制/Volumes
- 有同等的解决方案吗?
/mnt
(或下没有任何内容/media
)
答案1
精确复制(万一出现问题,可启动!):dd if=/dev/sda of=/dev/sdb bs=1M 来自可启动 CD 或单用户模式,可在现代系统上运行(我们早已超越真正的 CHS 几何)。较大磁盘上的分区表可以在以后需要剩余空间时进行扩展。使用 dd 时,切勿混淆 if 和 of - 错误造成的损害无法通过任何实际手段逆转。
mysql 的真正增量备份:在 /dev/sdc 上创建分区表和文件系统,将 mysql 设置为复制主服务器(无需实际复制),并让 cron 作业(计划任务)存档(并在 mysql 本身中清除)mysql 自动创建的二进制日志。
mysql 的实用备份:只需使用类似 automysqlbackup.sh 的程序,并在 3TB 磁盘上存储比您可能需要的更多的压缩完整备份 :)
答案2
您需要安装驱动器,以便可以在安装点上直接访问它们。
例如:
sudo mkdir /mnt/disk1 (to make the mountpoint)
sudo mount -t ext4 /dev/sdb /mnt/disk1
如果磁盘 sdb 已使用 ext4 格式化,但您的磁盘似乎未格式化(或它们正在使用 lvm),那么您需要先使用文件系统对其进行格式化。如果它们正在使用 lvm,则使用它们的 LV 名称而不是整个磁盘来挂载 LV 分区。
为了使坐骑永久存在(重启时不会消失),您必须将其保留下来/etc/fstab
(您可以查看man fstab
详细信息)。
要制作精确副本,您可以使用dd
。您的主磁盘只有 120GB,其他磁盘为 3TB,您将拥有大量可用空间,可用于在其上创建另一个分区。