mirror of
https://gitlab.sectorq.eu/jaydee/omv_backup.git
synced 2025-07-01 15:48:33 +02:00
initial
This commit is contained in:
73
omv_backups copy.py
Normal file
73
omv_backups copy.py
Normal file
@ -0,0 +1,73 @@
|
||||
import subprocess
|
||||
import time
|
||||
import datetime
|
||||
|
||||
backups = {
|
||||
"__GITHUB":"admin@192.168.77.106:/share/Data/__GITHUB",
|
||||
"Photo":"admin@192.168.77.106:/share/Photo/Years"
|
||||
}
|
||||
|
||||
for b in backups:
|
||||
SOURCE_DIR=backups[b]
|
||||
now = datetime.datetime.now()
|
||||
BACKUP_DIR="/srv/dev-disk-by-uuid-02fbe97a-cd9a-4511-8bd5-21f8516353ee/{}".format(b)
|
||||
DATETIME = now.strftime("%Y-%m-%d_%H:%M:%S")
|
||||
BACKUP_PATH="{}/{}".format(BACKUP_DIR, DATETIME)
|
||||
LATEST_LINK="{}/latest".format(BACKUP_DIR)
|
||||
|
||||
|
||||
cmnd = "mkdir -p {}".format(BACKUP_DIR)
|
||||
status, output = subprocess.getstatusoutput(cmnd)
|
||||
print(cmnd)
|
||||
|
||||
#cmnd = "rsync -av --delete {}/ --link-dest {} --exclude=\".cache\" {}".format(SOURCE_DIR, LATEST_LINK, BACKUP_PATH)
|
||||
cmnd = ["rsync", '--info=progress2', "-avz", "--delete", SOURCE_DIR, "--link-dest", LATEST_LINK, "--exclude=\".cache\"", BACKUP_PATH]
|
||||
print(cmnd)
|
||||
|
||||
#run_list = ['rsync', '--info=progress2', '-a', 'src/', 'dest/']
|
||||
# with subprocess.Popen(
|
||||
# cmnd, stdout=subprocess.PIPE, bufsize=1, text=True
|
||||
# ) as process:
|
||||
# for line in iter(p.stdout.readline, b''):
|
||||
# print(line.strip())
|
||||
|
||||
|
||||
|
||||
process = subprocess.Popen(cmnd,
|
||||
stdout=subprocess.PIPE)
|
||||
|
||||
while process.poll() is None:
|
||||
line = process.stdout.readline()
|
||||
l = line.splitlines()
|
||||
i = -1
|
||||
a = len(l)
|
||||
#print(l[-1])
|
||||
time.sleep(3)
|
||||
print(len(l))
|
||||
while True:
|
||||
for line in reversed(l):
|
||||
print(len(line.split()))
|
||||
e = str(line).split()
|
||||
if len(e) > 4:
|
||||
print(e[2])
|
||||
print(line)
|
||||
break
|
||||
break
|
||||
|
||||
# print(l[-1])
|
||||
# #print(str(line))
|
||||
# time.sleep(3)
|
||||
#print(cmnd)
|
||||
#status, output = subprocess.getstatusoutput(cmnd)
|
||||
# rsync -av --delete \
|
||||
# "${SOURCE_DIR}/" \
|
||||
# --link-dest "${LATEST_LINK}" \
|
||||
# --exclude=".cache" \
|
||||
# "${BACKUP_PATH}"
|
||||
cmnd = "rm -rf {}".format(LATEST_LINK)
|
||||
print(cmnd)
|
||||
status, output = subprocess.getstatusoutput(cmnd)
|
||||
|
||||
cmnd = "ln -s {} {}".format(BACKUP_PATH, LATEST_LINK)
|
||||
print(cmnd)
|
||||
status, output = subprocess.getstatusoutput(cmnd)
|
Reference in New Issue
Block a user