支持webdav的php网盘,将网盘“变”为电脑的硬盘:网盘的WebDAV挂载的妙用,支持开机启动...

作者:Vicer 来自:hostloc

拥有的网盘越来越多,但是闲置的占绝大部分,如何将它们落到实处,应用一个脚本就能将网盘挂载成电脑的目录。

注:只有支持webdav功能的网盘才能使用,百度网盘等大多数国内网盘并不支持。

安装:

bash WebDAV.sh [WebDAV] [User] [Password] [MountPath]

复制下面完整代码,重命名为WebDAV.sh。

如要修改,请在能读懂的情况下修改。

安装完成后,可以开机自动挂载。

示例:

bash WebDAV.sh ‘https://xxx.com/remote.php/webdav’ ‘UserName’ ‘Password’ ‘/CloudDAV’

第一个字段: 填写完整的WebDAV地址;

第二个字段: 填写你的用户名;

第三个字段: 填写你的密码;

第四个字段: 填写本地完整路径(你要挂载在本地的什么地方,如果没有则新建此文件夹。)

最好用单引号,不要搞非主流字符。因为没做兼容。

用法:

webdav.mnt start 挂载目录

webdav.mnt stop 卸载目录

webdav.mnt restart 重新挂载

注:当正在上传文件时,卸载目录可能不会成功。

将以下代码保存为WebDAV.sh(注意,linux下区分大小写)

#!/bin/sh

[ $# -ne '4' ] && echo -e "Usage:\n bash $0 [WebDAV] [User] [Password] [MountPath]" && exit 1

WebDAV="$1"

User="$2"

Pwd="$3"

WebMount="$4"

apt-get install -y -qq davfs2 fuse-utils libneon27-gnutls

[ $? -ne '0' ] && echo "Install davfs2 fail! " && exit 1

mkdir -p "$WebMount"

rm -rf /etc/davfs2/davfs2.conf

cat >>/etc/davfs2/davfs2.conf<

dav_user root

dav_group root

kernel_fs fuse

buf_size 4

use_locks 0

cache_dir /tmp/WebDAV

cache_size 4

delay_upload 3

EOF

rm -rf /etc/davfs2/secrets

cat >>/etc/davfs2/secrets<

$WebDAV $User $Pwd

EOF

chmod 600 /etc/davfs2/secrets

chmod 644 /etc/davfs2/davfs2.conf

rm -rf /etc/davfs2/webdav.mnt

cat >>/etc/davfs2/webdav.mnt<

#!/bin/sh

### BEGIN INIT INFO

# Provides: webdav.mnt

# Required-Start: \$all

# Required-Stop: \$network \$remote_fs

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: Start daemon at boot time

# Description: Enable davfs by daemon.

### END INIT INFO

DAEMON=/usr/sbin/mount.davfs

PID=/var/run/webdav.pid

WebDAV="$WebDAV"

DavMnt="$WebMount"

test -x \$DAEMON || exit 1

case "\$1" in

start)

[ -n "\$(pgrep mount.davfs)" ] && echo "davfs already running. " && exit 0 || {

exec start-stop-daemon --start --pidfile \$PID --exec \$DAEMON \$WebDAV \$DavMnt -- -f >> /dev/null 2>&1 &

sleep 3

[ -n "\$(pgrep mount.davfs)" ] && echo "davfs start success. " || echo "davfs start fail. "

}

;;

stop)

[ -z "\$(pgrep mount.davfs)" ] && echo "davfs not running. " && exit 0 || {

umount \$DavMnt>> /dev/null 2>&1 &

sleep 3

[ -z "\$(pgrep mount.davfs)" ] && echo "davfs stop success. " || echo "davfs stop fail. "

}

;;

restart)

[ -z "\$(pgrep mount.davfs)" ] || {

umount \$DavMnt>> /dev/null 2>&1 &

sleep 3

[ -z "\$(pgrep mount.davfs)" ] && echo "davfs stop success. " || echo "davfs stop fail. "

}

exec start-stop-daemon --start --pidfile \$PID --exec \$DAEMON \$WebDAV \$DavMnt -- -f >> /dev/null 2>&1 &

sleep 3

[ -n "\$(pgrep mount.davfs)" ] && echo "davfs start success. " || echo "davfs start fail. "

;;

*)

echo "Usage: webdav.mnt {start|stop|restart}"

exit 1

esac

exit 0

EOF

chmod 755 /etc/davfs2/webdav.mnt

ln -sf /etc/davfs2/webdav.mnt /etc/init.d/webdav.mnt

ln -sf /etc/davfs2/webdav.mnt /usr/local/bin/webdav.mnt

update-rc.d -f webdav.mnt remove >>/dev/null 2>&1

update-rc.d webdav.mnt defaults

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值