Ubuntu Server Guide Changes, errors and bugs


Download 1.27 Mb.
Pdf ko'rish
bet254/286
Sana20.12.2022
Hajmi1.27 Mb.
#1035308
1   ...   250   251   252   253   254   255   256   257   ...   286
Bog'liq
ubuntu-server-guide

Resources
• For more Bacula configuration options, refer to Bacula’s Documentation.
• The Bacula Home Page contains the latest Bacula news and developments.
• Also, see the Bacula Ubuntu Wiki page.
Shell Scripts
One of the simplest ways to backup a system is using a shell script. For example, a script can be used
to configure which directories to backup, and pass those directories as arguments to the tar utility, which
creates an archive file. The archive file can then be moved or copied to another location. The archive can
also be created on a remote file system such as an NFS mount.
The tar utility creates one archive file out of many files or directories. tar can also filter the files through
compression utilities, thus reducing the size of the archive file.
309


Simple Shell Script
The following shell script uses tar to create an archive file on a remotely mounted NFS file system. The
archive filename is determined using additional command line utilities.
#!/ b i n / bash
####################################
#
# Backup t o NFS mount s c r i p t .
#
####################################
# What t o backup .
b a c k u p _ f i l e s =”/home / var / s p o o l / m a i l / e t c / r o o t / boot / opt ”
# Where t o backup t o .
d e s t =”/mnt/ backup ”
# C r e a t e a r c h i v e f i l e n a m e .
day=$ ( d a t e +%A)
hostname=$ ( hostname −s )
a r c h i v e _ f i l e =”$hostname−$day . t g z ”
# P r i n t s t a r t s t a t u s message .
echo ” Backing up $ b a c k u p _ f i l e s t o $ d e s t / $ a r c h i v e _ f i l e ”
d a t e
echo
# Backup t h e f i l e s u s i n g t a r .
t a r c z f $ d e s t / $ a r c h i v e _ f i l e $ b a c k u p _ f i l e s
# P r i n t end s t a t u s message .
echo
echo ” Backup f i n i s h e d ”
d a t e
# Long l i s t i n g o f f i l e s i n $ d e s t t o check f i l e s i z e s .
l s −l h $ d e s t
• $backup_files: a variable listing which directories you would like to backup. The list should be cus-
tomized to fit your needs.
• $day: a variable holding the day of the week (Monday, Tuesday, Wednesday, etc). This is used to
create an archive file for each day of the week, giving a backup history of seven days. There are other
ways to accomplish this including using the date utility.
• $hostname: variable containing the short hostname of the system. Using the hostname in the archive
filename gives you the option of placing daily archive files from multiple systems in the same directory.
• $archive_file: the full archive filename.
• $dest: destination of the archive file. The directory needs to be created and in this case mounted before
executing the backup script. See ??? for details of using NFS.
• status messages: optional messages printed to the console using the echo utility.
• tar czf 𝑑𝑒𝑠𝑡/archive_file $backup_files: the tar command used to create the archive file.
310



Download 1.27 Mb.

Do'stlaringiz bilan baham:
1   ...   250   251   252   253   254   255   256   257   ...   286




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling