下载地址

http://www.amanda.org/download.php

http://www.zmanda.com/download-amanda.php

编译安装

编译出错:

error: perl module ExtUtils::Embed is required
# yum install perl-ExtUtils-Embed.x86_64 checking for GLIB - version >= 2.2.0... no
# yum install NetworkManager-glib-devel.x86_64 Not building 'amplot', because gnuplot was not found
# yum install gnuplot

yum安装

1. 安装

# yum install amanda-server.x86_64
# yum install amanda-devel.x86_64

此类安装方法,可能会缺少一些库

因为和系统某些依赖库的版本不一致

2. 说明

1、客户端程序是amandad 其中最重要的。此后台程序在备份运行时和 Amanda 服务器进行通信。在/usr/lib/amanda目录下还有其它的一些客户端程序

  • amandad 处理客户机和中央服务器之间的所有通信运行所有其它的客户端程序
  • selfcheck 验证本地Amanda 配置
  • sendsize 估计备份大小
  • sendbackup 执行备份操作

这些程序是 Amanda 客户端系统的一部分。但是并不能通过手工去执行他们是由客户端包的其他辅助程序来调用这些程序

2、执行各阶段实际备份操作的服务器程序。amdump 程序启动 Amanda 并且常常使用 cron 定期运行。它控制一些其他程序包括

  • planner 决定备份哪些内容
  • driver 设备接口
  • dumper 与客户端amandad 进程进行通信
  • taper 把数据写入媒介
  • amreport 准备Amanda 运行的报告

3、执行相关任务的管理工具包括

  • amcheck 验证 Amanda 配置的有效性以及此工具是否准备运行
  • amlabel 在磁带上写入Amanda卷标用于避免覆盖错磁带
  • amcleanup 在中断或系统崩溃后进行清理
  • amflush 强制把临时保存区的数据写入备份媒介
  • amadmin 查出要恢复的正确磁带并执行各种其它管理任务

4、指定 Amanda 操作的配置文件。比如备份内容、频率、位置以及磁带设备特征等。这些文件为 amanda.conf 和 disklist在/etc/amanda下每个子目录对应于一个 Amanda “配置”默认为“DailySet1”它是一套独特的设置和选项由目录名来引用

5、amrestore工具可用来恢复 Amanda 备份中的数据。此外amrecover工具支持交互式的文件恢复。它依赖于后台amindexd和amidxtaped程序进行工作

3. 客户端配置

1、启动客户端服务

在客户端编辑/etc/xinetd.d/amanda文件,将其中的“disable=yes”改为“disable=no”

service amanda
{
socket_type = dgram
protocol = udp
wait = yes
user = amandabackup
group = disk
server = /usr/lib/amanda/amandad
disable = no
} # service xinetd restart

2、授予备份此客户端的Amanda服务器和用户

编辑amanda用户主目录(/var/lib/amanda)下的“.amandahosts”文件,将服务器的主机名以及用于备份的用户名(默认为amandabackup),该文件的格式和“.rhost”类似,例如,Amanda服务器的主机名为turbolinux,用户是amandabackup,则在.amandahosts文件插入如下

turbolinux amandabackup
turbolinux root

同时,也需要把服务器和root用户的对应关系加在里面,否则在恢复数据的时候将不能访问服务器。在这里设置完Amanda服务器的主机名后,同时也要在/etc/hosts文件里面指定Amanda服务器IP和主机名的对应关系,否则Amanda客户端将不能访问服务端

4. 服务端配置

1、amanda.conf

Amanda配置文档默认路径在/etc/amanda/DailySet1,在前面提到过,Amanda一个目录对应一个配置,Amanda的所有备份策略和执行命令,均通过“DailySet1”这个目录下的几个配置文档来定义

# vi amanda.conf

