Compare commits

...
2 Commits
Author SHA1 Message Date
lucas b4898bddfe set private tracker torrents to force seed 2026-10-06 21:13:06 +02:00
lucas 860100c4de backup calender/contacts script migration
move backup script to nextcloud folder
remove backup data
reconfigure calender/contacts backup
2026-10-06 21:13:06 +02:00
3 changed files with 72 additions and 186 deletions

No files matched your search

+43
View File
@@ -0,0 +1,43 @@
#!/bin/bash
date="$(date +"%m%d%H")"
echo "Start Backup" > /home/lucas/.LOG/log_backup_$date.log
find /home/lucas/.LOG/log_backup_* -mtime +12 -type f -delete
STARTTIME=$(date +"%T")
echo "Starttime: $STARTTIME"
sleep 2
BACKUP_CAL=true
SERVER="https://cloud.someoneslinux.selfhost.eu"
TIMESTAMP=$(date +"%Y%m%d")
old_cal_bak="$(find /backup/backup_calender_* -mtime +31 -type f)"
find /backup/backup_calender_* -mtime +31 -type f -delete
backup_cal_OC="/backup/backup_calender_NC_$TIMESTAMP.ics"
backup_cal_geb="/backup/backup_calender_geb_$TIMESTAMP.ics"
backup_cal_home="/backup/backup_calender_home_$TIMESTAMP.ics"
#export WGETRC="/home/lucas/Documents/Dokumente/Projekte/Server/www/curlrc"
curl --netrc-file /home/lucas/.netrc -o "$backup_cal_OC" "${SERVER}/remote.php/dav/public-calendars/JtMqiXpm6mdM3yWC/?export"
if [ $? -eq 0 ]; then CAL_RET1="nextCloud Calender backup Successfull"; fi
curl --netrc-file /home/lucas/.netrc -o "$backup_cal_geb" "${SERVER}/remote.php/dav/public-calendars/gzxSDCXdWqj8MSMP/?export"
if [ $? -eq 0 ]; then CAL_RET2="Geburtstags Calender backup Successfull"; fi
curl --netrc-file /home/lucas/.netrc -o "$backup_cal_home" "${SERVER}/remote.php/dav/public-calendars/gkx3W9Cpk3eK2W62/?export"
if [ $? -eq 0 ]; then CAL_RET3="Haushalts Calender backup Successfull"; fi
old_cont_bak="$(find /backup/backup_contacts_* -mtime +31 -type f)"
find /backup/backup_calender_* -mtime +31 -type f -delete
backup_contacts_phone="/backup/backup_contacts_ContactsPhone_$TIMESTAMP.vcf"
backup_email_addr="/backup/backup_contacts_EmailAddressen_$TIMESTAMP.vcf"
curl --netrc-file /home/lucas/.netrc -o "$backup_contacts_phone" "${SERVER}/remote.php/dav/addressbooks/users/syncuser/phonecontacts_shared_by_lucas?export"
if [ $? -eq 0 ]; then CON_RET1="nextCloud Contacts Phone backup Successfull"; fi
curl --netrc-file /home/lucas/.netrc -o "$backup_email_addr" "${SERVER}/remote.php/dav/addressbooks/users/syncuser/emailcontacts_shared_by_lucas?export"
if [ $? -eq 0 ]; then CON_RET2="NextCloud Contacts Email backup Successfull"; fi
if [ "$old_bak" == "" ]; then
old_bak="Nothing older than 83 Days removed"
fi
if [ "$old_cal_bak" == "" ]; then
old_cal_bak="No Calenders removed"
fi
if [ "$old_cont_bak" == "" ]; then
old_cont_bak="No Contacts removed"
fi
echo "Endtime: $ENDTIME"
-186
View File
@@ -1,186 +0,0 @@
#!/bin/bash
date="$(date +"%m%d%H")"
echo "Start Backup" > /home/lucas/.LOG/log_backup_$date.log
find /home/lucas/.LOG/log_backup_* -mtime +12 -type f -delete
STARTTIME=$(date +"%T")
echo "Starttime: $STARTTIME"
sleep 2
#BACKUP=true
BACKUP_DATA=false
BACKUP_CAL=true
BACKUP_THESIS=false
if [ "$1" == "-thesis" ]; then
BACKUP_DATA=false
BACKUP_CAL=false
BACKUP_THESIS=true
echo "Backup thesis only"
fi
if $BACKUP_DATA; then
old_bak="$(find /backup/backup_* -mtime +83 -type f)"
find /backup/backup_* -mtime +83 -type f -delete
old_doc_bak="$(find /backup/backup_documents_* -mtime +31 -type f)"
find /backup/backup_documents_* -mtime +31 -type f -delete
if [ -d /nextcloud/nextcloud-data/lucas/files/Dokumente ]; then
{ tar -zcvf /backup/backup_documents_lucas$(date -d "today" +"%m%d").tgz /nextcloud/nextcloud-data/lucas/files/Dokumente ; echo "Lucas Documents: $?" >> /home/lucas/.LOG/log_backup_$date.log ; }& PID_DOC_LUC=$!
else
PID_DOC_LUC=0
fi
if [ -d /nextcloud/nextcloud-data/mimi/files/Dokumente ]; then
{ tar -zcvf /backup/backup_documents_mimi$(date -d "today" +"%m%d").tgz /nextcloud/nextcloud-data/mimi/files/Dokumente ; echo "Mimi Documents: $?" >> /home/lucas/.LOG/log_backup_$date.log ; } & PID_DOC_MIMI=$!
else
PID_DOC_MIMI=0
fi
PIC_Overwrite=false
if [ $(find /backup/backup_pictures_* -type f | wc -l) -lt 1 ] || [ $(find /backup/backup_pictures_* -mtime -13 -type f | wc -l) -lt 1 ] || $PIC_Overwrite; then
printf "Backup Pictures because it's the %s\n " "$(date -d 'today' +'%d.%m')" >> /home/lucas/.LOG/log_backup_$date.log
printf "Today: %s\n" "$(date -d "today" +"%d")"
old_pic_bak="Remove old Pictures: $(find /backup/backup_pictures_* -mtime +50 -type f)"
find /backup/backup_pictures_* -mtime +30 -type f -delete
{ tar -zcvf /backup/backup_pictures_$(date -d "today" +"%m%d").tgz /nextcloud/nextcloud-data/lucas/files/Media/Pictures ; echo "Lucas Pictures: $?" >> /home/lucas/.LOG/log_backup_$date.log ; } & PID_PIC=$!
printf "Backup Music because it's the %s\n " "$(date -d 'today' +'%d.%m')" >> /home/lucas/.LOG/log_backup_$date.log
printf "Today: %s\n" "$(date -d "today" +"%d")"
old_music_bak="Remove old Pictures: $(find /backup/backup_pictures_* -mtime +50 -type f)"
find /backup/backup_music_* -mtime +30 -type f -delete
{ tar -zcvf /backup/backup_music_$(date -d "today" +"%m%d").tgz /nextcloud/nextcloud-data/lucas/files/Media/Music/Musik ; echo "Lucas Music: $?" >> /home/lucas/.LOG/log_backup_$date.log ; } & PID_MUSIC=$!
pics=true
else
echo "No Picture and Music Backup planed" >> /home/lucas/.LOG/log_backup_$date.log
fi
wait $PID_DOC_MIMI
echo "Documents Mimi finished" >> /home/lucas/.LOG/log_backup_$date.log
wait $PID_DOC_LUC
echo "Documents Lucas finished" >> /home/lucas/.LOG/log_backup_$date.log
if [ $pics ]; then
wait $PID_PIC
echo "Picture Backup Finished" >> /home/lucas/.LOG/log_backup_$date.log
wait $PID_MUSIC
echo "Music Backup Finished" >> /home/lucas/.LOG/log_backup_$date.log
fi
echo "Backup Finished" >> /home/lucas/.LOG/log_backup_$date.log
fi
ENDTIME=$(date +%T)
if $BACKUP_CAL; then
old_cal_bak="$(find /backup/backup_calender_* -mtime +31 -type f)"
find /backup/backup_calender_* -mtime +31 -type f -delete
backup_cal_OC="/backup/backup_calender_NC_$(date -d "today" +"%m%d").ics"
backup_cal_geb="/backup/backup_calender_geb_$(date -d "today" +"%m%d").ics"
backup_cal_home="/backup/backup_calender_home_$(date -d "today" +"%m%d").ics"
#export WGETRC="/home/lucas/Documents/Dokumente/Projekte/Server/www/wgetrc"
wget --no-check-certificate -O "$backup_cal_OC" "https://someoneslinux.ddns.net/remote.php/dav/calendars/lucas/nextcloud?export"
if [ $? -eq 0 ]; then CAL_RET1="nextCloud Calender backup Successfull"; fi
wget --no-check-certificate -O "$backup_cal_geb" "https://someoneslinux.ddns.net/remote.php/dav/calendars/lucas/geburtstage?export"
if [ $? -eq 0 ]; then CAL_RET2="Geburtstags Calender backup Successfull"; fi
wget --no-check-certificate -O "$backup_cal_home" "https://someoneslinux.ddns.net/remote.php/dav/calendars/lucas/haushalt?export"
if [ $? -eq 0 ]; then CAL_RET3="Haushalts Calender backup Successfull"; fi
old_cont_bak="$(find /backup/backup_contacts_* -mtime +31 -type f)"
find /backup/backup_calender_* -mtime +31 -type f -delete
backup_contacts_phone="/backup/backup_contacts_ContactsPhone_$(date -d "today" +"%m%d").vcf"
backup_email_addr="/backup/backup_contacts_EmailAddressen_$(date -d "today" +"%m%d").vcf"
wget --no-check-certificate -O "$backup_contacts_phone" "https://someoneslinux.ddns.net/remote.php/dav/addressbooks/users/lucas/phonecontacts-1?export"
if [ $? -eq 0 ]; then CON_RET1="nextCloud Contacts Phone backup Successfull"; fi
wget --no-check-certificate -O "$backup_email_addr" "https://someoneslinux.ddns.net/remote.php/dav/addressbooks/users/lucas/emailadressen-1?export"
if [ $? -eq 0 ]; then CON_RET2="NextCloud Contacts Email backup Successfull"; fi
fi
if $BACKUP_THESIS;then
old_thesis_bak="$(find /backup/backup_thesis_* -mtime +31 -type f)"
if [ -d /nextcloud/nextcloud-data/lucas/files/Dokumente/Studium/Master/Thesis/ ]; then
{ tar -zcvf /backup/backup_thesis_lucas$(date -d "today" +"%y%m%d_%H%M").tgz /nextcloud/nextcloud-data/lucas/files/Dokumente/Studium/Master/Thesis/ ; echo "Lucas Thesis: $?" >> /home/lucas/.LOG/log_backup_$date.log ; }& PID_THESIS_LUC=$!
else
PID_THESIS_LUC=0
fi
wait $PID_THESIS_LUC
echo "Thesis finished" >> /home/lucas/.LOG/log_backup_$date.log
if [ ! -d /backup/bkp ] ; then mkdir /backup/bkp; fi
last=-1; find /backup/ -type f -name '*thesis*' -printf '%f\0' | sort -nz |
while read -d '' i; do
s=$(stat -c '%s' "/backup/$i");
[[ $s = $last ]] && rm "/backup/$i";
last=$s;
done
#find /backup/ -type f -printf "%s %p\n" | grep "thesis" | sort -n | uniq -d --check-chars=20 | awk '{ print $2 }' | xargs mv -t /backup/bkp/
find /backup/ -maxdepth 1 -type f -name "*thesis*" -mtime +31 -type f -delete
#mv /backup/bkp/* /backup
fi
if [ "$old_bak" == "" ]; then
old_bak="Nothing older than 83 Days removed"
fi
if [ "$old_thesis_bak" == "" ]; then
old_thesis_bak="No Thesis Documents removed"
fi
if [ "$old_doc_bak" == "" ]; then
old_doc_bak="No Documents removed"
fi
if [ "$old_pic_bak" == "" ]; then
old_pic_bak="No Pictures removed"
fi
if [ "$old_music_bak" == "" ]; then
old_music_bak="No Pictures removed"
fi
if [ "$old_cal_bak" == "" ]; then
old_cal_bak="No Calenders removed"
fi
if [ "$old_cont_bak" == "" ]; then
old_cont_bak="No Contacts removed"
fi
IFS=$'\n'; set -f
data_dev=($(df -h | grep "/dev/sd[a-f]" | sed 's/ \+/ /g' | cut -f1 -d' '))
unset IFS; set +f
osspace=""
Out="";
for ((i=0;i<${#data_dev[@]};i++)); do
device="$(df -h "${data_dev[$i]}" | sed 's/ \+/ /g' | tail -1 | cut -f6 -d' ')"
if [ "$device" != "/" ]; then
device="/$(echo $device | rev | cut -f1 -d'/' |rev):"
else
device="/root:"
fi
osspace="$(df -h "${data_dev[$i]}" | tr -d '%' | awk 'NR==2 { printf "Total: %sB, Used: %sB, Free: %sB ... %spercent used\n",$2,$3,$4,$5; }')"
tab_num=$((3 - ${#device} / 8))
Out="$Out${device}"
for ((j=0;j<$tab_num;j++));do Out="$Out\t"; done
Out="$Out$osspace\n"
done
if [[ $BACKUP_DATA == true || $BACKUP_CAL == true ]]; then
mail -s "Automated Servermessage - Backup" lucas-f@live.at << MSG_BODY_HERE
Remove Old Files:
$old_doc_bak
Remove Really Old Files:
$old_bak
Document Backup:
$(cat /home/lucas/.LOG/log_backup_$date.log | grep Documents)
Picture Backup:
$(if [ $pics ]; then printf "%s %s\n%s %s\n" "$old_pic_bak" "$(cat /home/lucas/.LOG/log_backup_$date.log | grep Pictures)" "$old_music_bak" "$(cat /home/lucas/.LOG/log_backup_$date.log | grep Music)"; else printf "No Picture and Music Backup necessary."; fi)
Remove Old Calenders:
$old_cal_bak
Calender Backup:
$CAL_RET1
$CAL_RET2
$CAL_RET3
Remove Old Contacts:
$old_cont_bak
Contacts Backup:
$CON_RET1
$CON_RET2
Directory:
$(printf "$Out")
$(ls -lh /backup/)
Start: $STARTTIME
End: $ENDTIME
MSG_BODY_HERE
fi
echo "Endtime: $ENDTIME"
+29
View File
@@ -0,0 +1,29 @@
#!/bin/bash
QBT_URL="http://localhost:8080"
TRACKERS="myanonamouse|leo-test|nordicq"
API_KEY="qbt_Fw6R39WuJVY7rdhv2IXIc5n8Yfhc"
for HASH in $(
curl -s \
-H "Authorization: Bearer $API_KEY" \
"$QBT_URL/api/v2/torrents/info" \
| jq -r '.[].hash'
)
do
if curl -s \
-H "Authorization: Bearer $API_KEY" \
"$QBT_URL/api/v2/torrents/trackers?hash=$HASH" \
| jq -r '.[].url' \
| grep -Eq "$TRACKERS"
then
curl -s \
-H "Authorization: Bearer $API_KEY" \
--data "hashes=$HASH&value=true" \
"$QBT_URL/api/v2/torrents/setForceStart" \
>/dev/null
echo "Force Start: $HASH"
fi
done