Amanda
Amanda Backup Using Virtual Tape on Ubuntu
by admin on May.28, 2010, under Amanda, Backup, Ubuntu, Ubuntu 9.10, ubuntu 10.04
Here We are using two clients one is backup.ubuntulinux.co.in and another one is the same amdanda server ubuntulinux.co.in.
Install AMANDA client
Install the AMANDA client app
sudo apt-get install amanda-client
Create necessary amanda directory ( It is not needed for the server ubuntulinux.co.in)
sudo mkdir -p -m 770 /etc/amanda
Change owner
sudo chown -R backup.backup /etc/amanda
Become the backup user
su backup
Create an excludes file
touch /etc/amanda/exclude.gtar
Edit /etc/amandahosts to allow server to connect to client machine for backups
localhost backup
backup.ubuntulinux.co.in backup
ubuntulinux.co.in backup
Create xinetd amanda entry
sudo vim /etc/xinetd.d/amanda
Edit the file, mine looks like
# default: on
#
# description: Amanda services for Amanda client.
#
service amanda
{
bind = backup.ubuntulinux.co.in
socket_type = dgram
protocol = udp
wait = yes
user = backup
group = backup
groups = yes
server = /usr/lib/amanda/amandad
server_args = -auth=bsd amdump
disable = no
}
Each of these lines is very important. The “bind” line will probably not be necessary for most configurations – this is in place because I have 2 different IP addresses binding to the same device (eth0 aliases).
Restart xinetd
sudo /etc/init.d/xinetd restart
Edit /etc/services to look like
#
# Amanda Services
#
amanda 10080/udp
amanda 10080/tcp
kamanda 10081/udp
kamanda 10081/tcp
amandaidx 10082/tcp
amidxtape 10083/tcp
Make sure your /etc/inetd.conf looks like
amanda dgram udp wait backup /usr/sbin/tcpd /usr/lib/amanda/amandad
On the Server
Verify Configuration
Run amcheck on Server to verify configuration files, connections, etc lgoin as backup user
Code:
amcheck DailySet1
Output looks like
Cod
backup@ubuntulinux:~$ amcheck DailySet1
Amanda Tape Server Host Check
Holding disk /dumps/amanda: 4478364 KB disk space available, using 4375964 KB
slot 2: read label `DailySet1-02′, date `X’
NOTE: skipping tape-writable test
Tape DailySet?1-02 label ok
Server check took 0.112 seconds
Amanda Backup Client Hosts Check
Client check: 2 host checked in 0.017 seconds, 0 problems found
(brought to you by Amanda 2.5.1p3)
amrecover — Amanda index database browser
Amrecover browses the database of Amanda index files to determine which tapes contain files to recover. Furthermore, it is able to recover files.
In order to restore files in place, you must invoke amrecover from the root of the backed up filesystem, or use lcd to move into that directory, otherwise a directory tree that resembles the backed up filesystem will be created in the current directory. See the examples below for details.
Amrecover should be run as root user.
Amrecover will the read the amanda-client.conf file and the config/amanda-client.conf file. If no configuration name is supplied on the command line, Amrecover will try the compiled-in default configuration, usually DailySet?1.
Edit the following lines in amanda-client.conf
conf “DailySet1″ # your config name
index_server “ubuntulinux.co.in” # your amindexd server
tape_server “ubuntulinux.co.in” # your amidxtaped server
tapedev “file:/amandabackup/DailySet?1/slots” # your tape device
Example
root@ubuntulinux:~# amrecover
AMRECOVER Version 2.5.1p3. Contacting server on localhost …
220 ubuntulinux AMANDA index server (2.5.1p3) ready.
Setting restore date to today (2008-04-22)
200 Working date set to 2008-04-22.
200 Config set to DailySet?1.
200 Dump host set to ubuntulinux.co.in.
Use the setdisk command to choose dump disk to recover
amrecover> ls
Must select a disk before listing files; use the setdisk command.
amrecover> help
valid commands are:
add path1 … – add to extraction list (shell wildcards)
addx path1 … – add to extraction list (regular expressions)
cd directory – change cwd on virtual file system (shell wildcards)
cdx directory – change cwd on virtual file system (regular expressions)
clear – clear extraction list
delete path1 … – delete from extraction list (shell wildcards)
deletex path1 … – delete from extraction list (regular expressions)
extract – extract selected files from tapes
exit
help
history – show dump history of disk
list [filename] – show extraction list, optionally writing to file
lcd directory – change cwd on local file system
ls – list directory on virtual file system
lpwd – show cwd on local file system
mode – show the method used to extract SMB shares
pwd – show cwd on virtual file system
quit
listhost – list hosts
listdisk [diskdevice] – list disks
setdate {YYYY-MM-DD|–MM-DD|—DD} – set date of look
{YYYY-MM-DD-HH-MM-SS} – set date of look
setdisk diskname [mountpoint] – select disk on dump host
sethost host – select dump host
settape [host:][device|default] – select tape server and/or device
setmode smb|tar – select the method used to extract SMB shares
amrecover> listhost
200- List hosts for config DailySet1
201- ubuntulinux.co.in
200 List hosts for config DailySet1
amrecover> listdisk
200- List of disk for host ubuntulinux.co.in
201- /Project
200 List of disk for host ubuntulinux.co.in
amrecover> setdisk /Project /Documents
200 Disk set to /Project.
amrecover> lpwd
/root
amrecover> ls
2008-04-22 ubunutlinux/
2008-04-22 new/
2008-04-22 myproject/
2008-04-22 lost+found/
Added dir /myproject/ at date 2008-04-22
amrecover> lpwd
/root
amrecover> extract
Extracting files using tape drive @DEFAULT_TAPE_DEVICE@ on host localhost.
The following tapes are needed: DailySet1-01
Restoring files into directory /root
Continue [?/Y/n]? y
Extracting files using tape drive @DEFAULT_TAPE_DEVICE@ on host localhost.
Load tape DailySet1-01 now
Continue [/Y/n/s/t]? y
Label mismatch, got DailySet?1-02 and expected DailySet?1-01
Looking for tape DailySet?1-01…
./myproject/
./myproject/.bzr/
./myproject/.bzr/branch/
./myproject/.bzr/branch-lock/
./myproject/.bzr/branch/lock/
./myproject/.bzr/repository/
./myproject/.bzr/repository/knits/
./myproject/.bzr/repository/lock/
./myproject/.bzr/repository/revision-store/
./myproject/.bzr/README
./myproject/.bzr/branch-format
./myproject/.bzr/branch/branch-name
./myproject/.bzr/branch/format
./myproject/.bzr/branch/revision-history
./myproject/.bzr/repository/format
./myproject/.bzr/repository/inventory.kndx
./myproject/.bzr/repository/inventory.knit
./myproject/.bzr/repository/revisions.kndx
./myproject/.bzr/repository/revisions.knit
./myproject/.bzr/repository/signatures.kndx
./myproject/.bzr/repository/signatures.knit
amrecover> quit
200 Good bye.
Amanda Backup Using Virtual Tape on Ubuntu
by admin on May.28, 2010, under Amanda, Backup, Ubuntu, Ubuntu 9.10, ubuntu 10.04
Amanda:
AMANDA, the Advanced Maryland Automatic Network Disk Archiver, is a backup system that allows the administrator to set up a single master backup server to back up multiple hosts over network to tape drives/changers or disks or optical media. Amanda uses native dump and/or GNU tar facilities and can back up a large number of workstations running multiple versions of Unix.
This will guide you through setting up virtual tapes (utilize hard disk space for backups)
Install and Modify the xinetd
If you haven’t already installed xinetd, install it
Create an amanda xinetd entry
Code:
sudo vim /etc/xinetd.d/amanda
Give it the following contents
Code:
# default: on
# description: The amanda service
service amanda
{
only_from = ubunutlinux.co.in
disable = no
socket_type = dgram
protocol = udp
wait = yes
user = backup
group = backup
groups = yes
server = /usr/lib/amanda/amandad
server_args = -auth=bsd amdump amindexd amidxtaped
}
service amandaidx
{
socket_type = stream
protocol = tcp
wait = no
group = backup
groups = yes
server = /usr/lib/amanda/amindexd
disable = no
}
service amidxtape
{
socket_type = stream
protocol = tcp
wait = no
user = backup
group = backup
groups = yes
server = /usr/lib/amanda/amidxtaped
disable = no
}
Install the AMANDA Server
Install AMANDA and dependencies
sudo apt-get install amanda-server
Restart xinetd
sudo /etc/init.d/xinetd restart
Become “backup” user
su backup
Create copies of the configuration files, just in case
cp -R /etc/amanda/DailySet1 /etc/amanda/DailySet1.bak
Edit amanda.conf
Let’s get in and edit the amanda.conf
Code:
vim /etc/amanda/DailySet?1/amanda.conf
Make the following changes in the file
Code:
org “”
mailto “backupadmin@ubuntulinux.co.in ”
tpchanger “chg-disk”
changerfile “/etc/amanda/daily/changer”
tapedev “file:/amandabackup/DailySet1/slots”
tapetype HARDDISK
#tapetype HP-DAT <— comment this out
#labelstr “^HISS[0-9][0-9]*$” <— comment this out
amrecover_do_fsf yes
amrecover_check_label yes
amrecover_changer “changer”
define tapetype HARDDISK {
length mbytes
}
The format for the disklist file is :
Dumptypes are deinfed in /etc/amanda/amanda.conf, but we’ll use the GNUTAR dumptype “comp-user-tar” for this example
Let’s get in and edit the disklist
Code:
vim /etc/amanda/DailySet1/disklist
Add a line like so
Code:
ubuntulinux.co.in /Project comp-user-tar
ubuntlinux.co.in /clientbackup comp-user-tar
What this line is telling AMANDA is that when it attempts to do a dump that it should connect to ubuntlinux.co.in, backup the directory /project and /clientbackup and user the options that are defined in amanda.conf for the “comp-user-tar” dumptype.
Create Virtual Tapes
Choose a location for your tapes to reside
Create the tapelist file that is necessary for indexing tapes available
Code:
touch /etc/amanda/DailySet1/tapelist
Create the location and set permissions for the virtual tapes
Code:
mkdir -p -m 770 /amandabackup/DailySet1/slots
chown -R backup:backup /amdndahosts
CD to the new directory
cd /amandabackup/DailySet1/slots
Create the necessary directories for the tapes
Code:
for (i=1; $i<=25; i++)?; do mkdir slot$i; done
Create symlink for the data directory to point to the first tape
Code:
ln -s slot1 data
Test the vtapes to be sure that we get an ONLINE message
Code:
ammt -f file:/amandabackup/DailySet?1/slots status
Label the tapes
for (i=1; $i<=9; i++)?; do amlabel DailySet1 DailySet?1-0$i slot $i; done
for (i=10; $i<=25; i++)?; do amlabel DailySet1 DailySet?1-$i slot $i; done
Output should look like (for each slot)
labeling tape in slot 1 (file:/amandabackup/DailySet?1/slots)
rewinding, reading label, not an amanda tape
rewinding, writing label DailySet?1-01, checking label, done.
Reset the changer back to slot 1
amtape DailySet1 reset
Output should look like
amtape: changer is reset, slot 1 is loaded.
Edit .amandahosts
On Ubuntu the .amandahosts file is located as /etc/amandahosts
Open the file
vim /etc/amandahosts
The file looks like
localhost root amindexd amidxtaped
ubuntlinux.co.in backup
ubuntlinux.co.in backup amindexd amidxtaped
ubuntlinux.co.in root amindexd amidxtaped
Page 2 (amanda client and backup and restore procedure