org "turbolinux"    #设置使用amanda的单位或者机构的名称
mailto "root@turbolinux.com.cn" #指定将报告发送的邮件地址
dumpuser amanda #指定使用Amanda备份的用户,默认为amanda用户
dumpcycle 7days #设置备份周期的长度,单位也可以是weeks,在这里设置7days和1weeks的效果是一样的
runspercycle 7 #设置每个备份周期内amanda运行的次数
tapecycle 1 tapes #设定完成一个完整的备份周期最少所需要磁带,这个需要根据备份数据量的大小来设定
ctimeout 30 #设置检测客户端超时时间,单位为秒
runtapes 1 #amdump每次运行使用磁带最大数
tapedev "/dev/nst0" #指定使用磁带机的设备名称,“/dev/nst0”表示不倒带设备
tpchanger "chg-manual" #更换下一个磁带的脚本。在disk-to-tape方式中它与tapedev只能使用其中一个,建议将该项注释掉
tapetype HP-DAT #指定磁带类型,下面将讲到如何去定义磁带类型
labelstr "^DailySet1-[0-9][0-9]*$" #设定磁带卷标格式,使用正则表达式去匹配卷标名称,磁带在使用之前,必须使用 amlabel
#指定卷标,下面将会讲到amlabel的用法
logdir "/var/log/amanda" #指定日志文件存放的目录,默认存放在amanda配置目录下
indexdir "/var/adm/index" #指定存放备份集索引数据目录,默认为amanda配置目录下的index目录

在配置文件中包含了许多预定义的磁带类型,所以一般都不需要自己手工去定义磁带类型,关于定义磁带类型的格式以及参数见如下:

define tapetype HP-DAT
{
comment "DAT tape drives" 对于磁带类型的描述
filemark 111 kbytes 文件标志大小
speed 468 kbytes 磁带驱动器速度
}

上面的内容表示对HP-DAT这台磁带类型的定义,磁带类型的参数尤其重要,所以不要乱修改里面的参数

holdingdisk hd1
{
directory "/dumps/amanda" 临时磁盘存放的路径
use 5 Gb 临时磁盘总共可以使用的大小
}

上面是对临时存储磁盘的定义,同时可以定义多个临时磁盘,在分配临时磁盘的大小有两种设定方法,一种是指定临时磁盘可以使用的大小,当值为0是则使用所有剩余空间;另一种是在临时磁盘这个文件系统上始终保留一定的空间,其余的则全部分配给临时磁盘使用

在amanda.conf文件,最后需要配置的就是定义转储类型,转储类型里面主要定义备份时使用的程序,压缩的类型等。如下:

define dumptype root-tar
{
global 调用前面定义的global类型
program "GNUTAR" 使用GNU tar作为备份程序,默认是DUMP
comment "root partitions dumped with tar" 描述该类型的信息
compress none 不采用压缩
exclude list "/etc/amanda/exclude.gtar" 排除备份文件的列表
}

在每个转储类型的定义中,都可以调用前面定义好的类型。如果需要对备份的数据进行压缩,有两种方式可以实现,一种是在客户端压缩,那么可在compress项设置为“compress client fast”或“compress client best”,另一种是在服务器进行压缩,则设置为“compress server fast”或“compress server best”

2、disklist

接下来需要修改的是disklist文件,disklist用于指定实际要备份的数据,里面的格式是:

client partition/mountpoint dumptype

client :需要备份的客户度计算机,可以是IP或者主机名

partition/mountpoint: 指定要备份的内容,可以是设备名或挂载点

dumptype:指定备份数据时使用的转储类型,这是在amanda.conf文件里面所定义的

例如:现在需要备份IP为192.168.1.100的客户端下面的/data目录,并使用“root-tar”的转储类型,那么只需要在disklist文件里插入如下即可

192.168.1.100 /data root-tar 

3、创建tapelist和磁带标签

tapelist文件用来记录当前可用的磁带列表,默认该文件不存在,创建该文件以及修改文件的权限的方法如下:

# > /etc/amanda/DailySet1/tapelist
# chown amandabackup:disk /etc/amanda/DailySet1/tapelist

注:凡是手工创建或指定给amanda的文件以及目录,包括前面所指定的临时磁盘存放的目录以及日志存放的目录等,其所属用户和组必须是amandabackup和disk,否则Amanda在备份的时候没有操作权限

执行amlabel命令设置卷标

# su – amandabackup
$ /usr/sbin/amlabel DailySet1 DailySet1-01

所设置的卷标一定要符合“labelstr”所指定的正则表达式,否则会报错。设置好可用卷标的磁带,会自动添加到tapelist列表里

RPM安装

