使用GNU Tar备份Linux

介绍

既然您已经在Vultr上配置了完善的Linux服务器,则需要为其选择备份解决方案。GNU tar是一个很好的选择-它可靠并且可以轻松备份和还原服务器。

基本语法

Tar使用以下语法。

sudo /usr/bin/tar -czpvf /home/john/backup/linux_backup.tar.gz /
  • -c:存档。
  • -z:使用GZip格式进行备份。GZip速度很快,但与其他压缩工具相比,它生成的文件更大。
  • -p:保留权限,以便还原备份时不会遇到权限问题。
  • -v:显示备份期间的详细信息。-v如果您不想看到详细的输出,请忽略。
  • -f:指定将tar文件存储在何处。在这里,我们将备份文件保存到backup用户John的主目录下的目录中,并将其命名为linux_backup.tar.gz
  • /:Linux根文件系统。这意味着要备份整个磁盘,包括所有已安装的驱动器,因此请小心,确保排除不希望使用其备份的文件夹或文件excluded.txt(如下所述)。

增强功能

排除不需要(或不需要)备份的文件。

sudo /usr/bin/tar --exclude-from=/home/john/exclude.txt -czpvf /home/john/backup/linux_backup.tar.gz /

使用--exclude-from=/home/john/exclude.txt在一个文件中指定排除。exclude.txt下面粘贴了一个示例。

/home/john/backup/*
/tmp/*
/proc/*
/dev/*
/sys/*
/run/*
/var/tmp/*
/var/run/*
/var/lock/*
/usr/portage/*
/usr/src/*

在此示例中,我排除了/home/john/backup/*,否则第一个备份将包含在第二个备份中,依此类推。

在每一个Linux系统的/tmp/*/proc/*/dev/*/sys/*,和/run/*是动态创建的,所以你并不需要将它们包括在备份中,但你需要保持目录结构。因此,你需要使用/proc/*excluded.txt,而不是/proc

您可以添加其他不想备份的文件和文件夹。在上面的示例中,我包含了/usr/portage/*/usr/src/*。这些是特定于Ge​​ntoo Linux的。第一个包含Gentoo软件包的ebuild和源代码。第二个包含Gentoo Linux内核源代码。它们很大,在系统还原后都可以再次下载。随意编辑excluded.txt以满足您的需求。

将当前日期添加到备份名称

 sudo /usr/bin/tar --exclude-from=/home/john/exclude.txt -czpvf /home/john/backup/linux_backup-$(date +%F-%H-%M).tar.gz /

使用$(date +%F-%H-%M),当前日期,小时和分钟将添加到备份文件名。例如,linux_backup-2015-07-02-15-22.tar.gz

使用GZip以外的更好的压缩程序

sudo /usr/bin/tar --exclude-from=/home/john/exclude.txt -cJpvf /home/john/backup/linux_backup-$(date +%F-%H-%M).tar.xz /

-J可以替换该开关-z以使用Xz进行压缩。还将扩展名更改为tar.xz。Xz比GZip慢,但压缩率要好得多,因此备份文件更小。

将所有内容放入Shell脚本

创建一个脚本。

vim /home/john/bin/linux_backup.sh

在脚本中包含以下代码。

#!bin/sh
_tarfile=/home/john/backup/linux_backup-$(date +%F-%H-%M).tar.xz
sudo /usr/bin/tar --exclude-from=/home/john/exclude.txt -cJpvf $ /

授予脚本执行权限。

 sudo chmod +x  /home/john/bin/linux_backup.sh

执行备份。

 /home/john/bin/linux_backup.sh


Leave a Comment

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息