mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-06-27 01:36:03 +02:00
Compare commits
6 Commits
b986f9ddbe
...
5ab76f575c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5ab76f575c | ||
|
|
3f10b4323b | ||
|
|
59bcf140bc | ||
|
|
92842a0830 | ||
|
|
17da10b78b | ||
|
|
b6886c268a |
@@ -35,7 +35,7 @@ test_mount() {
|
||||
# ---- Write test function ----
|
||||
_test_write() {
|
||||
local testfile="$mountpoint/.writetest_$$"
|
||||
if : > "$testfile" 2>/dev/null; then
|
||||
if : >"$testfile" 2>/dev/null; then
|
||||
rm -f "$testfile"
|
||||
return 0
|
||||
else
|
||||
@@ -54,7 +54,7 @@ test_mount() {
|
||||
echo "... retrying mount with noserverino"
|
||||
MOUNTOPTIONS="${MOUNTOPTIONS},noserverino"
|
||||
|
||||
umount "$mountpoint" 2>/dev/null
|
||||
umount "$mountpoint" 2>/dev/null || true
|
||||
if mount_drive "$MOUNTOPTIONS"; then
|
||||
# retest with new options
|
||||
if _test_write; then
|
||||
@@ -113,43 +113,6 @@ retry_cifs_with_vers_ladder_on_einval() {
|
||||
fi
|
||||
done
|
||||
|
||||
# If still failing with EINVAL, simplify options that sometimes trip older servers/clients
|
||||
if [[ "$MOUNTED" == "false" ]]; then
|
||||
bashio::log.warning "...... still failing after vers ladder; retrying with reduced CIFS options."
|
||||
base_opts="$MOUNTOPTIONS"
|
||||
base_opts="$(echo "$base_opts" | sed -E 's/,vers=[^,]+//g; s/,sec=[^,]+//g')"
|
||||
base_opts="${base_opts//,mfsymlinks/}"
|
||||
base_opts="${base_opts//,nobrl/}"
|
||||
base_opts="$(echo "$base_opts" | sed - differing='')"
|
||||
fi
|
||||
}
|
||||
|
||||
# Fix: previous line accidentally inserted? Remove.
|
||||
retry_cifs_with_vers_ladder_on_einval() {
|
||||
[[ "${FSTYPE:-}" == "cifs" ]] || return 0
|
||||
[[ "${MOUNTED:-false}" == "false" ]] || return 0
|
||||
|
||||
local err
|
||||
err="$(cat "$ERRORCODE_FILE" 2>/dev/null || true)"
|
||||
|
||||
if ! echo "$err" | grep -q "mount error(22)"; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
bashio::log.warning "...... EINVAL (22): trying SMB dialect ladder (3.x -> 2.x)."
|
||||
|
||||
local base_opts try_opts vers
|
||||
|
||||
base_opts="$MOUNTOPTIONS"
|
||||
base_opts="$(echo "$base_opts" | sed -E 's/,vers=[^,]+//g; s/,sec=[^,]+//g')"
|
||||
|
||||
for vers in "3.1.1" "3.02" "3.0" "2.1" "2.0"; do
|
||||
if [[ "$MOUNTED" == "false" ]]; then
|
||||
try_opts="${base_opts},vers=${vers}"
|
||||
mount_drive "$try_opts"
|
||||
fi
|
||||
done
|
||||
|
||||
# Reduce option set if dialect ladder did not help (still EINVAL often)
|
||||
if [[ "$MOUNTED" == "false" ]]; then
|
||||
bashio::log.warning "...... still failing after vers ladder; retrying with reduced CIFS options."
|
||||
@@ -195,7 +158,15 @@ if bashio::config.has_value 'networkdisks'; then
|
||||
SECVERS=""
|
||||
CHARSET=",iocharset=utf8"
|
||||
|
||||
# Clean data (keeps NFS entries intact)
|
||||
# ----------------------------
|
||||
# Normalize / clean networkdisks
|
||||
# ----------------------------
|
||||
|
||||
# Normalize Windows CRLF and multiline entries (HA UI/YAML can introduce these)
|
||||
MOREDISKS="${MOREDISKS//$'\r'/}"
|
||||
MOREDISKS="${MOREDISKS//$'\n'/,}"
|
||||
|
||||
# Clean data (keeps NFS entries intact): normalize "comma with spaces" to plain commas
|
||||
MOREDISKS="$(echo "$MOREDISKS" | sed -E 's/[[:space:]]*,[[:space:]]*/,/g; s/^[[:space:]]+//; s/[[:space:]]+$//')"
|
||||
|
||||
# CIFS domain/workgroup
|
||||
@@ -216,10 +187,18 @@ if bashio::config.has_value 'networkdisks'; then
|
||||
PGID=",gid=$(bashio::config 'PGID')"
|
||||
fi
|
||||
|
||||
for disk in ${MOREDISKS//,/ }; do
|
||||
# Split strictly on commas (no word-splitting/globbing)
|
||||
IFS=',' read -r -a DISK_LIST <<< "$MOREDISKS"
|
||||
|
||||
for disk in "${DISK_LIST[@]}"; do
|
||||
CRED_FILE=""
|
||||
cleanup_cred
|
||||
|
||||
# Per-item trim + safety cleanup
|
||||
disk="${disk//$'\r'/}"
|
||||
disk="$(echo "$disk" | sed -E 's/^[[:space:]]+//; s/[[:space:]]+$//')"
|
||||
[[ -z "$disk" ]] && continue
|
||||
|
||||
disk="$(echo "$disk" | sed 's,/$,,')"
|
||||
disk="${disk//"\040"/ }"
|
||||
|
||||
|
||||
@@ -876,7 +876,7 @@ If you want to do add the repository manually, please follow the procedure highl
|
||||
|
||||
  
|
||||

|
||||
![aarch64no][aarch64no-badge]
|
||||
![aarch64][aarch64-badge]
|
||||
![amd64][amd64-badge]
|
||||
|
||||
✓  [Whoogle Search](whoogle/) : Self-hosted, ad-free, privacy-respecting metasearch engine
|
||||
|
||||
@@ -124,5 +124,5 @@ schema:
|
||||
slug: jellyfin
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons
|
||||
version: "10.11.6-4"
|
||||
version: "10.11.6-5"
|
||||
video: true
|
||||
|
||||
@@ -91,7 +91,6 @@ options:
|
||||
TRANSMISSION_DOWNLOAD_DIR: /share/downloads
|
||||
TRANSMISSION_HOME: /config/addons_config/transmission
|
||||
TRANSMISSION_INCOMPLETE_DIR: /share/incomplete
|
||||
TRANSMISSION_V3_UPDATE: "true"
|
||||
TRANSMISSION_WATCH_DIR: /share/watch_dir
|
||||
TRANSMISSION_WEB_UI: flood-for-transmission
|
||||
WEBPROXY_ENABLED: "true"
|
||||
|
||||
Reference in New Issue
Block a user