Merge branch 'master' into betterKillChilds
Conflicts: dev/debug_osync.sh dev/n_osync.sh osync.sh
This commit is contained in:
commit
757c53ca3a
|
@ -13,8 +13,12 @@ KNOWN ISSUES
|
|||
|
||||
RECENT CHANGES
|
||||
--------------
|
||||
|
||||
#TODO: clock compare in doc
|
||||
#TODO: explain why osync is lowband friendly in doc
|
||||
#TODO: explain why osync daemon process can still exist after quit for 30s
|
||||
! XX Apr 2016: osync v1.1 released
|
||||
! Paranoia debug gives incorrect number of arguments in rsyncpatternsadd
|
||||
! cat vv | ssh -p 49999 -i /root/.ssh/id_rsa_netpower root@netpower.fr cat | xargs -I {} stat -c "%n;%Z;%Y" "{}" | sort > tes
|
||||
! Updated documentation (+README.md file)
|
||||
- Redirected ERROR and WARN messages to stderr to systemd catches them into it's journal
|
||||
!- Added a systemd unit file (needs testing in file monitor mode yet)
|
||||
|
|
|
@ -8,7 +8,7 @@ Always use the following header
|
|||
#!/usr/bin/env bash
|
||||
|
||||
PROGRAM="program-name" # Long description
|
||||
AUTHOR="(L) 20XX-20YY by Orsiris \"Ozy\" de Jong"
|
||||
AUTHOR="(C) 20XX-20YY by Orsiris \"Ozy\" de Jong"
|
||||
CONTACT="http://www.example.com me@example.com"
|
||||
PROGRAM_BUILD=YYYYMMDDVV
|
||||
|
||||
|
@ -145,3 +145,12 @@ As obackup and osync share alot of common functions, ofunctions.sh will host all
|
|||
Dev programs n_osync.sh and n_obackup.sh will source ofunctions.sh
|
||||
Release programs will still include ofunctions.sh in order to enhance ease of use.
|
||||
|
||||
Ofunctions are defined like:
|
||||
|
||||
#__FUNC:FunctionName
|
||||
function FunctionName {
|
||||
|
||||
}
|
||||
#__ENDFUNC
|
||||
|
||||
These functions are inserted into code that has placeholders like #__FUNC:FuncName
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Copyright (c) 2013-2015, Orsiris "Ozy" de Jong. ozy@netpower.fr
|
||||
Copyright (c) 2013-2016, Orsiris de Jong. ozy@netpower.fr
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
|
|
|
@ -127,10 +127,10 @@ You may run the install.sh script which should work in most cases or copy the fi
|
|||
$ service osync-srv start
|
||||
$ chkconfig osync-srv on
|
||||
|
||||
Systemd specific
|
||||
Systemd specific (one service per config file)
|
||||
|
||||
$ systemctl start osync-srv@configfile
|
||||
$ systemctl enable osync-srv@configfile
|
||||
$ systemctl start osync-srv@configfile.conf
|
||||
$ systemctl enable osync-srv@configfile.conf
|
||||
|
||||
Troubleshooting
|
||||
---------------
|
||||
|
|
2
dev/de
2
dev/de
|
@ -3,7 +3,7 @@
|
|||
#TODO: test if trapquit works on kill (sigterm)
|
||||
|
||||
PROGRAM="osync" # Rsync based two way sync engine with fault tolerance
|
||||
AUTHOR="(L) 2013-2016 by Orsiris de Jong"
|
||||
AUTHOR="(C) 2013-2016 by Orsiris de Jong"
|
||||
CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr"
|
||||
PROGRAM_VERSION=1.1-dev
|
||||
PROGRAM_BUILD=2016021804
|
||||
|
|
|
@ -4,7 +4,11 @@ PROGRAM="osync" # Rsync based two way sync engine with fault tolerance
|
|||
AUTHOR="(C) 2013-2016 by Orsiris de Jong"
|
||||
CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr"
|
||||
PROGRAM_VERSION=1.1-dev
|
||||
<<<<<<< HEAD
|
||||
PROGRAM_BUILD=2016040101
|
||||
=======
|
||||
PROGRAM_BUILD=2016033101
|
||||
>>>>>>> master
|
||||
IS_STABLE=yes
|
||||
|
||||
## FUNC_BUILD=2016033105
|
||||
|
@ -1134,14 +1138,14 @@ function CheckCurrentConfig {
|
|||
fi
|
||||
|
||||
# Check all variables that should contain "yes" or "no"
|
||||
declare -a yes_no_vars=(CREATE_DIRS SUDO_EXEC SSH_COMPRESSION REMOTE_HOST_PING PRESERVE_ACL PRESERVE_XATTR COPY_SYMLINKS KEEP_DIRLINKS PRESERVE_HARDLINKS CHECKSUM RSYNC_COMPRESS CONFLICT_BACKUP CONFLICT_BACKUP_MULTIPLE SOFT_DELETE RESUME_SYNC FORCE_STRANGER_LOCK_RESUME PARTIAL DELTA_COPIES STOP_ON_CMD_ERROR)
|
||||
declare -a yes_no_vars=(CREATE_DIRS SUDO_EXEC SSH_COMPRESSION SSH_IGNORE_KNOWN_HOSTS REMOTE_HOST_PING PRESERVE_ACL PRESERVE_XATTR COPY_SYMLINKS KEEP_DIRLINKS PRESERVE_HARDLINKS CHECKSUM RSYNC_COMPRESS CONFLICT_BACKUP CONFLICT_BACKUP_MULTIPLE SOFT_DELETE RESUME_SYNC FORCE_STRANGER_LOCK_RESUME PARTIAL DELTA_COPIES STOP_ON_CMD_ERROR)
|
||||
for i in "${yes_no_vars[@]}"; do
|
||||
test="if [ \"\$$i\" != \"yes\" ] && [ \"\$$i\" != \"no\" ]; then Logger \"Bogus $i value defined in config file.\" \"CRITICAL\"; exit 1; fi"
|
||||
eval "$test"
|
||||
done
|
||||
|
||||
# Check all variables that should contain a numerical value >= 0
|
||||
declare -a num_vars=(MINIMUM_SPACE BANDWIDTH SOFT_MAX_EXEC_TIME HARD_MAX_EXEC_TIME MIN_WAIT MAX_WAIT CONFLICT_BACKUP_DAYS SOFT_DELETE_DAYS RESUME_TRY)
|
||||
declare -a num_vars=(MINIMUM_SPACE BANDWIDTH SOFT_MAX_EXEC_TIME HARD_MAX_EXEC_TIME MIN_WAIT MAX_WAIT CONFLICT_BACKUP_DAYS SOFT_DELETE_DAYS RESUME_TRY MAX_EXEC_TIME_PER_CMD_BEFORE MAX_EXEC_TIME_PER_CMD_AFTER)
|
||||
for i in "${num_vars[@]}"; do
|
||||
test="if [ $(IsNumeric \"\$$i\") -eq 0 ]; then Logger \"Bogus $i value defined in config file.\" \"CRITICAL\"; exit 1; fi"
|
||||
eval "$test"
|
||||
|
|
|
@ -4,7 +4,11 @@ PROGRAM="osync" # Rsync based two way sync engine with fault tolerance
|
|||
AUTHOR="(C) 2013-2016 by Orsiris de Jong"
|
||||
CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr"
|
||||
PROGRAM_VERSION=1.1-dev
|
||||
<<<<<<< HEAD
|
||||
PROGRAM_BUILD=2016040101
|
||||
=======
|
||||
PROGRAM_BUILD=2016033101
|
||||
>>>>>>> master
|
||||
IS_STABLE=yes
|
||||
|
||||
source "./ofunctions.sh"
|
||||
|
@ -99,14 +103,14 @@ function CheckCurrentConfig {
|
|||
fi
|
||||
|
||||
# Check all variables that should contain "yes" or "no"
|
||||
declare -a yes_no_vars=(CREATE_DIRS SUDO_EXEC SSH_COMPRESSION REMOTE_HOST_PING PRESERVE_ACL PRESERVE_XATTR COPY_SYMLINKS KEEP_DIRLINKS PRESERVE_HARDLINKS CHECKSUM RSYNC_COMPRESS CONFLICT_BACKUP CONFLICT_BACKUP_MULTIPLE SOFT_DELETE RESUME_SYNC FORCE_STRANGER_LOCK_RESUME PARTIAL DELTA_COPIES STOP_ON_CMD_ERROR)
|
||||
declare -a yes_no_vars=(CREATE_DIRS SUDO_EXEC SSH_COMPRESSION SSH_IGNORE_KNOWN_HOSTS REMOTE_HOST_PING PRESERVE_ACL PRESERVE_XATTR COPY_SYMLINKS KEEP_DIRLINKS PRESERVE_HARDLINKS CHECKSUM RSYNC_COMPRESS CONFLICT_BACKUP CONFLICT_BACKUP_MULTIPLE SOFT_DELETE RESUME_SYNC FORCE_STRANGER_LOCK_RESUME PARTIAL DELTA_COPIES STOP_ON_CMD_ERROR)
|
||||
for i in "${yes_no_vars[@]}"; do
|
||||
test="if [ \"\$$i\" != \"yes\" ] && [ \"\$$i\" != \"no\" ]; then Logger \"Bogus $i value defined in config file.\" \"CRITICAL\"; exit 1; fi"
|
||||
eval "$test"
|
||||
done
|
||||
|
||||
# Check all variables that should contain a numerical value >= 0
|
||||
declare -a num_vars=(MINIMUM_SPACE BANDWIDTH SOFT_MAX_EXEC_TIME HARD_MAX_EXEC_TIME MIN_WAIT MAX_WAIT CONFLICT_BACKUP_DAYS SOFT_DELETE_DAYS RESUME_TRY)
|
||||
declare -a num_vars=(MINIMUM_SPACE BANDWIDTH SOFT_MAX_EXEC_TIME HARD_MAX_EXEC_TIME MIN_WAIT MAX_WAIT CONFLICT_BACKUP_DAYS SOFT_DELETE_DAYS RESUME_TRY MAX_EXEC_TIME_PER_CMD_BEFORE MAX_EXEC_TIME_PER_CMD_AFTER)
|
||||
for i in "${num_vars[@]}"; do
|
||||
test="if [ $(IsNumeric \"\$$i\") -eq 0 ]; then Logger \"Bogus $i value defined in config file.\" \"CRITICAL\"; exit 1; fi"
|
||||
eval "$test"
|
||||
|
|
|
@ -135,7 +135,7 @@ fi
|
|||
function Statistics {
|
||||
|
||||
local link="http://instcount.netpower.fr?program=$PROGRAM&version=$PROGRAM_VERSION"
|
||||
if type wget > /dev/null; then
|
||||
if type wget -qO- > /dev/null; then
|
||||
wget $link > /dev/null 2>&1
|
||||
if [ $? == 0 ]; then
|
||||
exit 0
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/usr/bin/env bash
|
||||
SUBPROGRAM=osync
|
||||
PROGRAM="$SUBPROGRAM-batch" # Batch program to run osync / obackup instances sequentially and rerun failed ones
|
||||
AUTHOR="(C) 2013-2016 by Orsiris de Jong"
|
||||
AUTHOR="(L) 2013-2016 by Orsiris de Jong"
|
||||
CONTACT="http://www.netpower.fr - ozy@netpower.fr"
|
||||
PROGRAM_BUILD=2016031301
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# osync-srv Two way directory sync daemon
|
||||
#
|
||||
|
|
8
osync.sh
8
osync.sh
|
@ -4,7 +4,11 @@ PROGRAM="osync" # Rsync based two way sync engine with fault tolerance
|
|||
AUTHOR="(C) 2013-2016 by Orsiris de Jong"
|
||||
CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr"
|
||||
PROGRAM_VERSION=1.1-dev
|
||||
<<<<<<< HEAD
|
||||
PROGRAM_BUILD=2016040101
|
||||
=======
|
||||
PROGRAM_BUILD=2016033101
|
||||
>>>>>>> master
|
||||
IS_STABLE=yes
|
||||
|
||||
## FUNC_BUILD=2016033105
|
||||
|
@ -1060,14 +1064,14 @@ function CheckCurrentConfig {
|
|||
fi
|
||||
|
||||
# Check all variables that should contain "yes" or "no"
|
||||
declare -a yes_no_vars=(CREATE_DIRS SUDO_EXEC SSH_COMPRESSION REMOTE_HOST_PING PRESERVE_ACL PRESERVE_XATTR COPY_SYMLINKS KEEP_DIRLINKS PRESERVE_HARDLINKS CHECKSUM RSYNC_COMPRESS CONFLICT_BACKUP CONFLICT_BACKUP_MULTIPLE SOFT_DELETE RESUME_SYNC FORCE_STRANGER_LOCK_RESUME PARTIAL DELTA_COPIES STOP_ON_CMD_ERROR)
|
||||
declare -a yes_no_vars=(CREATE_DIRS SUDO_EXEC SSH_COMPRESSION SSH_IGNORE_KNOWN_HOSTS REMOTE_HOST_PING PRESERVE_ACL PRESERVE_XATTR COPY_SYMLINKS KEEP_DIRLINKS PRESERVE_HARDLINKS CHECKSUM RSYNC_COMPRESS CONFLICT_BACKUP CONFLICT_BACKUP_MULTIPLE SOFT_DELETE RESUME_SYNC FORCE_STRANGER_LOCK_RESUME PARTIAL DELTA_COPIES STOP_ON_CMD_ERROR)
|
||||
for i in "${yes_no_vars[@]}"; do
|
||||
test="if [ \"\$$i\" != \"yes\" ] && [ \"\$$i\" != \"no\" ]; then Logger \"Bogus $i value defined in config file.\" \"CRITICAL\"; exit 1; fi"
|
||||
eval "$test"
|
||||
done
|
||||
|
||||
# Check all variables that should contain a numerical value >= 0
|
||||
declare -a num_vars=(MINIMUM_SPACE BANDWIDTH SOFT_MAX_EXEC_TIME HARD_MAX_EXEC_TIME MIN_WAIT MAX_WAIT CONFLICT_BACKUP_DAYS SOFT_DELETE_DAYS RESUME_TRY)
|
||||
declare -a num_vars=(MINIMUM_SPACE BANDWIDTH SOFT_MAX_EXEC_TIME HARD_MAX_EXEC_TIME MIN_WAIT MAX_WAIT CONFLICT_BACKUP_DAYS SOFT_DELETE_DAYS RESUME_TRY MAX_EXEC_TIME_PER_CMD_BEFORE MAX_EXEC_TIME_PER_CMD_AFTER)
|
||||
for i in "${num_vars[@]}"; do
|
||||
test="if [ $(IsNumeric \"\$$i\") -eq 0 ]; then Logger \"Bogus $i value defined in config file.\" \"CRITICAL\"; exit 1; fi"
|
||||
eval "$test"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Test dir
|
||||
TMP="/tmp/osync_tests"
|
||||
|
|
|
@ -6,7 +6,7 @@ AUTHOR="(C) 2015 by Orsiris \"Ozy\" de Jong"
|
|||
CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr"
|
||||
OLD_PROGRAM_VERSION="1.0x"
|
||||
NEW_PROGRAM_VERSION="v1.1x"
|
||||
PROGRAM_BUILD=2016033101
|
||||
PROGRAM_BUILD=2016033102
|
||||
|
||||
function Init {
|
||||
OSYNC_DIR=".osync_workdir"
|
||||
|
@ -311,8 +311,8 @@ function RewriteConfigFiles {
|
|||
exit 1
|
||||
fi
|
||||
|
||||
echo "Backing up [$config_file] as [$config_file.v1.0x.save]"
|
||||
cp --preserve "$config_file" "$config_file.v1.0x.save"
|
||||
echo "Backing up [$config_file] as [$config_file.save]"
|
||||
cp --preserve "$config_file" "$config_file.save"
|
||||
if [ $? != 0 ]; then
|
||||
echo "Cannot backup config file."
|
||||
exit 1
|
||||
|
|
Loading…
Reference in New Issue