下载地址

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. Microsoft.Extensions.DependencyInjection 阅读笔记

    一. 关于IServiceCollection接口的设计 public interface IServiceCollection : IList<ServiceDescriptor> { ...

  2. go构建脚本ansible分发时出现的问题总结“non-zero return code”

    背景介绍: 在Jenkins服务器配置go项目发布脚本,编译完成后,使用ansible分发到部署服务器上,然后将启动项目脚本start_coachcore.sh发布到目标服务器上,执行启动,目标服务器 ...

  3. 设备树(device tree)学习笔记【转】

    转自:https://www.cnblogs.com/pengdonglin137/p/4495056.html 阅读目录(Content) 1.反编译设备树 2.分析工具fdtdump 3.Linu ...

  4. localStorage在不同页面之间的设置值与取值--加密 localStorage与解密localStorage

    在aa.vue页面 <template> <div> <h1>在aa页面设置值</h1> <button @click="shezhi& ...

  5. 12Java基础_数组定义格式/动态初始化/静态初始化

    /* Java数组 格式一: int[] array; 格式二: int array[]; 数组初始化: 为数组中的元素分配内存空间 动态初始化: int[] array=new int[数组长度] ...

  6. [C4] Andrew Ng - Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization

    About this Course This course will teach you the "magic" of getting deep learning to work ...

  7. Leetcode146-lru-cache

    Leetcode146-lru-cache int capacity; int size; Map<Integer, ListNode> map = new HashMap<Inte ...

  8. hadoop自带RPC的使用 代码demo

    引入的三方包 <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop- ...

  9. oracle存储过程中循环游标,变量的引用

    创建出错时使用: show errors查看具体的错误提示 一. 存储过程中的一个循环及变量引用示例: create or replace procedure my_proiscursor cur i ...

  10. vue_day05

    目录 vue前后端交互: vue 分离前后端交互: vue前端发送请求: vue请求插件--axios: main.js配置: 前端朝后端请求传参方式: django后端返回数据样式: vue配置El ...