5f30821078
- /home/dot_config/rclone/system/s3-system.service.tmpl - /home/dot_config/rclone/private_docker-rclone.conf.tmpl - /home/.chezmoidata.yaml - /home/.chezmoiscripts/universal/run_onchange_after_95-bootstrap-zsh-plugins.sh.tmpl - /home/.chezmoiscripts/universal/run_onchange_after_51-samba.sh.tmpl - /home/dot_local/bin/executable_rclone-mount - /home/dot_config/rclone/system/s3-public.service.tmpl - /home/dot_config/rclone/system/s3-private.service.tmpl - /home/dot_config/rclone/private_system-rclone.conf.tmpl - /home/dot_config/rclone/merge_private_rclone.conf.tmpl - /home/dot_config/rclone/s3-user.service.tmpl - /scripts/src/provision.sh.tmpl
65 lines
1.7 KiB
Bash
65 lines
1.7 KiB
Bash
#!/usr/bin/env sh
|
|
|
|
### Variables
|
|
TYPE="$1"
|
|
USER="$2"
|
|
MOUNT="$3"
|
|
|
|
### Path definitions
|
|
if [ "$TYPE" = 'user' ]; then
|
|
if [ -d /Applications ] && [ -d /System ]; then
|
|
USER_FOLDER='Users'
|
|
else
|
|
USER_FOLDER='home'
|
|
fi
|
|
CACHE_FOLDER="/$USER_FOLDER/$USER/.cache/rclone"
|
|
CONFIG_FOLDER="/$USER_FOLDER/$USER/.config/rclone"
|
|
LOG_FOLDER="/$USER_FOLDER/$USER/.local/log"
|
|
LOG_FILE="$LOG_FOLDER/$MOUNT.log"
|
|
MOUNT_PATH="/$USER_FOLDER/$USER/.local/mnt/$MOUNT"
|
|
else
|
|
CACHE_FOLDER="/var/cache/rclone/$MOUNT"
|
|
CONFIG_FOLDER="/etc"
|
|
LOG_FOLDER="/var/log/rclone"
|
|
LOG_FILE="$LOG_FOLDER/$MOUNT.log"
|
|
if [ -d /Applications ] && [ -d /System ]; then
|
|
MNT_FOLDER='Volumes'
|
|
else
|
|
MNT_FOLDER='mnt'
|
|
fi
|
|
MOUNT_PATH="/$MNT_FOLDER/$MOUNT"
|
|
fi
|
|
|
|
### Ensure folders exist
|
|
for FOLDER in "$CACHE_FOLDER" "$CONFIG_FOLDER" "$LOG_FOLDER" "$MOUNT_PATH"; do
|
|
if [ ! -d "$FOLDER" ]; then
|
|
mkdir -p "$FOLDER" || echo "ERROR: Need permissions for $FOLDER"
|
|
fi
|
|
done
|
|
|
|
### Define rcloneignore location
|
|
RCLONE_IGNORE="$CONFIG_FOLDER/rcloneignore"
|
|
if [ ! -f "$RCLONE_IGNORE" ] && [ -f "/etc/rcloneignore" ]; then
|
|
RCLONE_IGNORE='/etc/rcloneignore'
|
|
fi
|
|
|
|
### Mount
|
|
/usr/bin/rclone --config="$CONFIG_FOLDER/rclone.conf" \
|
|
mount \
|
|
--cache-tmp-upload-path="$CACHE_FOLDER/$MOUNT-upload" \
|
|
--cache-chunk-path="$CACHE_FOLDER/$MOUNT-chunks" \
|
|
--cache-workers=8 \
|
|
--cache-writes \
|
|
--cache-dir="$CACHE_FOLDER/$MOUNT-vfs" \
|
|
--cache-db-path="$CACHE_FOLDER/$MOUNT-db" \
|
|
--log-file="$LOG_FILE" \
|
|
--no-modtime \
|
|
--drive-use-trash \
|
|
--stats=0 \
|
|
--checkers=16 \
|
|
--bwlimit=40M \
|
|
--dir-cache-time=60m \
|
|
--vfs-cache-mode full \
|
|
--cache-info-age=60m \
|
|
--filter-from="$RCLONE_IGNORE"
|
|
"$MOUNT":/ "$MOUNT_PATH"
|