备份资料的考虑

老实说,备份是系统损毁时等待救援的救星!因为你需要重新安装系统时, 备份的好坏会影响到你 系统复原的进度!事实上,系统有可能由于不预期的伤害而导致系统发生错误! 什么是不预期的伤害呢?这是由于系统 可能因为不预期的硬件损坏,例如硬盘坏掉等等,或者是软件问题导致系统出错, 包括人为的操作 不当或是其他不明因素等等所致。

  • 造成系统损毁的问题-硬件问题

  • 造成系统损毁的问题-软件与人的问题

  • 主机角色不同,备份任务也不同


  • 备份因素考虑

由于计算机 (尤其是目前的计算机,操作频率太高、硬件良率太差、使用者操作习惯不良、『某些』 操作系统的当机率太高....) 的稳定性较差,所以啰!备份的工作就越来越重要了! 那么一般我们在 备份时考虑的因素有哪些呢?

  • 备份哪些文件:

哪些数据对系统或用户来说是重要的?那些数据就是值得备份的数据!例如 /etc/* 及 /home/* 等。

  • 选择什么备份的媒介:

是可擦写光盘、另一颗硬盘、同一颗硬盘的不同 partition、还是使用网络备援系统? 哪一种的速度最快, 最便宜,可将数据保存最久?这都可以考虑的。

  • 考虑备份的方式:

是以完整备份(类似 ghost)来备份所有数据,还是使用差异备份仅备份有被更动过的数据即可?

  • 备份的频率:

例如 Mariadb 数据库是否天天备份、若完整备份,需要多久进行一次?

  • 备份使用的工具为何:

是利用 tar 、 cpio 、 dd 还是 dump 等等的备份工具?

哪些 Linux 数据具有备份的意义

一般来说,鸟哥比较喜欢备份最重要的文件而已 (关键数据备份),而不是整个系统都备份起来 (完整 备份, Full backup)!那么哪些文件是有必要备份的呢?具有备份意义的文件通常可以粗分为两大类,一类是系统基本设定信息、一类则是类似网络服务的内容数据。


  • 操作系统本身需要备份的文件:

这方面的文件主要跟『账号与系统配置文件』有关系! 主要有哪些账号的文件需要备份呢?就是 /etc/passwd, /etc/shadow, /etc/group, /etc/gshadow, /home 底下的用户家目录等等,而由于
Linux 预设的重要参数档都在 /etc/ 底下,所以只要将这个目录备份下来的话, 那么几乎所有的配 置文件都可以被保存的!

至于 /home 目录是一般用户的家目录,自然也需要来备份一番!再来,由于使用者会有邮件吧!所 以呢,这个 /var/spool/mail/ 内容也需要备份呦!另外,由于如果你曾经自行更动过核心,那么 /boot 里头的信息也就很重要啰!所以啰,这方面的数据你必须要备份的文件为:

  • /etc/ 整个目录
  • /home/ 整个目录
  • /var/spool/mail/
  • /var/spoll/{at|cron}/
  • /boot/
  • /root/
  • 如果你自行安装过其他的软件,那么 /usr/local/ 或 /opt 也最好备份一下!

  • 网络服务的数据库方面:

使用者主动提供的文件,以及服务运作过程会产生 的数据, 都需要被考虑来备份。若我们假设我们提供的服务软件都是使用原厂的 RPM 安装的!所 以要备份的数据文件有:

  • 软件本身的配置文件案,例如:/etc/ 整个目录,/usr/local/ 整个目录
  • 软件服务提供的数据,以 WWW 及 Mariadb 为例:
  • WWW 资料:/var/www 整个目录或 /srv/www 整个目录,及系统的用户家目录
  • Mariadb : /var/lib/mysql 整个目录
  • 其他在 Linux 主机上面提供的服务之数据库文件!

  • 推荐需要备份的目录:

由上面的介绍来看的话,如果你的硬件或者是由于经费的关系而无法全部的数据都予以备份时, 鸟 哥建议你至少需要备份这些目录呦!

  • /etc
  • /home
  • /root
  • /var/spool/mail/, /var/spool/cron/, /var/spool/at/
  • /var/lib/

  • 不需要备份的目录:

底下有些目录可以不需要备份啦!

  • /dev :这个随便你要不要备份
  • /proc, /sys, /run:这个真的不需要备份啦!
  • /mnt, /media:如果你没有在这个目录内放置你自己系统的东西,也不需要备份
  • tmp :干嘛存暂存档!不需要备份!

备份用储存媒体的选择

  • 异地备援系统

简单的说,就是将你的系统数据『备份』到其他的地方去, 有没有缺点啊?有啊!缺点就是~带宽严重的不足! 在这种状态下,所能采取的策略大概就是『仅 将最重要的数据给他传输回去啰!』


  • 储存媒体的考虑

在此同时,我们再来谈一谈,那么除了异地备援这个『相对较为安全的备份』方法之外, 还有没有 其他的方法可以储存备份的呢?毕竟这种网络备援系统实在是太耗带宽了!

在过去我们使用的储存媒体可能有 Tape, Mo, Zip, CD-RW, DVD-RW, 外接式磁盘等等, 近年来由于 磁盘容量不断上提,加上已经有便宜的桌上型 NAS 储存设备,这些 NAS 储存设备就等于是一部小 型 Linux server, 里面还能够提供客制化的服务,包括不同的连接界面与传输协议,因此,你只要记 得,就是买还能够自我容错的 NAS 设备来备份就对了!

Linux学习-备份要点的更多相关文章

  1. Linux学习之要点必备

    在本节课中我将会带领大家秒懂linux命令 要点一:常见基本命令格式 命令名称+选项+参数 例如:#mkdir -r /var/ruofeng/001/ 我们通过逐级创建目录方式解释这个例子,mkdi ...

  2. Linux学习-备份的种类、频率与工具的选择

    完整备份之累积备份 (Incremental backup) 还原的考虑 如果是完整备份的话.若硬件出问题导致系统损毁时,只要将完整备份拿出来,整个给他倾倒回去硬盘, 所有事情就搞定了!有些时候 (例 ...

  3. Linux学习-备份策略

    每部主机的任务都不相同,重要的数据也不相同,重要性也不一样,因此,每个人的备份思考角度都不一样! 备份分为两大部分,一个是每日备份经常性变动的重要数据, 一个则是每周备份就不常变动的信息.这个时候我就 ...

  4. 虚拟机上的Linux学习

    title: 虚拟机上的Linux学习 date: 2018-08-08 15:48:28 updated: tags: [Linux,学习笔记] description: keywords: com ...

  5. linux学习书籍推荐《鸟哥的Linux私房菜》下载

    下载地址:点我 <鸟哥的Linux私房菜:基础学习篇>是具有知名度的Linux入门书<鸟哥的Linux私房菜基础学习篇>的最新版,全面而详细地介绍了Linux操作系统.< ...

  6. Linux学习内容

    Linux学习要点(转载自红联) 一.学习Linux的基本要求1. 掌握至少50个以上的常用命令. 2. 熟悉Gnome/KDE等X-windows桌面环境操作 . 3. 掌握.tgz..rpm等软件 ...

  7. Linux 学习笔记

    Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...

  8. Linux学习历程(持续更新整理中)

    1.文件目录操作命令 (1) ls   显示文件和目录列表 a ls -l  显示文件的详细信息 b ls -a 列出当前目录的所有文件,包含隐藏文件. c stat '目录/文件'   显示指定目录 ...

  9. Linux dd——备份命令

    Linux学习笔记之备份命令dd 功能:把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换.可以用该命令实现DOS下的diskcopy命令的作用.先用dd命令把软盘上的数据写成硬 ...

随机推荐

  1. Python 踩坑之旅进程篇其三pgid是个什么鬼 (子进程\子孙进程无法kill 退出的解法)

    目录 1.1 踩坑案例 1.2 填坑解法 1.3 坑位分析 1.4.1 技术关键字 下期坑位预告 代码示例支持 平台: Centos 6.3 Python: 2.7.14 Github: https: ...

  2. nodejs 实践:express 最佳实践(六) express 自省获得所有的路由

    nodejs 实践:express 最佳实践(六) express 自省获得所有的路由 某些情况下,你需要知道你的应用有多少路由,这在 express 中没有方法可以.因此我这边曲线了一下,做成了一个 ...

  3. restframework安装及APIView分析

    一.restframework的安装 方式一:pip3 install djangorestframework 方式二:pycharm图形化界面安装 方式三:pycharm命令行下安装(装在当前工程所 ...

  4. CF1166C A Tale of Two Lands

    思路: 搞了半天发现和绝对值无关. http://codeforces.com/blog/entry/67081 实现: #include <bits/stdc++.h> using na ...

  5. dedecms会员中心编辑器无法上传图片

    文件:include\dialog\config.php 找到这行代码: $cuserLogin = new userLogin(); 把上面代码下面的这些注释掉: if($cuserLogin-&g ...

  6. HDU 2149 Public Sale 拍卖(巴什博弈)

    思路:只要能给对方留下n+1,我就能胜,否则败. #include <iostream> #include <cstdio> using namespace std; int ...

  7. [VC]listctrl的基本用法

    1   添加listctrl的头 m_list.setextendedstyle(LVS_EX_FULLROWSELECT||LVS_EX_GRIdLINES); m_list.insertcolum ...

  8. 禁止DataGridView控件中添加和删除行

    实现效果: 知识运用: DataGridView控件的AllowUserToAddRows AllowUserDeleteRows和ReadOnly属性 实现代码: private void btn_ ...

  9. SQLServer锁原理和锁的类型

    1.锁的用途 为了避免同时争夺数据库资源,将数据库加锁,只有拿到钥匙的用户才能使用: 2.锁的粒度 行锁(Row)--->页锁(Page)--->区锁(Partition 8个页)---- ...

  10. java基础—线程(二)

    一.线程的优先级别