# rpm -ivh amanda-backup_server-3.3.7-1.rhel6.x86_64.rpm
error: Failed dependencies:
perl(JSON) is needed by amanda-backup_server-3.3.7-1.rhel6.x86_64
perl(XML::Simple) is needed by amanda-backup_server-3.3.7-1.rhel6.x86_64
xinetd is needed by amanda-backup_server-3.3.7-1.rhel6.x86_64

找到和系统版本一致的包来安装,不然库不一致

解决方法:

# yum install perl-XML-Simple.noarch
# yum install perl-JSON.noarch
# yum install xinetd

amanda安装的更多相关文章

  1. CentOS7安装配置Amanda

    参考: https://wenku.baidu.com/view/881e0c998e9951e79a892759.html yum  -y  install  amanda* http://blog ...

  2. [转] Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

    from:  http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得 ...

  3. Centos6.4下Yum命令安装Mysql数据库及配置

    如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了 如果要开发web项目,我们当然可以安装一个 ...

  4. Linux学习之CentOS--CentOS6.4下Mysql数据库的安装与配置【转】

      如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--C ...

  5. Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

    原文:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得搭建好j ...

  6. Ubuntu 12.04下虚拟磁带库mhvtl的安装和使用

      项目需要连接一下昆腾虚拟磁带库DXI 6701 ,这玩意太贵,不好得到,先弄个虚拟软件测试了, 网上了一下,有这个软件: mhvtl   主页: https://sites.google.com/ ...

  7. Linux学习之CentOS6下Mysql数据库的安装与配置

    转自:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得搭建好j ...

  8. Linux CentOS6.4下Mysql数据库的安装与配置

    一.mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库,咱 ...

  9. Linux(Centos)下安装MySQL

    转载:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 一.mysql简介 说到数据库,我们大多想到的是关 ...

随机推荐

  1. 一文解读AIoT (转)

    AIoT即AI+IoT,指的是人工智能技术与物联网在实际应用中的落地融合.目前,越来越多的行业及应用将AI与IoT结合到了一起,AIoT已经成为各大传统行业智能化升级的最佳通道,也是未来物联网发展的重 ...

  2. 函数的名称空间,函数的嵌套(global, nonlocal),函数名的运用

    一 函数的名称空间 内置空间:存放python解释器内置函数的空间 全局空间:py文件运行时开辟的,存放的是执行的py文件(出去函数内部)的所有的变量与值的对用关系,整个py文件结束后才会消失. 局部 ...

  3. 5-1可视化库Seabon-整体布局风格设置

    In [1]: import seaborn as sns import numpy as np import matplotlib as mpl import matplotlib.pyplot a ...

  4. 提升ML.NET模型的准确性

    ML.NET是一个面向.NET开发人员的开源.跨平台的机器学习框架. 使用ML.NET,您可以轻松地为诸如情绪分析.价格预测.销售分析.推荐.图像分类等场景构建自定义机器学习模型. ML.NET从0. ...

  5. 23.Java基础_ArrayList类

    ArrayList类的构造和使用方法 import java.util.ArrayList; public class test { public static void main(String[] ...

  6. 【cf570】D. Tree Requests(dsu on tree)

    传送门 题意: 给出一个以\(1\)为根的有根树.之后有\(m\)个询问,每个询问为\(v_i,h_i\),需要回答以\(v_i\)为根的子树中,深度为\(h_i\)的那些结点所代表的字符能否构成回文 ...

  7. c# 第39节 抽象类、抽象方法

    本节内容: 1:抽象类的说明 2:抽象类的实例 1:抽象类的说明 抽象类定义:方法前有abstract就称为抽象类.抽象方法,抽象方法不提供任何实际实现. 注意点1: 抽象方法必须在抽象类中声明: 不 ...

  8. 快速傅里叶变换(FFT)学习笔记

    定义 多项式 系数表示法 设\(A(x)\)表示一个\(n-1\)次多项式,则所有项的系数组成的\(n\)维向量\((a_0,a_1,a_2,\dots,a_{n-1})\)唯一确定了这个多项式. 即 ...

  9. Flink/CEP/规则引擎/风控

    基于 Apache Flink 和规则引擎的实时风控解决方案 ​ 对一个互联网产品来说,典型的风控场景包括:注册风控.登陆风控.交易风控.活动风控等,而风控的最佳效果是防患于未然,所以事前事中和事后三 ...

  10. Overload 重载