13.2 Linux中的哪些数据需要备份?

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 经常使用 Windows 系统的小伙伴应该听说过 ghost 软件,它可以实现将整个系统完全复制到另一个硬盘上。当系统出现问题,通过

经常使用 Windows 系统的小伙伴应该听说过 ghost 软件,它可以实现将整个系统完全复制到另一个硬盘上。当系统出现问题,通过
备份硬盘,在短时间内即可将系统中的所有数据完全恢复。

ghost 是一种硬盘镜像技术,可以将系统盘中的所有数据镜像到另一个备份硬盘上。

虽然在 Linux 系统中也有类似 ghost 的工具(dd 命令就可以实现整盘备份),不过这种备份花费的时间比较长,占用的硬盘空间较大,
不太适合经常进行。

事实上,全盘备份 Linux 系统并不是一个好的策略,我们仅需要备份系统中的所有重要文件数据即可,不但备份过程迅速,恢复也快。那么,哪些数据是 Linux 服务器中较为重要的、需要定时备份的数据呢?

我个人认为,需要备份的文件大致可分为 2 类,分别是系统级配置文件和用户级配置文件。

系统级配置文件

系统配置文件主要指的是系统全局的一些配置信息,比如说:

  • /root/ 目录:/root/ 目录是管理员的家目录,很多管理员会习惯在这个目录中保存一些相关数据,那么,当进行数据备份时,需要备份此目录。
  • /home/ 目录:/home/ 目录是普通用户的家目录。如果是生产服务器,那么这个目录中也会保存大量的重要数据,应该备份。
  • /var/spool/mail/ 目录:在默认情况下,所有的用户未读的邮件会保存在 /var/spool/mail/ 目录下和用户名相同的邮箱文件中,已读的邮件会保存在用户家目录下的 mbox 文件中(mail 命令默认如此保存,不过如果使用了 hold 命令,那么不管邮件是否已读,都保存在 /var/spool/mail/ 目录中。可以使用 mbox 命令恢复已读邮件保存在“~/mbox”文件中)。一般情况下,用户的邮件也是需要备份的重要数据。
  • /etc/ 目录:系统重要的配置文件保存目录,当然需要备份。
  • 其他目录:根据系统的具体情况,备份你认为重要的目录。比如,我们的系统中有重要的日志,或者安装了 RPM 包的 MySQL 服务器(RPM 包安装的 mysql 服务,数据库保存在 /var/lib/mysql/ 目录中),那么 /var/ 目录就需要备份;如果我们的服务器中安装了多个操作系统,或编译过新的内核,那么 /boot/ 目录就需要备份。

以上这些目录对系统的运行至关重要,并且针对不同的系统应用,其设置也不尽相同。如果丢失的这些文件,即使新的操作系统能很快安装完毕,对系统也要重新配置,花费的时间会更长。

用户级配置文件

用户级配置文件,也就是用户业务应用与系统相关的配置文件,这些文件是运行业务应用必不可少的,一旦丢失,应用将无法启动。

我们的 Linux 服务器中会安装各种各样的应用程序,每种应用程序到底应该备份什么数据也不尽相同,要具体情况具体对待。这里拿最常见的 apache 服务和 mysql 服务来举例。

apache 服务需要备份如下内容:

  • 配置文件:RPM 包安装的 apache 需要备份 /etc/httpd/conf/httpd.conf;源码包安装的 apache 则需要备份 /usr/local/apache2/conf/httpd.conf。
  • 网页主目录:RPM 包安装的 apache 需要备份 /var/www/html/ 目录中所有的数据;源码包安装的 apache 需要备份 /usr/local/apache2/htdocs/ 目录中所有的数据。
  • 日志文件:RPM 包安装的 apache 需要备份 /var/log/httpd/ 目录中所有的日志;源码包安装的 apache 需要备份 /usr/local/apache2/logs/ 目录中所有的日志。

其实,对源码包安装的 apache 来讲,只要备份 /usr/local/apache2/ 目录中所有的数据即可,因为源码包安装的服务的所有数据都会保存到指定目录中。但如果是 RPM 包安装的服务,就需要单独记忆和指定了。

mysql 服务需要备份如下内容:

  • 对于源码包安装的 mysql 服务,数据库默认安装到 /usr/local/mysql/data/ 目录中,只需备份此目录即可。
  • 对于 RPM 包安装的 mysql 服务,数据库默认安装到 /var/lib/mysql/ 目录中,只需备份此目录即可。

如果是源码包安装的服务,则可以直接备份 /usr/local/ 目录,因为一般源码包服务都会安装到 /usr/local/ 目录中。如果是 RPM 包安装的服务,则需要具体服务具体对待,备份正确的数据。

以上重要的文件和目录,是必须要备份的,那么,不需要备份的目录有哪些呢?比如 /dev 目录、/proc 目录、/mnt 目录以及 /tmp 目录等,这些目录是不需要备份的,因为这些目录中,要么是内存数据,要么是临时文件,没有重要的数据。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
183 3
|
2月前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
90 3
|
3月前
|
弹性计算 Linux 数据库
阿里云国际版如何迁移Linux云服务器系统盘中的数据
阿里云国际版如何迁移Linux云服务器系统盘中的数据
|
5月前
|
缓存 NoSQL Linux
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
153 1
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
|
5月前
|
Linux
Linux 系列之 在一个文本中查找指定的数据
文章介绍了在Linux命令行中使用文本搜索功能快速查找指定内容的方法,并提供了按`n`键查找下一个匹配项的技巧。
Linux 系列之 在一个文本中查找指定的数据
|
5月前
|
Linux 开发工具
linux下使用gcp拷贝数据的时候显示进度条
linux下使用gcp拷贝数据的时候显示进度条
39 2
|
5月前
|
存储 Linux 数据库
在Linux中,什么是快照备份?
在Linux中,什么是快照备份?
|
5月前
|
存储 Linux 数据安全/隐私保护
在Linux中,如何创建文件系统的备份?
在Linux中,如何创建文件系统的备份?
|
5月前
|
Linux 数据库
在Linux中,什么是冷备份和热备份?
在Linux中,什么是冷备份和热备份?
|
5月前
|
Unix Linux 测试技术
在Linux中,如何恢复备份的文件?
在Linux中,如何恢复备份的文件?