Adds rclone-parents, fixes some other files
This commit is contained in:
@@ -1,9 +1,10 @@
|
||||
[Unit]
|
||||
Description=Defragments the NAS
|
||||
ConditionPathIsMountPoint=/var/mnt/nas
|
||||
RequiresMountsFor=/var/mnt/nas
|
||||
|
||||
[Service]
|
||||
Nice=19
|
||||
IOSchedulingClass=idle
|
||||
Type=oneshot
|
||||
ExecStart=btrfs filesystem defragment -r /var/mnt/nas
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
Description=Timer for the defragment-nas service
|
||||
|
||||
[Timer]
|
||||
OnCalendar=*-*-03 00:00:00
|
||||
OnCalendar=*-06-03 00:00:00
|
||||
OnCalendar=*-12-03 00:00:00
|
||||
Persistent=true
|
||||
Unit=defragment-nas.service
|
||||
|
||||
|
||||
6
files/rclone-parents.service
Normal file
6
files/rclone-parents.service
Normal file
@@ -0,0 +1,6 @@
|
||||
[Unit]
|
||||
Description=Runs rclone to copy the NAS content to the parents NAS
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/flock -n /run/rclone-parents.lock /root/scripts/rclone-parents.sh
|
||||
13
files/rclone-parents.timer
Normal file
13
files/rclone-parents.timer
Normal file
@@ -0,0 +1,13 @@
|
||||
[Unit]
|
||||
Description=Timer for the rclone-parents service
|
||||
|
||||
[Timer]
|
||||
OnCalendar=08:00:00
|
||||
OnCalendar=12:00:00
|
||||
OnCalendar=16:00:00
|
||||
OnCalendar=20:00:00
|
||||
Persistent=true
|
||||
Unit=rclone-parents.service
|
||||
|
||||
[Install]
|
||||
WantedBy=timers.target
|
||||
@@ -1,6 +1,11 @@
|
||||
[Unit]
|
||||
Description=Scrubs the NAS
|
||||
ConditionPathIsMountPoint=/var/mnt/nas
|
||||
RequiresMountsFor=/var/mnt/nas
|
||||
|
||||
[Service]
|
||||
Nice=19
|
||||
IOSchedulingClass=idle
|
||||
KillSignal=SIGINT
|
||||
Type=oneshot
|
||||
ExecStart=btrfs scrub start /var/mnt/nas
|
||||
ExecStart=btrfs scrub start -B /var/mnt/nas
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
Description=Timer for the scrub-nas service
|
||||
|
||||
[Timer]
|
||||
OnCalendar=*-*-05 00:00:00
|
||||
OnCalendar=*-06-05 00:00:00
|
||||
OnCalendar=*-12-05 00:00:00
|
||||
Persistent=true
|
||||
Unit=scrub-nas.service
|
||||
|
||||
|
||||
@@ -3,6 +3,6 @@ set -o errexit -o pipefail -o noclobber -o nounset
|
||||
|
||||
target=/var/mnt/nas/containers/navidrome/storage/music
|
||||
ugid="$(stat -c "%U:%G" "${target}")"
|
||||
source=/var/mnt/nas/containers/nextcloud/storage/data/__groupfolders/1/media/music
|
||||
podman run --rm -v "${source}":/input -v "${target}":/output docker.io/eeacms/rsync -a /input /output
|
||||
source=/var/mnt/nas/containers/nextcloud/storage/data/__groupfolders/1/files/media/music
|
||||
podman run --rm -v "${source}":/input -v "${target}":/output docker.io/instrumentisto/rsync-ssh rsync -a /input/ /output/
|
||||
chown -R "${ugid}" "${target}"
|
||||
|
||||
@@ -2,25 +2,25 @@
|
||||
set -o errexit -o pipefail -o noclobber -o nounset
|
||||
|
||||
echo "Running $(date)"
|
||||
torrents=/var/mnt/nas/containers/qbittorrent/storage/torrents
|
||||
torrents=/var/mnt/nas/containers/qbittorrent/storage/downloads/completed
|
||||
jdownloader=/var/mnt/nas/containers/jdownloader/storage/output/completed
|
||||
target=/var/mnt/nas/containers/nextcloud/storage/data/__groupfolders/1/downloads
|
||||
target=/var/mnt/nas/containers/nextcloud/storage/data/__groupfolders/1/files/downloads
|
||||
|
||||
num_torrents="$(find "${torrents}" -maxdepth 1 -type f | wc -l)" || echo 0
|
||||
num_torrents="$(find "${torrents}" -mindepth 1 -maxdepth 1 | wc -l)" || echo 0
|
||||
if [[ "${num_torrents}" -gt 0 ]]; then
|
||||
find "${torrents}" -maxdepth 1 -type f -exec mv {} "${target}/" \;
|
||||
mv "${torrents}"* "${target}/"
|
||||
fi
|
||||
echo "Found ${num_torrents} torrent files"
|
||||
num_jdownloader="$(ls "${jdownloader}" | wc -l)" || echo 0
|
||||
num_jdownloader="$(find "${jdownloader}" -mindepth 1 -maxdepth 1 | wc -l)" || echo 0
|
||||
if [[ "${num_jdownloader}" -gt 0 ]]; then
|
||||
mv "${jdownloader}/"* "${target}/"
|
||||
fi
|
||||
echo "Found ${num_jdownloader} jdownloader files"
|
||||
total_files=$(("${num_torrents}" + "${num_jdownloader}"))
|
||||
if [[ "${total_files}" -gt 0 ]]; then
|
||||
ugid="$(stat -c "%U:%G" "${target}")"
|
||||
chown -R "${ugid}" "${target}/"*
|
||||
chmod 755 "${target}/"*
|
||||
chown --reference="${target}" -R "${target}/"*
|
||||
chmod --reference="${target}" -R "${target}/"*
|
||||
restorecon -vFR "${target}"
|
||||
echo "Running podman"
|
||||
cd /var/home/nextcloud
|
||||
sudo -u nextcloud podman exec -it nextcloud bash -c "/var/www/html/occ groupfolders:scan 1"
|
||||
|
||||
2
home/root/rclone-parents.sh
Normal file
2
home/root/rclone-parents.sh
Normal file
@@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
/root/scripts/rclone sync --links /var/mnt/nas encrypted-parents:Backup/
|
||||
12
pi4.bu
12
pi4.bu
@@ -88,6 +88,10 @@ storage:
|
||||
mode: 0755
|
||||
contents:
|
||||
local: /home/root/move-downloads-nextcloud.sh
|
||||
- path: /root/scripts/rclone-parents.sh
|
||||
mode: 0755
|
||||
contents:
|
||||
local: /home/root/rclone-parents.sh
|
||||
- path: /root/scripts/copy-music.sh
|
||||
mode: 0755
|
||||
contents:
|
||||
@@ -133,6 +137,14 @@ systemd:
|
||||
enabled: false
|
||||
contents_local: files/move-downloads-nextcloud.service
|
||||
mask: false
|
||||
- name: rclone-parents.timer
|
||||
enabled: false
|
||||
contents_local: files/rclone-parents.timer
|
||||
mask: false
|
||||
- name: rclone-parents.service
|
||||
enabled: false
|
||||
contents_local: files/rclone-parents.service
|
||||
mask: false
|
||||
- name: copy-music.timer
|
||||
enabled: false
|
||||
contents_local: files/copy-music.timer
|
||||
|
||||
@@ -11,7 +11,7 @@ ContainerName=nextcloud
|
||||
Environment=MYSQL_DATABASE=nextcloud
|
||||
Environment=MYSQL_HOST=nextcloud-database
|
||||
Environment=NEXTCLOUD_TRUSTED_DOMAINS=localhost host.containers.internal nextcloud.gtache.ch
|
||||
Environment=PHP_MEMORY_LIMIT=1024M
|
||||
Environment=PHP_MEMORY_LIMIT=2048M
|
||||
Environment=PHP_UPLOAD_LIMIT=100G
|
||||
Environment=REDIS_HOST=nextcloud-redis
|
||||
Environment=TRUSTED_PROXIES=192.168.0.0/16 172.16.0.0/12 169.254.0.0/16 10.0.0.0/8
|
||||
@@ -31,6 +31,7 @@ Volume=nextcloud-apps.volume:/var/www/html/custom_apps
|
||||
Volume=nextcloud-themes.volume:/var/www/html/themes
|
||||
Volume=/var/mnt/nas/containers/nextcloud/storage/redis-session.ini:/usr/local/etc/php/conf.d/redis-session.ini
|
||||
Volume=/var/mnt/nas/containers/nextcloud/storage/remoteip.conf:/etc/apache2/conf-enabled/remoteip.conf
|
||||
Volume=/var/mnt/nas/containers/nextcloud/storage/php-local.ini:/usr/local/etc/php/conf.d/php-local.ini
|
||||
Volume=nextcloud-data.volume:/var/www/html/data
|
||||
|
||||
[Service]
|
||||
|
||||
@@ -16,7 +16,7 @@ Secret=tga-credentials,type=env,target=USER
|
||||
Secret=zero-credentials,type=env,target=USER1
|
||||
Volume=/var/mnt/nas:/nas
|
||||
Volume=/var/mnt/nas/backup/zero:/zero
|
||||
Volume=/var/mnt/nas/paperless/input:/paperless-input
|
||||
Volume=/var/mnt/nas/containers/paperless/storage/consume:/paperless-input
|
||||
|
||||
[Service]
|
||||
Restart=always
|
||||
|
||||
Reference in New Issue
Block a user