Linux 将系统用tar打包备份到外置U盘
使用tar命令可以将整个Linux系统打包备份到外置U盘。本文介绍tar打包命令的参数含义、排除不需要的目录、以及恢复备份的完整操作流程。
备份命令
tar cvpzf /mnt/sda1/backup/backup.tgz / \\
--exclude=/proc \\
--exclude=/lost+found \\
--exclude=/backup.tgz \\
--exclude=/mnt \\
--exclude=/sys
两种备份方式对比
| 工具 | 特点 |
|---|---|
| tar | 保留权限;适合备份整个目录;可选压缩方式;不压缩时支持增量备份 |
| dd | 按块操作,可备份整个硬盘(含分区表、MBR);但空白空间也会被保存,备份文件较大 |
tar 备份详解
Linux 不限制根用户存取任何东西,因此可以把一个分区上每一个文件放入一个 TAR 文件中。
切换到 / 目录,然后使用下面的命令备份完整的系统:
tar cvpzf backup.tgz / \\
--exclude=/proc \\
--exclude=/lost+found \\
--exclude=/backup.tgz \\
--exclude=/mnt \\
--exclude=/sys
或指定路径:
tar cvpzf /state/partition1/home/backup.tgz / \\
--exclude=/proc \\
--exclude=/lost+found \\
--exclude=/backup.tgz \\
--exclude=/mnt \\
--exclude=/sys
参数说明:
c— 创建压缩文档v— 显示过程p— 保存权限z— 使用 gzip 压缩f— 指定文件名
也可以使用 bzip2 压缩(压缩比更高,速度更慢),将 z 换成 j:
tar cvpjf backup.tar.bz2 / \\
--exclude=/proc \\
--exclude=/lost+found \\
--exclude=/backup.tar.bz2 \\
--exclude=/mnt \\
--exclude=/sys
在进程的最后也许会得到一条信息,写着「tar:由于先前错误的耽搁而存在错误」或其他类似提示,大多数情况下可以忽略。
恢复
确保要在 / 目录下,且备份的 tar 包也在该位置。
# gzip 格式
tar xvpfz backup.tgz -C /
# bzip2 格式
tar xvpfj backup.tar.bz2 -C /
警告:这会把你分区里所有文件替换成压缩文档里的文件!
确保在恢复之后,重新创建剔除的目录:
mkdir /proc
mkdir /lost+found
mkdir /mnt
mkdir /sys
| 目录 | 权限 |
|---|---|
/proc | 555 |
/lost+found | 700 |
/mnt | 755 |
/sys | 555 |
常见问题
还原后重启电脑一直提示用户名和密码,登不进系统:
解决方法:还原后执行以下命令再重启:
restorecon -Rv /
评论
已显示全部评论