Add tries to force uid/gid 0/0

This commit is contained in:
Alexandre
2021-04-29 10:24:13 +02:00
committed by GitHub
parent e12fab6453
commit f4a2240902

View File

@@ -30,19 +30,25 @@ if bashio::config.has_value 'networkdisks'; then
chown -R root:root /mnt/$diskname
#Tries to mount with default options
mount -t cifs -o rw,iocharset=utf8,file_mode=0777,dir_mode=0777,uid=0,gid=0,forceuid,forcegid,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$DOMAIN $disk /mnt/$diskname
bashio::log.info "... trying to mount with default options"
mount -t cifs -o rw,iocharset=utf8,file_mode=0777,dir_mode=0777,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$DOMAIN $disk /mnt/$diskname
#Tries to force uid/gid 0/0
if [ $? != 0 ]; then
bashio::log.info "... trying to force uid 0 gid 0"
mount -t cifs -o rw,iocharset=utf8,file_mode=0777,dir_mode=0777,uid=0,gid=0,forceuid,forcegid,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$DOMAIN $disk /mnt/$diskname
fi
# if Fail test different smb and sec versions
while [ $? -ne 0 ]; do
# Declare all possible options
declare -a SMBVERSION=( ",vers=2.1" ",vers=3.0" ",vers=1.0" ",vers=3.1.1" ",vers=2.0" ",vers=3.0.2" )
declare -a SECVERSION=( ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",sec=" )
declare -a SECVERSION=( ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" )
# Test all options until successful
for SMBVERS in ${SMBVERSION[@]}; do
for SECVERS in ${SECVERSION[@]}; do
bashio::log.warning "... trying to mount with $SMBVERS $SECVERS"
mount -t cifs -o rw,iocharset=utf8,file_mode=0777,dir_mode=0777,uid=$(id -u),gid=$(id -g),forceuid,forcegid,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$DOMAIN $disk /mnt/$diskname || \
bashio::log.warning "... trying to mount with $SMBVERS $SECVERS "
mount -t cifs -o rw,iocharset=utf8,file_mode=0777,dir_mode=0777,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$DOMAIN$SMBVERS $disk /mnt/$diskname || \
mount -t cifs -o rw,iocharset=utf8,file_mode=0777,dir_mode=0777,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$DOMAIN$SMBVERS$SECVERS $disk /mnt/$diskname
done