DeepinV20自动挂载webdav脚本有时间再换成一键的

DeepinV20自动挂载webdav脚本,有时间再换成一键的脚本吧
by 一一网络 admin@proyy.com
deepin v20 开机联网自动挂载webdav,不会开机卡死。
1、安装webdav支持

sudo apt-get install davfs2 -y

2、配置webdav免密码登录

sudo echo "use_locks 0"  >>/etc/davfs2/davfs2.conf
sudo echo "webdav的地址 用户名 密码" >>/etc/davfs2/secrets
sudo chmod 0600 /etc/davfs2/secrets

3、配置webdav 开机自启动
3.1 webdav 自启项

touch  ~/.config/autostart/mount_auto_boot.desktop
dedit ~/.config/autostart/mount_auto_boot.desktop

内容如下:

[Desktop Entry]
Type=Application
Exec="/opt/mount_auto_boot/mount_auto_boot.sh"
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en_IN]=mount-auto
Name=mount-auto
Comment[en_IN]=mount-auto
Comment=mount-auto

3.2 webdav 自启脚本 这里需要修改实际webdav的地址跟实际挂载目录

sudo mkdir /opt/mount_auto_boot/
sudo touch /opt/mount_auto_boot/mount_auto_boot.sh
dedit /opt/mount_auto_boot/mount_auto_boot.sh

内容如下:

#!/bin/bash
#moount webdav
#随便设置两个可以ping通的ip或者地址,联网检测,IP2设置为webdav的域名或者服务器地址
IP1="180.76.76.76"
IP2="www.proyy.com"
mount_count=1
#设置webdav地址:
webdav='https://www.proyy.com'
#设置webdav挂载目的地址:
mnt_webdav='/mnt/webdav'
mkdir $mnt_webdav >/dev/null 2>&1
while true
do
    df -Th|grep $webdav
    if [ "$?" != "0" ]
    then
        echo "mount webdav..........fail" >>/opt/mount_auto_boot/mount_auto_boot.log
        sleep 1
        ping -s 1 -c 1 $IP1 #去PING第1个IP
        if [ "$?" = "0" ]
        then
            echo "ping $IP1 Success" >>/opt/mount_auto_boot/mount_auto_boot.log
            ping -s 1 -c 2 $IP2 #去PING第2个IP
            if [ "$?" != "0" ]
            then
                echo "ping $IP2 ERROR" >>/opt/mount_auto_boot/mount_auto_boot.log
            else
                echo "ping $IP2 SUCCESS,mount webdav.........." >>/opt/mount_auto_boot/mount_auto_boot.log
                sudo /usr/bin/mount -t davfs $webdav /mnt/webdav >>/opt/mount_auto_boot/mount_auto_boot.log 2>&1
                sleep 3
                df -Th|grep $webdav
                if [ "$?" != "0" ]
                then
                    echo "mount webdav..........fail" >>/opt/mount_auto_boot/mount_auto_boot.log
                    continue
                else
                    echo "mount_count:$mount_count"
                    echo "mount webdav..........done" >>/opt/mount_auto_boot/mount_auto_boot.log
                    df -Th|grep $webdav >>/opt/mount_auto_boot/mount_auto_boot.log
                    echo "mount_count:$mount_count" >>/opt/mount_auto_boot/mount_auto_boot.log
                    break
                fi
            fi
        else
            echo "ping $IP1 ERROR"
            mount_count=$[$mount_count+1]
            sleep 5 #设置多长时间去PING一次
            continue
        fi
    else
        echo "mount_count:$mount_count"
        echo "mount webdav..........done" >>/opt/mount_auto_boot/mount_auto_boot.log
        df -Th|grep $webdav >>/opt/mount_auto_boot/mount_auto_boot.log
        echo "mount_count:$mount_count" >>/opt/mount_auto_boot/mount_auto_boot.log
        break
    fi
done
exit 0

保存一下,重启电脑登录,连接网络,就自动挂载好了。
小白脚本,大神无喷哈,嘿嘿。
![97195-ugcu77mmr7.png](https://www.proyy.com/wp-content/uploads/2020/11/2913884348.png)

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享