更新文件: README.txt, runwebdavsim.sh, rclonemount.sh, webdav_simulator.amd64, alistservers.template.txt 等8个文件

This commit is contained in:
ZJP Monitor
2025-07-02 10:40:08 +08:00
parent 1d0d035237
commit a45a368413
8 changed files with 106 additions and 11 deletions

View File

@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
prog="$0"
while [ -h "${prog}" ]; do
@ -14,6 +14,7 @@ while [ -h "${prog}" ]; do
done
progdir=`dirname "${prog}"`
cd "${progdir}"
progdir=$(pwd)
num=$(mount |grep "/external"|wc -l)
if [ $num -lt 1 ]; then
@ -27,11 +28,33 @@ chmod 777 external/rclone.media rclone.cache
url=$(cat rclone.conf |grep -E "^url"|sed -e 's/.*\(http.*\)/\1/'|head -1)
echo "webdav url:$url"
mkdir -p ${progdir}/emby.tmp
chmod 777 ${progdir}/emby.tmp
export TMPDIR=${progdir}/emby.tmp
if [ "$SELFIP" == "" ]; then
interface=$(ip route show | grep default | awk '{print $5}')
export SELFIP=$(ip addr show $interface | grep -w inet | awk '{print $2}' | cut -d/ -f1|head -1)
echo "DETECT SELF IP:${SELFIP}, if this is not correct, change SELFIP to your real ip"
fi
curl -v -L $url
if [ $? -eq 0 ]; then
echo "WARN:webdavsim is running, data may be outdate."
else
echo "run webdavsim..."
nohup ./runwebdavsim.sh >/dev/null 2>&1 &
fi
echo "TRY CONNECT webdavsim, please wait... abount(30s)"
webdavsimok="0"
for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
do
echo "loop: $i"
curl -v -L $url
if [ $? -eq 0 ]; then
webdavsimok="1"
break
fi
echo "found error, sleep 3s, and retry..."
@ -44,7 +67,12 @@ if [ $num -gt 1 ]; then
exit
fi
echo "ready to rclone mount, please wait...(abount 30s)"
if [ "$webdavsimok" != "1" ]; then
echo "webdavsim not run, exit"
exit
fi
echo "ready to rclone mount, please wait...(abount 60s)"
rclone --config rclone.conf mount webdavsim-nas:/dav external/rclone.media --daemon --daemon-wait 60s --no-check-certificate --allow-other --umask 000 --default-permissions --dir-cache-time 1h --webdav-vendor rclone --vfs-cache-mode writes --vfs-read-chunk-size 32M --vfs-read-chunk-size-limit 1G --buffer-size 64M --vfs-cache-max-age 1h --vfs-cache-max-size 10G --timeout 1800s --contimeout 10s --daemon-timeout 300s --poll-interval 1s --low-level-retries 2 --cache-dir rclone.cache --log-file rclone.log
echo "mount ok"
@ -57,7 +85,8 @@ if [ "$SELFIP" != "" ]; then
if [ -e emby.config/config/system.xml ]; then
touch config.selfip.modified.dat
echo "auto change embysim's selfip to $SELFIP, please restart embysim"
sed -i -e "/<LocalNetworkAddresses>/{:a;N;/<\/LocalNetworkAddresses>/!ba;s/.*<\/LocalNetworkAddresses>/<LocalNetworkAddresses><string>$SELFIP<\/<string><\/LocalNetworkAddresses>/}" emby.config/config/system.xml
sed -i -e "/<LocalNetworkAddresses>/{:a;N;/<\/LocalNetworkAddresses>/!ba;s/.*<\/LocalNetworkAddresses>/<LocalNetworkAddresses><string>$SELFIP<\/string><\/LocalNetworkAddresses>/}" emby.config/config/system.xml
sed -i -e "s/<LocalNetworkAddresses \/>/<LocalNetworkAddresses><string>$SELFIP<\/string><\/LocalNetworkAddresses>/" emby.config/config/system.xml
fi
fi
fi