Ubuntu server备份与恢复

描述

我们有一台Ubuntu server(服务器),想要对整个服务器进行备份和恢复,应该怎么操作呢?

备份:意思就是,拷贝整个服务器的配置和文件
恢复:用之前的备份,将现在服务器洗掉,恢复成备份时的样子

下面的操作已经亲自验证过了

参考文献
https://www.cnblogs.com/zhumengke/articles/9529509.html

解决方案

1. 连接到服务器

一般来说,服务器都是没有UI界面的,也是不用配上显示器的。
如果你对服务器连接上显示器,显示的界面会是类似boot界面的命令行

因此对服务器进行备份,首先需要ssh进服务器

命令:

ssh 服务器的用户名@服务器的ip地址

举例子

ssh chen@192.168.1.10

随后系统会提示输入密码,请你输入服务器的登录密码即可

2. 备份操作

切换到root用户

sudo su

然后进入“/”目录

cd /

备份命令,会在/home路径下生成一个名字为backup.tar.gz的压缩包

sudo tar -zcpf /home/backup.tar.gz --exclude=/proc --exclude=/lost+found --exclude=/sys --exclude=/cdrom --exclude=/mnt --exclude=/media --exclude=/home/ide/ --exclude=/home/java/ --exclude=/home/WORKING_DIRECTORY/ --exclude=/home/workspace/ --exclude=/home/aosp-latest.tar --exclude=/home/backup.tar.gz /

备份命令的解释

tar : 这不用多说
-zcpf: tar命令打包的设置,可自行查询
/home/backup.tar.gz:压缩后的文件名
--exclude: 一些忽略文件
一定不要忘记最后的 / , 代表被压缩的目录

生成压缩包过程中可能出现的问题

tar: Exiting with failure status due to previous errors 

提示意识:你打包失败了,真正的错误在上面写了
这个问题其实不是真正的错误信息, 真正的错误信息混杂在标准输出(stout)中, 重新执行命令并把tar命令后面跟着的-v参数去掉即可看到真正问题所在。

原压缩命令应该是(sudo tar -vzcpf),它会打印出每个文件夹压缩的过程,我上面写的压缩命令已经将v参数去掉了(sudo tar -zcpf),这样只会打印出哪个文件夹压缩存在问题,你就可以去查看问题了

tar: Removing leading ’/‘ from member names 
或者
tar: Removing leading ’/‘ from hard link targets 

这个问题其实不影响程序的执行,产生的原因是tar在压缩的过程中自动帮我们去掉了路径前的“/”,也就是tar压缩后的包是按照相对路径压缩的。 当我们恢复时, 就需要通过 -C 参数手动指定解压到 “/” 目录, 如:tar xvpfj ubuntu_20170120_11.tar.bz2 -C /
可以使用-P参数来指定按照绝对路径打包:

tar: ......(一个路径): file changed as we read it 
或者
tar: .....(一个路径): socket ignored 

这个socket ignored产生的原因是压缩的过程中文件正在使用,无需理会,不影响压缩。

tar: .....(一个路径): Cannot open: Permission denied

这个问题不用理会,与虚拟文件系统有关,不影响压缩。

3. 恢复操作

注意,你还是要切换到root用户并且切换到/分支
解压缩命令

tar xvpfz /home/backup.tar.gz -C /

操作正确性的确认

你可以在系统上安装一个软件包,建议你安装cmake,比较简单。再在某个路径下建立一个文件,我在/home下新建了一个1.py文件

sudo apt-get install cmake
cd /home
touch 1.py

在终端输入命令cmake,终端会提示如下,代表你已经成功安装了cmake。你还可以去/home下确认1.py的存在

Usage

  cmake [options] <path-to-source>
  cmake [options] <path-to-existing-build>

Specify a source directory to (re-)generate a build system for it in the
current working directory.  Specify an existing build directory to
re-generate its build system.

Run 'cmake --help' for more information.

随后执行解决方案中所写的服务器备份操作,会在/home路径下生成一个名字为backup.tar.gz的压缩包

随后你可以删去刚才装的cmake功能包,并删除1.py

sudo apt-get remove cmake
cd /home
rm -rf 1.py

再在终端输入命令cmake,会提示cmake并没有安装,去/home下也会发现1.py已经成功被删除了

bash: /usr/bin/cmake: No such file or directory

执行恢复操作后,你可以发现执行cmake又重新成功,1.py也回来了。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ubuntu Server 克隆和恢复是指在 Ubuntu 服务器上创建克隆副本或者备份,在需要的时候恢复到原始状态。下面我将详细介绍如何进行克隆和恢复。 1. 克隆 Ubuntu Server: - 首先,确保服务器上已安装了合适的克隆软件,如 Clonezilla。 - 创建一个用于存储克隆副本的外部存储设备,如 USB 驱动器。 - 将服务器关机,并将克隆软件的光盘或 USB 驱动器插入服务器。 - 启动服务器并从克隆软件启动,按照克隆软件的操作指南选择克隆源和目标设备。 - 等待克隆过程完成,然后将克隆副本外部存储设备从服务器中取出。 2. 恢复 Ubuntu Server: - 将克隆副本外部存储设备插入需要恢复的服务器。 - 启动服务器,并通过 BIOS 设置引导顺序以从外部存储设备启动。 - 选择克隆软件的激活克隆恢复选项,按照软件的操作指南选择克隆副本和目标设备。 - 等待恢复过程完成,然后重新启动服务器从恢复后的系统启动。 需要注意的是,在克隆和恢复 Ubuntu Server 时要进行适当的备份,以防止数据丢失或损坏。确保克隆副本和目标设备有足够的存储空间,以容纳系统和数据。在进行恢复前,验证克隆副本的完整性,以确保克隆副本没有受到任何损坏或错误。 克隆和恢复 Ubuntu Server 可以帮助加快系统部署和恢复速度,减少手动配置的工作量。无论是用于创建开发环境还是备份生产服务器,这些步骤都是非常有用的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值