Version 8 (modified by jpo, 8 years ago)

--

Kopie zapasowe (backupy) systemu eDokumenty w Linux

Poniższy artykuł przedstawia

  1. Backup bazy danych
  2. Backup files
  3. Backup public_html
  4. Backup repos
  5. Backup repository
  6. Backup public_ftp oraz users
  7. Backup na zewnętrznym nośniku

5. Backup repository
Poniższy skrypt wykonuje kopię plików z katalogu repository - plików wersjonowanych

#!/bin/bash
DST="/mnt/backup/repository"

if [ -d $DST ] 
then
	sleep 1
else
	mkdir $DST
fi

rsync -a /home/edokumenty/repository/ /mnt/backup/repository/

7. Backup na zewnętrznym nośniku
Poniższy skrypt wykonuje kopię danych z serwera eDokumentów na dysk zewnętrzny

FTP_HOST=[ADRES_IP_SERVERA]:21
FTP_USER=[LOGIN]
FTP_PWD=[HASŁO]
LOCAL_SOURCE_PATH=/home/edokumenty/backup/${1} #param 1 from script for example
REMOTE_DEST_PATH=/edokumenty

EXCLUDE_FILES_LIST=".svn empty anotherDirectory"

# Construct excludes
for exclude in ${EXCLUDE_FILES_LIST}; do
EXCLUDES="-x ${exclude} ${EXCLUDES}"
done

# -R, --reverse reverse mirror (put files)
# mirror -e
#--delete delete files not present at remote site
lftp ftp://${FTP_USER}:${FTP_PWD}@${FTP_HOST} -e "mirror ${EXCLUDES} -R ${LOCAL_SOURCE_PATH} ${REMOTE_DEST_PATH} ; quit"

FTP_HOST - adres serwera na którym mają zostać zapisane pliki
FTP_USER - login użytkownika który ma dostęp do serwera plików
FTP_PWD - hasło użytkownika
LOCAL_SOURCE_PATH - lokalizacja z której będzie wykonywany backup plików
REMOTE_DEST_PATH - lokalizacja do której będzie wykonywany backup plików