CYA – 适用于 Linux 的系统快照和还原实用程序

氰化物, 代表 C超过 我们的 一个ssets 是一个免费的开源系统快照和恢复实用程序,适用于任何使用 BASH shell 的类 Unix 操作系统。 Cya 是可移植的,支持许多流行的文件系统,例如 EXT2/3/4、XFS、UFS、GPFS、reiserFS、JFS、BtrFS 和 ZFS 等。请注意 Cya 不会备份实际的用户数据. 它只备份和恢复操作系统本身。 Cya实际上是一个系统还原实用程序. 默认情况下,它将备份所有关键目录,如 /bin/、/lib/、/usr/、/var/ 和其他几个。 但是,您可以定义自己的目录和文件路径以包含在备份中,因此 Cya 也会选择它们。 此外,可以定义一些目录/文件以从备份中跳过。 例如,如果您不记录文件,则可以跳过 /var/logs/。 Cya 实际上使用 同步 后台备份方法。 但是,在创建滚动备份时,Cya 比 Rsync 更容易一些。

恢复操作系统时,Cya 将使用您之前创建的备份配置文件回滚操作系统。 您既可以恢复整个系统,也可以只恢复任何特定目录。 即使没有使用终端或文件管理器完全回滚,您也可以轻松访问备份文件。 另一个值得注意的功能是,当您从 Live CD、USB 或网络映像恢复时,我们可以生成自定义恢复脚本来自动挂载您的系统分区。 简而言之,当您最终因软件更新、配置更改和入侵/黑客等原因导致系统损坏时,CYA 可以帮助您将系统恢复到以前的状态。

内容

  1. 安装 CYA
  2. 创建快照
  3. 排除目录
  4. 将特定文件添加到备份
  5. 恢复您的系统
  6. 安排 CYA 备份
  7. 结论
  8. 帮助我们帮助您:

安装 CYA

安装 CYA 很简单。 您所要做的就是下载 Cya 二进制文件并将其放在您的系统路径中。

$ git clone https://github.com/cleverwise/cya.git

这将在当前工作目录中名为 cya 的目录中克隆最新的 cya 版本。

接下来,将 cya 二进制文件复制到您的路径或您想要的任何位置。

$ sudo cp cya/cya /usr/local/bin/

就是这么简单。 已安装 CYA! 现在让我们继续创建快照。

创建快照

在创建任何快照/备份之前,创建一个 恢复脚本 使用命令:

$ cya script ☀ Cover Your Ass(ets) v2.2 ☀  ACTION ⯮ Generating Recovery Script  Generating Linux recovery script ...  Checking sudo permissions... Complete  IMPORTANT: This script will ONLY mount / and /home. Thus if you are storing data on another mount point open the recovery.sh script and add the additional mount point command where necessary. This is also a best guess and should be tested before an emergency to verify it works as desired.   ‣ Disclaimer: CYA offers zero guarantees as improper usage can cause undesired results ‣ Notice: Proper usage can correct unauthorized changes to system from attacks

上面的命令将创建一个名为 “/家/cya/” 并将 recovery.sh 文件保存在其中。

$ ls /home/cya/ cya cya.conf LAST_RUN points recovery.sh

Save 所结果的 恢复.sh 文件在您的 USB 驱动器中,我们将在稍后恢复备份时使用它。 此脚本将帮助您设置 chrooted 环境并在您回滚系统时安装驱动器。

现在,让我们创建快照。

要创建标准滚动备份,请运行:

$ cya save

上面的命令将保持 三个备份 在覆盖之前。

样本输出:

☀ Cover Your Ass(ets) v2.2 ☀  ACTION ⯮ Standard Backup  Checking sudo permissions... [sudo] password for sk:  We need to create /home/cya/points/1 ... done Backing up /bin/ ... complete Backing up /boot/ ... complete Backing up /etc/ ... complete . . . Backing up /lib/ ... complete Backing up /lib64/ ... complete Backing up /opt/ ... complete Backing up /root/ ... complete Backing up /sbin/ ... complete Backing up /snap/ ... complete Backing up /usr/ ... complete Backing up /initrd.img ... complete Backing up /initrd.img.old ... complete Backing up /vmlinuz ... complete Backing up /vmlinuz.old ... complete Write out date file ... complete Update rotation file ... complete  ‣ Disclaimer: CYA offers zero guarantees as improper usage can cause undesired results ‣ Notice: Proper usage can correct unauthorized changes to system from attacks

您可以在下面查看新创建的快照的内容 /首页/cya/积分/ 地点。

$ ls /home/cya/points/1/ bin cya-date initrd.img lib opt sbin usr vmlinuz boot etc initrd.img.old lib64 root snap var vmlinuz.old

要使用不会被覆盖的自定义名称创建备份,请运行:

$ cya keep name BACKUP_NAME

代替 BACKUP_NAME 用你自己的名字。

要使用将覆盖的自定义名称创建备份,请执行以下操作:

$ cya keep name BACKUP_NAME overwrite

要创建备份并将其存档,请运行:

$ cya keep name BACKUP_NAME archive

该命令将备份存储在 /home/cya/档案 地点。

默认情况下,CYA 会将其配置存储在 / 主页 / cya / 目录和具有自定义名称的快照将存储在 /home/cya/points/BACKUP_NAME 地点。 我们可以通过编辑存储在以下位置的 CYA 配置文件来更改这些设置 /home/cya/cya.conf.

就像我已经说过的, CYA默认不会备份用户数据. 它只会备份重要的系统文件。 但是,您可以将自己的目录或文件与系统文件一起包含在内。 例如,如果您想添加名为的目录 /home/sk/下载 备份中的目录,编辑 /home/cya/cya.conf 文件:

$ vi /home/cya/cya.conf

定义您想要包含在备份中的目录数据路径,如下所示。

MYDATA_mybackup="/home/sk/Downloads/ /mnt/backup/sk/"

请注意,源目录和目标目录都应以斜杠结尾。 按照上面的配置,CYA会复制所有的内容 /home/sk/下载/ 目录并将它们保存在 /mnt/备份/sk/(假设您已经创建了这个)目录。 这里 我的备份 是配置文件名称。 打 退出 并输入 :wq 保存和 close 文件。

现在让我们备份 /home/sk/Downloads/ 目录的内容。 为此,您需要使用 我的数据 命令如下:

$ cya mydata mybackup

同样,您可以包含具有不同配置文件名称的多个用户数据。 所有配置文件名称必须是唯一的。

排除目录

有时,您可能不想备份所有系统文件。 您可能希望排除一些不重要的,例如日志文件。 例如,如果您不想包含 /var/tmp//var/日志/ 目录,添加以下内容 /home/cya/cya.conf 文件。

EXCLUDE_/var/=”tmp/ logs/”

同样,您可以一一指定要从备份中排除的所有目录。 完成后,保存并 close 文件。

将特定文件添加到备份

您可以包含目录中的特定文件,而不是创建整个目录的备份。 为此,将文件的路径一一添加到 /home/cya/cya.conf 文件。

BACKUP_FILES="/home/sk/Downloads/ostechnix.txt"

恢复您的系统

请记住,我们已经创建了一个名为 恢复.sh 并将其保存在 USB 驱动器中? 我们现在需要它来恢复我们损坏的系统。

使用任何实时可启动 CD/DVD、USB 驱动器启动您的系统。 CYA 的开发人员建议使用与您安装的环境相同的主要版本的实时引导环境! 例如,如果您使用 Ubuntu 18.04 系统,则使用 Ubuntu 18.04 直播媒体。

进入实时系统后,安装包含 recovery.sh 脚本的 USB 驱动器。 安装驱动器后,您的系统 //家 将安装到 / mnt / 的 目录。 这非常容易并由 恢复.sh Linux 用户的脚本。

然后,使用命令启动恢复过程:

$ sudo /mnt/cya/home/cya/cya restore

只需按照屏幕上的说明进行操作。 恢复完成后,移除活动媒体并卸载驱动器,最后重新启动系统。

如果您没有或丢失恢复脚本怎么办? 没问题,我们仍然可以恢复损坏的系统。

启动实时媒体。 从实时会话中,创建一个目录来安装驱动器。

$ sudo mkdir -p /mnt/cya

然后,安装你的 //家 (如果在另一个分区上)进入 / mnt / 的 目录。

$ sudo mount /dev/sda1 /mnt/cya
$ sudo mount /dev/sda3 /mnt/cya/home

将 /dev/sda1 和 /dev/sda3 替换为正确的分区(使用 fdisk -l 命令来查找您的分区)。

最后,使用命令开始恢复过程:

$ sudo /mnt/cya/home/cya/cya restore

恢复完成后,卸载所有已安装的分区并移除安装介质并重新启动系统。

在这个阶段,你可能会得到一个工作系统。 我在 Ubuntu 18.04 LTS 服务器中删除了一些重要的库。 我使用 CYA 实用程序成功地将其恢复到工作状态。

  • Systemback – 将 Ubuntu 桌面和服务器恢复到以前的状态
  • 如何在 Ubuntu 中降级软件包
  • 如何在 Arch Linux 中降级软件包
  • 如何在 Arch Linux 中将所有软件包降级到特定日期
  • 如何将损坏的 Arch Linux 恢复到以前的工作状态
  • 如何将 Ubuntu 重置为出厂默认设置

安排 CYA 备份

始终建议使用 crontab 定期安排 CYA 快照进程。 您可以使用 root 设置 cron 作业或设置不需要输入 sudo 密码。

下面的示例条目将在每周一凌晨 2:05 运行 cya,并将输出转储到 /dev/null。

5 2 * * 1 /home/USER/bin/cya save >/dev/null 2>&1

结论

与 Systemback 和其他系统还原实用程序不同,Cya 不是特定于发行版的还原实用程序。 它支持许多使用 BASH 的 Linux 操作系统。 它是您的武器库中必备的应用程序之一。 立即安装并创建快照。 当您不小心使您的 Linux 系统崩溃时,您不会后悔。

资源:

  • CYA GitHub 存储库

感谢您的光临!

帮助我们帮助您:

  • 订阅我们的电子邮件通讯: 立即注册
  • 支持 OSTechNix: 通过贝宝捐款
  • 下载免费的电子书和视频: TradePub 上的 OSTechNix
  • 联系我们: 红迪网 | Facebook | 推特 | 领英 | RSS订阅

祝你有美好的一天!!

备份CLICYALinux开源恢复