备份是计算机使用中非常重要的操作。原则上来说,进行任何重大修改(比如更新系统、更新生产环境中的软件。)之前都需要备份。
按照备份的范围来分,常用的备份方式有以下几种:
按照备份的时间来分,常用的备份方式分为以下两种:
有的人可能会说:“我们自己用电脑,备份有什么意义呢?” 2017年,勒索病毒WannaCry的肆虐,为我们敲响了警钟。这个病毒用AES加密用户电脑上的所有文件,以勒索钱财。没有人知道,下一个被勒索的,究竟是不是自己,我们只能通过备份将损失降到最低。
Linux下,常用的备份工具有以下几种:
dd
命令这个小节的内容,了解即可。
备份整块sda
硬盘到sdb
只需要以下命令。
dd if=/dev/sda of=/dev/sda
注意!这里的sdb物理容量必须大于sda!并且sdb上所有的文件都会被覆盖!无法找回!
tar
命令Linux中,可以直接使用tar
打包需要的文件,比如备份/etc
:
cd /
sudo tar -zcvf etc_backup.gz etc
rsync
命令在之前的章节中,我们创建了一个新的虚拟磁盘。现在,让我们挂载它到/mnt/backup
进行备份。
如果你完成了之前的课后作业,那么sdb上应该有唯一的一个xfs分区占满了整个磁盘。如果你已经持久挂载了磁盘,本步骤可以跳过。
sudo mkdir /mnt/backup
sudo mount /dev/sdb1 /mnt/backup
sudo mkdir /mnt/backup/etc
现在,我们使用rsync
命令,将虚拟磁盘中的文件复制到新的虚拟磁盘上。
sudo rsync -avz /etc /mnt/backup/etc
rsync
命令的参数如下:
-a
:递归模式,表示以递归方式传输文件,并保持所有文件属性。-v
:显示详细输出。-z
:压缩传输的数据。/etc
:源文件。/mnt/backup/etc
:目标文件。rsync
命令会自动判断源文件和目标文件是否相同,如果相同,则不会进行复制。如果不同,则会复制不同的文件。
rsync
命令是一个非常强大的命令,它不仅可以进行文件复制,还可以联网进行文件的同步、文件的删除等操作。如果你需要备份大量的文件,那么rsync
命令是一个非常好的选择。
study-area-cn