VPS的Ubuntu服务器完整备份

备份数据有几种方法,但在此我们展示使用Ubuntu内置的tar压缩工具的方式。

バックアップファイルの作成

首先,创建一个目录以保存备份。

mkdir /home/<username>/backup

为了方便以后进行备份,创建一个备份脚本。

vi /home/<username>/backup/backup.sh

在备份脚本中添加以下命令。

#!/bin/bash
BACKUP_DIR="/home/<username>/backup"
TIMESTAMP=$(date +"%Y%m%d%H%M%S")
tar -czvfp $BACKUP_DIR/backup_$TIMESTAMP.tar.gz --exclude=$BACKUP_DIR --exclude=/proc --exclude=/tmp --exclude=/mnt --exclude=/dev --exclude=/sys /

ここでtarは圧縮コマンドで指定したオプションは

-c 新しいアーカイブを作る
-z アーカイブをgzip形式で圧縮する
-v 処理したファイルを詳しく出力する。
-f アーカイブファイル名を指定する
-p 所有者などのファイル属性を保持する。
—exclude 除外するディレクトリやファイルを指定する

である。
また、除外したディレクトリは以下である。

/proc是一个包含进程信息的目录,在普通的文件系统中与众不同,它不是存储在硬盘或SSD等存储设备上,而是存储在内存中。
/tmp是一个用于存放临时文件的目录,用于保存程序在运行时临时使用的文件。
/mnt是一个虚拟目录,包含用于访问新添加的存储设备等的挂载点。
/dev是一个表示硬件和虚拟设备的目录。
/sys是存放设备和驱动程序的配置文件的目录。

可以指定一个最终要进行归档的目录,并将其指定为根目录下的所有内容。

バックアップスクリプトを実行する。すべてのファイルにアクセスできるようにroot権限で行う。

sudo /home/<username>/backup/backup.sh

备份文件传输

一旦创建存档文件后,使用scp将其传送到希望备份的机器上。
如果要传送到本地机器上,需在未连接到主机机器的客户端机器的终端上操作。

scp -P <ポート番号> -i <認証鍵のパス> <username>@<ipアドレス>:/home/<username>/backup/<backupfile> <保存先のパス>

在中国,与ssh不同,要指定端口必须使用大写的-P选项。对于IPv6,必须用\[ \]来括起来描述IP地址。

恢复备份数据

设置一个用于恢复的新Ubuntu服务器并将Ubuntu安装在新服务器上,建立SSH连接。
创建一个用于恢复备份文件的目录,例如,创建一个名为/home/<用户名>/restore的目录。

mkdir /home/<username>/restore

将备份文件传输到新服务器。如果要从本地计算机使用SCP命令将备份文件传输到新服务器上,则可以按以下方式进行。

scp -P <ポート番号> -i <認証鍵のパス> <バックアップファイルの送信元のパス> <username>@<ipアドレス>:/home/<username>/restore 

在主机上将备份文件解压缩到根目录。

cd /
sudo tar -xzvf /home/<username>/restore /<backup_file>.tar.gz

-x是一个展开选项。

当展开时,若有相同文件名,则会被覆盖并完成恢复。恢复完成后,请重新启动。

sudo reboot

当新服务器重新启动后,从备份中恢复的系统将可用。

根据IP地址进行的配置更改

需要查找IP地址,如果有一个包含原先系统IP地址的文件,那么需要更改IP地址。例如,在/etc目录中检查是否有之前的IP地址。

grep -r <ipアドレス> /etc

假设这样做就好。

广告
将在 10 秒后关闭
bannerAds