macOS上基于httpd-dav搭建WebDav服务
后台-插件-广告管理-内容页头部广告(手机) |
文章目录
- 配置 Apache httpd
- 修改 ServerName
- 启动验证 httpd 服务
- 启用 Dav 扩展服务配置
- 配置 httpd 扩展 Dav 服务
- 设置共享目录文件夹
- 配置 DavLockDB 目录
- 创建 WebDAV 访客用户
- httpd-dav.conf 主要改动部分
- Basic
- Digest
- 共享多个目录
- 授予 httpd 完全磁盘访问权限
- 验证更新配置重启Apache Httpd
- 局域网连接验证WebDAV服务
- 本地无法修改共享目录问题探讨
- 现有 umask 下的方案探索
- 尝试将 umask 修改为 002?
- Finder 挂载 WebDAV 卡死问题
- curl 命令行访问操作 WebDAV
- linux 挂载 WebDAV 云盘
- 参考
在局域网中,要想共享或访问 macOS 机器上的文件,可以通过文件共享、屏幕共享或 远程登录 这几种方式:
- FS(SMB): Set up file sharing on Mac,Control access to your Public folder on Mac。
- SSH+SFTP: Allow a remote computer to access your Mac
- Screen Sharing(VNC): Turn Mac screen sharing on or off,Share the screen of another Mac。
- RD: Enable remote management for Remote Desktop
FS 模式一般默认开放给 everyone 只读,可以以 Guest User 身份免登录访问,但是一旦涉及到要开放写权限,会涉及到系统账户分级分组管理和ACL权限控制和分配粒度问题。局域网内怎么样部署简易轻量的共享同步存储系统呢?
在多终端设备时代,很多人都购买了在线网络云盘服务,或者自己动手DIY搭建部署家庭局域网NAS私有云服务器,作为家里的数据和影音中心,方便文件共享和存储备份同步。另一个日益增长的需求就是分布式协作,Google文档、腾讯文档等产品就是解决这类问题的在线协同编辑的办公软件。
早在1996年,加州大学尔湾分校博士毕业生Jim Whitehead就与W3C共同主办了两场会议讨论了万维网上的分布式创作问题,并成立了WebDAV工作小组。
WebDAV 是 Web-based Distributed Authoring and Versioning 的缩写,即基于Web的分布式编写和版本控制。它是对 HTTP 的扩展,为用户在服务器上创建、更改和移动文档提供了一个框架,方便用户间协同编辑和管理存储在万维网服务器上的文档。
因为基于HTTP,WebDAV 在广域网上共享文件有天然的优势,移动端文件管理APP大多都支持WebDAV协议,使用HTTPS还能保安全性。微软的Office和自家Sharepoint服务器通信,苹果的iWork套件也是基于WebDAV。Apache和Nginx都扩展支持WebDAV,可作为WebDAV文件共享服务器软件。
本文记录了在 macOS 上基于内置的 Apache Httpd 搭建 WebDAV 服务的步骤流程,以供备忘和参考。
配置 Apache httpd
Apache Httpd 配置文件:/etc/apache2/httpd.conf。
$ cd /etc/apache2/ // 备份文件,以防不测 $ sudo cp httpd.conf httpd.conf.bak $ sudo vim httpd.conf- 1
- 2
- 3
- 4
默认的文档服务目录:
DocumentRoot "/Library/WebServer/Documents"- 1
- 2
修改 ServerName
通过以下命令获取主机名:
- hostname
- scutil --get ComputerName
- scutil --get LocalHostName
搜索 ServerName 注释行,设置与主机名称一致
ServerName mbpa1398:80- 1
启动验证 httpd 服务
由于尚未配置 webdav 扩展服务,暂时先不管 webDAV 服务,先把 httpd server 跑起来。
请检查 wfsctl status 是否为禁用状态:
$ sudo wfsctl status disabled- 1
- 2
如果否,请先执行 sudo wfsctl stop 停止,否则可能会有端口冲突等问题导致后续无法访问。
执行 sudo apachectl -k start 启动 Apache Httpd 服务,然后在本地命令行输入 curl localhost,正常应返回 DocumentRoot 下的 index.html.en 页面:
It works!
- 1
或在浏览器输入 http://localhost 或 http://mbpa1398.local 看看是否正常输出 It works! 。
Stopping and Restarting Apache HTTP Server - Apache HTTP Server Version 2.4
# 停止内置 Apache 方法 $ sudo apachectl -k stop $ sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null- 1
- 2
- 3
启用 Dav 扩展服务配置
移除以下配置文件中 5 行行首的注释:
92 #LoadModule auth_digest_module libexec/apache2/mod_auth_digest.so 165 #LoadModule dav_module libexec/apache2/mod_dav.so 176 #LoadModule dav_fs_module libexec/apache2/mod_dav_fs.so 177 #LoadModule dav_lock_module libexec/apache2/mod_dav_lock.so 533 #Include /private/etc/apache2/extra/httpd-dav.conf- 1
- 2
- 3
- 4
- 5
- 6
- LoadModule 加载 mod_dav 相关的三个动态库和用于 digest auth 验证的动态库。
- Include 包含(引入)dav 扩展服务配置(extra/httpd-dav.conf)。
如果使用默认的认证方式 AuthType Digest,则需加载 mod_auth_digest.so。
如果改为 Basic,默认已经加载了 mod_auth_basic.so,无需加载 mod_auth_digest.so。
配置 httpd 扩展 Dav 服务
Httpd 的 Dav 扩展服务配置文件:/etc/apache2/extra/httpd-dav.conf。
$ cd extra # 备份配置文件 $ sudo cp httpd-dav.conf httpd-dav.conf.bak # 编辑配置文件 $ sudo vim httpd-dav.conf- 1
- 2
- 3
- 4
- 5
设置共享目录文件夹
macOS 下自带的 Apache Httpd 服务的站点目录有两级:
- 系统级的根目录:httpd.conf 中配置的 DocumentRoot(/Libraray/WebServer/Ducuments),对应网址: http://localhost/。
- 用户级的根目录:对应配置 httpd-userdir.conf(~/Sites),对应网址:http://localhost/~user/。
httpd.conf 中默认未启用用户级站点配置 httpd-userdir.conf:
# User home directories #Include /private/etc/apache2/extra/httpd-userdir.conf- 1
- 2
httpd-userdir.conf 内容如下:
#Include /private/etc/apache2/users/*.conf- 1
- 2
- 3
- 4
在 /etc/apache2/users/ 目录下,可以看到当前用户的配置 faner.conf:
- 1
- 2
- 3
- 4
按照 Apache 的部署策略,本机的全局站点部署在系统级根目录,用户级的站点部署在家目录下的 Sites 下。
暂时没有使用 Apache 部署个人站点的需求,所以先在 ~Sites 下新建 DAVNAS 目录用作 WebDAV 共享服务。
第19行指定共享服务目录:/Users/faner/Sites/DAVNAS。
第17行设置 alias 名字为 /webdav,为后续访问 URL 的根路径。
- 1
- 2
- 3
httpd.conf 中指定了运行 httpd daemon 进程的用户和组:
User _www Group _www- 1
- 2
macOS 下 mkdir/touch 新创建的文件(夹),默认对 staff 工作组和 everyone 都开放了 Read Only 权限。
客户端通过 HTTP Basic/Digest 认证访问 web 服务,运行 httpd 服务的 _www._www 用户作为 everyone,拥有对 Directory 目录的只读浏览权限。
想要让 httpd 有权限修改/写入共享的 Directory 目录,需要将该目录更改为 _www._www 用户组名下。调用 chown 命令即可:
$ sudo chown -R _www:_www /Users/faner/Sites/DAVNAS- 1
此项修改将导致本地管理员无法直接写 Directory 目录,详见后续讨论。
配置 DavLockDB 目录
创建 /opt/webdav/var 目录:
$ sudo mkdir -p /opt/webdav/var # -R? $ sudo chown _www:_www /opt/webdav/var- 1
- 2
- 3
修改 httpd-dav.conf 第 15 行的 DavLockDB 路径配置:
# 15 DavLockDB "/usr/var/DavLock" 15 DavLockDB /opt/webdav/var/DavLock- 1
- 2
创建 WebDAV 访客用户
新建存储密码的文件 user.passwd,并修改所属的用户和组。
$ sudo touch /opt/webdav/user.passwd $ sudo chown _www:_www /opt/webdav/user.passwd- 1
- 2
紧接着,为 webdav 域新增用户 username。
如果 AuthType 是 Digest,执行 htdigest 命令:
$ sudo htdigest -c /opt/webdav/user.passwd webdav $username- 1
如果 AuthType 改为了 Basic,则执行 htpasswd 命令:
$ sudo htpasswd -c /opt/webdav/user.passwd $username- 1
其中, -c 选项将 truncate 已存在的密码文件。
根据提示,为新增的用户(username)设置密码并确认。
可以提前创建多个账号,分配给不同的局域网访客用户。
httpd-dav.conf 主要改动部分
Basic
- 改:DavLockDB
- 改:AuthName
- 改:AuthUserFile
- 注:AuthDigestProvider
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
Digest
- 改:DavLockDB
- 改:AuthName
- 改:AuthUserFile
- 增:Require valid-user
- 注:
…
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
共享多个目录
建议把要共享的内容放在一个共享目录(DAVNAS),然后通过 /webdav 访问。
如果有多个共享目录,可以复制 Alias、Directory,建立多组 URL 路径映射。
Alias /webdav1 "/Users/faner/Sites/DAVNAS1"- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
这样,后续就可以通过 /webdav1, /webdav2 分别访问不同的共享目录。
授予 httpd 完全磁盘访问权限
将 DAVNAS 共享目录分配给 _www:_www 后,还得给 httpd 相关 daemon 进程分配磁盘访问权限,这样才能读写磁盘文件系统。
打开 macOS 设置(System Settings),隐私与安全性(Privacy & Security),完全磁盘访问权限(Full Disk Access),
点按左下角的 + 号,在打开的访达窗口按 Shift+Command+G 调出路径访问方式,输入 /usr/sbin/httpd 回车,找到 httpd 命令添加。
依此方法,添加 /usr/sbin/htdigest(或 /usr/sbin/htpasswd)。
验证更新配置重启Apache Httpd
在验证服务之前,可以调用 apachectl 或 httpd 命令查看配置:
$ apachectl -t -D DUMP_INCLUDES $ apachectl -t -D DUMP_RUN_CFG- 1
- 2
执行 apachectl -t(或 apachectl configtest)检查 Apache Httpd 配置文件:如果仅输出一行 Syntax OK 代表配置正确;否则,表示配置有问题,请按提示检查配置文件,也可查看分析问题日志 /var/log/apache2/error_log。
如果 configtest 遇到以下错误,请执行 sudo mkdir /private/var/log/apache2 创建 apache2 日志文件夹。
$ apachectl -t (2)No such file or directory: AH02291: Cannot access directory '/private/var/log/apache2/' for main error log AH00014: Configuration check failed- 1
- 2
- 3
配置文件验证无误后,执行 sudo apachectl graceful 重载配置文件使生效。
最后,重新启动 Apache 服务器:sudo apachectl -k restart。
局域网连接验证WebDAV服务
打开本机访达(Finder),按 Command+k 连接服务器,输入 http://mbpa1398.local/webdav/,然后输入在 user.passwd 中配置的账户密码,看看是否可以正常访问。
- 如果机器名无法解析(unable to resolve host),可以换成局域网 IP 访问:http://192.168.0.100/webdav/ , 或者考虑在 /etc/hosts 中添加条目:127.0.0.1 mbpa1398.local 。
本机验证通过后,在局域网其他终端(例如 Mac Finder,iPhone PDF expert)上尝试连接 webdav 服务。连接成功后,即可进行简单的多用户协作。
这样,就将 DAVNAS 配置为家庭局域网内的数据中心,支持多设备共享和编辑同步文件。
将配置文件 httpd-dav.conf 中的 Directory 配置为外挂硬盘,例如 /Volumes/WDHD,即可变为简陋的 NAS。
有条件的,可以进一步升级支持 HTTPS 安全访问,需要在 httpd.conf 引入 httpd-ssl.conf 并配置加载 ssl 相关模块,还得使用 openssl 创建自签名证书。
如果家里的宽带有分配公网 IP,可以在路由器中配置端口映射,支持外网访问。这样,即使身在外边,也可远程访问家里的 WebDAV 服务。
本地无法修改共享目录问题探讨
在服务器配置 WebDav 服务目录 Directory(/Users/faner/Sites/DAVNAS)时,将其 owner 修改为了 httpd 用户( _www._www)。
这样修改后,本地其他用户(包括当前用户)将无法再直接写该目录。当前用户 faner:staff 尝试写入时要求密码认证,认证后可以强制写入,但是 owner 就变成了当前用户 faner,httpd 用户 _www 又没有这个文件的写入权限了!
所以,对于 WebDAV 共享服务目录,预期所有用户都统一以 WebDAV 客户形式请求 httpd-dav 服务器以 _www 身份对其执行写入操作。带来的不便之处在于,即使服务器本地管理员,也需连接挂载到本地(/Volumes/webdav)之后才能执行写入操作。
最简单粗暴的方案:修改 httpd.conf 中的 User:Group 为当前用户组 faner:staff(共享服务目录相应也需要 chown),即 httpd 以当前用户的身份启动服务,当前用户当然可以直接修改写入共享服务目录。
如果害怕 httpd 以管理员身份运行权限过高甚至为非作歹,最好还是维持 httpd.conf 中默认的 User:Group 配置。那么,我们就得探究其他的变通方案。
这里涉及到 UNX 读写文件的权限控制问题,让我们按照以下步骤探究一下服务器本地和加载的“云盘”下文件(夹)的权限。
- 使用 ls -l 命令,查看服务器本地共享目录(/Users/faner/Sites/DAVNAS)的权限是 drwxr-xr-x(755)。
- 登录 WebDAV 服务后,本地挂载点 /Volumes/webdav 下看到的文件(夹)权限是rwx------(700),即当前用户拥有对该云盘的全部权限。
- 向云盘粘贴写入文件后,回到本地共享目录查看,其文件(夹)的 owner 是 _www,文件夹权限是 drwxr-xr-x(755),文件权限是 -rw-r--r--(644)。
macOS/Linux 下,系统按照 umask 设置用户创建文件(夹)的默认权限。在命令行输入 umask 其值为 022(八进制),即 owner 拥有全部权限,同时屏蔽了用户组 g 和其他用户 o 的写权限。
当创建一个文件夹时,其权限=777 & ~umask(Python下计算:oct(0o777 & ~0o022) = ‘0o755’),文件的权限是 -rw-r--r--(644),即 owner 拥有读写权限,用户组 g 和其他用户 o 拥有只读权限。
根据以上分析,按照 umask 权限屏蔽策略,只有 httpd 用户(_www) 这个 owner 对 WebDav 服务目录 Directory 拥有写权限,其他用户(包括当前用户 faner:staff)只有只读权限。
解决思路:如果有办法修改 httpd 用户(_www)的 umask 为 002,即开放其所在用户组(_www)的写权限,然后执行 sudo dscl . -append /Groups/_www GroupMembership faner 将当前用户 faner 加入 _www 用户组,当前用户即有权限直接写本地 WebDav 服务目录 Directory。
现有 umask 下的方案探索
Webdav (Apache) 的文件权限问题 给出了一种解决方案:
- 将共享目录的 owner 从 _www:_www 修改为 faner:_www:
- 1
- 为组加上s 标志,这样其下新建的文件就会自动 setgid 为 _www 组的 ID:
- 1
For a directory, g+s overrides the group id that new files and directories will have (it is usually inherited from the creator).
在这种方案中,改变文件夹的 owner 和 mod,当前用户 faner 不用加入 _www 组,即可在共享文件夹新建文件(夹)。
- 新建文件夹隶属 faner:_www,权限为 drwxr-xr-x
- 新建文件隶属 faner:_www,权限为 -rw-r–r–
受现有 umask=022 制约,新建的文件(夹)的用户组均无 w 权限。
webdav 客户端对应的 httpd 用户 _www 将只有 r 读浏览权限,无法写入!
考虑为共享目录所属组 _www 开放写权限:
# 755 -> 775 $ sudo chmod -R g+w ~/Sites/DAVNAS- 1
- 2
并将当前用户 faner 加入 _www 组:
# -delete 删除 $ sudo dscl . -append /Groups/_www GroupMembership faner- 1
- 2
这样的话,共享目录维持为 _www:_www 所有,_www 组员 faner 可向根目录修改写入数据。
但是,faner:_www 在根目录新建文件属性为 -rw-r--r--@,一旦被 webdav 客户端修改,其 owner 变为 _www,属性中的 @ 消失,本地管理员 faner 又无权修改该文件!
- 客户端新建的文件 owner 为 _www:_www,faner 在本地无权修改写入!
归根结底,还是受现有 umask=022 制约,新建的文件夹并不会继承根目录的 g+w,即用户组均无 w 写权限。服务端 faner 或客户端 _www 建的文件夹,彼此都无权修改写入!
所以,此部分仅作为探索记录,奇技淫巧和歪门邪道终究不能登堂入室取得正果。
尝试将 umask 修改为 002?
CentOS、Ubuntu 下的方案参考 Setting the umask of the Apache user:
# CentOS $ echo "umask 002" >> /etc/sysconfig/httpd $ service httpd restart # Debian and Ubuntu echo "umask 002" /etc/apache2/envvars service apache2 restart- 1
- 2
- 3
- 4
- 5
- 6
- 7
macOS 下,参考 Apache2 & umasks,需要修改 apache 的环境变量配置文件 /usr/sbin/envvars:
$ sudo vim /usr/sbin/envvars # set custom umask, allow group writing umask 002- 1
- 2
- 3
参考 Set umask in OS X Yosemite 和 Mac umask apache,修改 org.apache.httpd.plist 配置文件:
$ sudo vim /System/Library/LaunchDaemons/org.apache.httpd.plist add- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
可惜的是,以上两个系统配置文件均隶属 root:wheel, 即使执行 sudo -i 或 sudo su - 切换到 root 身份,进入恢复模式执行 csrutil disable 关闭 SIP(System Integrity Protection),也还是处于只读保护状态,无法修改。至于想通过 sudo mount -uw / 把整个磁盘重新 mount 为可写模式更是痴心妄想!
网上有很多此类问题的讨论,随着 macOS 系统的安全策略升级,有些方案已经失效:
- MAC: Root User Not Getting Edit Permissions
- Cannot add/modify system or root dir files even though I’m logged in as root user
- Can’t edit read only file even when root
- Still can’t edit /System/Library after disabling SIP : r/MacOS
参考苹果相关官方文档:
- Signed system volume security in iOS, iPadOS and macOS - Apple Support (HK)
- About the read-only system volume in macOS Catalina or later: Apple has made changes to Catalina to lock down the system files which are now stored and mounted as a read-only volume.
在 Set a custom umask in macOS 中,官方给出了修改 umask 的方案,不过只能针对 system 和 user(所有用户)全局设置,无法针对具体用户(_www)设置 umask。
# user: 所有用户 sudo launchctl config user umask nnn # system: 系统用户 sudo launchctl config system umask nnn- 1
- 2
- 3
- 4
config 目标只能为 system | user,尝试执行 sudo launchctl config user umask 002 报错:
sudo launchctl config _www umask 002 Usage: launchctl config- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
当然,如果不介意,也可通过这种方式全局修改所有用户(user )的 umask 为 002,向同一用户组开放写权限。
期待 apache 官方未来预留一个用户级环境变量的配置机会,或者采用 nginx 平替(为www-data用户(nginx)更改umask值)。
或者,暂时就此作罢,服务器本地管理员也登录挂载 WebDAV 云盘后,统一以 Web HTTP 客户身份同步操作云盘。
Finder 挂载 WebDAV 卡死问题
除了在 Finder 中手动连接服务器(Connect to Server),也可考虑改用内置的 mount 系列命令行(或第三方命令行工具 rclone )挂载/卸载 WebDAV:
# 创建本地挂载点目录 $ sudo mkdir /Volumes/webdav # 修改用户名和用户组为你自己的用户(组) $ sudo chown -R faner:staff /Volumes/webdav # 使用 mount_webdav 命令加载 WebDAV,按照提示输入 username:password $ mount_webdav -i http://mbpa1398.local/webdav/ /Volumes/webdav # 使用 diskutil umount 命令卸载 WebDAV $ diskutil umount /Volumes/webdav- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
挂载成功后,执行 df -h 命令会输出一条 Filesystem=http://mbpa1398.local/webdav,Mounted on /Volumes/webdav 的条目。
无论哪种方式,挂载成功后,Finder 侧边栏的 Locations/Network 中都会出现相应网盘映射。
macOS Finder 对 WebDAV 的支持貌似不是那么好,可考虑 Finder 的替代品 QSpace 或使用专业的云盘加载工具软件 Mountain Duck、CloudMounter 等。
从实际体验来看,iPad/iPhone 上的 PDF Expert 挂载局域网 WebDAV 后,工作得挺稳定,回写同步做得比较好。在 macOS 上编辑 PDF 文件,时不时转菊花,有时候等一会能恢复,有时候等了很久还是卡死。
此时,使用 ⌥+⌘+esc 打开查看 Force Quit Applications 窗口,其中 PDF Expert 为 not responding 卡死状态,点击底下的 Relaunch 按钮,也并没有解决问题。过一会回到 Finder 中的 /Volumes/webdav,点几下也卡死。在 Force Quit Applications 窗口点选 Finder Relaunch,Finder 关闭后迟迟没有重新打开。
最初,遇到这种情况没辙,只能按住电源键强制重启,但是总这么搞也不是办法。稍微研究了一下,通过 macOS 提供的诊断工具箱,可以找到相关进程杀之。
通过 ps aux | grep webdav 过滤 webdav 相关的进程,或利用 lsof 命令过滤服务器 IP 查找出 webdav 网络连接和进程 PID。
$ ps aux | grep webdav # or $ lsof -nPi4 +c0 +M | grep 192.168.0.100lsof 显示有些 TCP 连接处于 SYN_SENT 状态一直等待服务器确认,具体有待进一步研究分析。
- 1
- 2
- 3
假设获取到进程的 COMMAND=webdavfs_agent, PID=3231,执行 kill 命令杀死 webdav 进程,Finder 重获新生。
$ sudo killall -9 webdavfs_agent # or $ sudo kill -9 3231- 1
- 2
- 3
curl 命令行访问操作 WebDAV
-
认证方式可选 --basic,--digest,不指定相当于 --anyauth,让 cURL 自动选择。
-
-u(–user) 后面可只指定用户名 -u $username,将提示输入密码;也可连带指定密码 -u $username:$password。
-
拉取文件列表(也可指定其他目录,以/结尾):
- 1
- 2
- 3
- 4
- 5
- 6
- 新建目录:
- 1
- 上传文件(也可在 url 后续接上传后的自定义目标文件名):
- 1
- 移动文件(同目录相当于重命名):
- 1
- 复制文件:
- 1
- 下载文件(或 > test2.txt,重定向 stdout 到文件;-v 是 stderr):
- 1
- 删除文件(夹):
- 1
linux 挂载 WebDAV 云盘
在 Ubuntu 或 CentOS 下可以将 WebDAV 挂载为本地磁盘,可采用 rclone 云同步命令行工具,或安装 davfs2 文件系统扩展。
- 安装 davfs2:
- 1
- 2
- 3
- 4
- 创建本地挂载点目录:
- 1
- 执行 mount 命令挂载 WebDAV:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
挂载成功后,执行 df -h 命令会输出一条 Filesystem=http://mbpa1398.local/webdav,Mounted on /mnt/webdav@mbpa1398 的条目。
- 直接编辑 WebDAV 上的文件,然后保存同步:
- 1
- 用完之后,记得解除挂载:
- 1
-
可考虑配置开机自动挂载,涉及以下配置文件:
- davfs2配置文件:/etc/davfs2/davfs2.conf
- davfs2密码配置:/etc/davfs2/secrets
- 自动挂载配置文件:/etc/fstab
参考
wiki - WebDAV
网络存储文件共享之 WebDAV
在 Mac mini Server 上配置 WebDAV 文件共享
WEBDAV WITH CURL:curl 测试 webdav,学习 WebDav
如何在Ubuntu或CentOS将WebDAV挂载为本地磁盘
Linux 挂载 WEBDAV,Linux将WebDAV为本地磁盘
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。
在线投稿:投稿 站长QQ:1888636
后台-插件-广告管理-内容页尾部广告(手机) |