Docker系列 深度使用nextcloud(九) 硬盘挂载

转自我的个人博客https://blognas.hwb0307.com,该文的内容更新仅在个人博客可见。欢迎关注!

前言

前面我们已经在《Docker系列 深度使用nextcloud(五)CardDAV》一文中简单地介绍过Nextcloud的WebDav功能。实际上,WebDav更亲民的一种用法是硬盘挂载。对Windows用户来说,这意味着可以将Nextcloud等支持WebDav协议的云盘挂载为类似于“C盘”、“D盘”之类的分区(图的中NC-rn2NC-NAS分别是两个Nextcloud帐户):

你还可以创建、编辑或删除文件(由于网络连接的问题会稍慢;仅演示创建文件 ):

这个功能应该是挺实用的。想像你有若干VPS(比如一个甲骨文大盘鸡),你就可以通过类似的方式将它们“挂载”到自己的电脑里,这样可以充分地“压榨”你的VPS!当然,如果你有很多支持WebDav的空间,Alist或许是一个不错的选择,它是一个基于Gin和Solidjs的文件列表程序,可以将你的多个网盘聚合在一起(Demo),并且支持WebDav协议,也有Docker版本。不过,Alist并不是本节的重点,感兴趣者可看该教程《Docker系列 搭建支持WebDav的网盘聚合平台Alist》。

本小节着重介绍一下怎么在Windows 10系统里挂载Nextcloud,特别是某些注意事项。Linux和Mac就自己想办法吧,我就不折腾了(懒)!

WebClient

WebClient可以让基于Windows的程序能创建、访问和修改基于Internet的文件。如果此服务被停止,这些功能将不可用。如果此服务被禁用,则明确依赖该服务的任何服务都将无法启动。所以,为了在Win10电脑上使用WebDav(通常是基于远程http/https协议),我们需要打开WebClient服务

开启WebClient

首先,Win10支持WebDav时需要一个叫WebClient的服务。你可以通过控制面板-管理工具-服务-WebClient找到它,或者直接在Win10左下角的全局搜索框里搜索“服务”亦可定位。如图所示:

注意,WebClient要处于启动状态启动类型=自动(触发器启动)),才可以成功连接WebDav;否则会一直处于报错状态(一般是显示找不到文件之类的error)。如果是关闭状态,右键选中并开启,且设置为自动模式。如果没有该服务,则需要手动安装,这个自己Google百度一下,我的win10默认是有的

WebClient设置

鼠标法(纯小白专用)

在正式使用前,建议先对WebClient进行一些初始化设置。首先,在系统搜索框里搜索注册表编辑器

点击进去,一步步进入WebClient的设置界面。具体路径是:(HKLM\SYSTEM\CurrentControlSet\Services\WebClient\Parameters):

设置以下参数:

  • BasicAuthLevel设置为2以支持https。
  • FileSizeLimitLnBytes尽量设置得大一些(比如ffffffff[16进制])它决定了可以上传的文件大小上限。

其它参数无特别,默认即可。关闭注册表即可。

代码法(推荐)

参考自Windows 10/11 映射挂载 WebDAV

我们可以用运行代码的方法方便地控制注册表中WebClient的相关参数。具体操作如下:

  • 用管理员权限打开PowerShell,因为非管理员权限无法控制webclient状态。

  • 停止 WebClient 服务net stop webclient

  • 修改注册表:修改注册表使得 WebDAV 协议同时支持 http 和 https(默认只支持 https)并解除从 WebDAV 下载文件的大小限制。将以下代码另存为.reg 文件,并双击该文件后自动修改注册表

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters]
"BasicAuthLevel"=dword:00000002
"FileSizeLimitInBytes"=dword:ffffffff

这里也提供下载链接:Nextcloud link或者Alist link。这个方法真的是太优雅了!

最后检查一下,发现已经成功了(你们不检查也无所谓):

  • 启动 WebClient 服务net start webclient

添加Nextcloud

做好WebClient的相关准备工作,就可以通过WebDav挂载Nextcloud云盘了。首先,进入到资源管理器“此电脑”的页面,上面有“映射网络驱动器”:

左击,选择映射网络驱动器。随便选一个心仪的盘符(我这里选了N)。输入Nextcloud的WebDav地址,点击完成

这个地址类似于:https://domain.nextcloud.com/remote.php/dav/files/username/,其中https://domain.nextcloud.com是你网盘的地址,而username则是你的用户名,因人而异。你可以按下图所示的方法直接复制它(图片的第3步有个链接):

让子弹飞一会 (~ ̄▽ ̄)~ ,网络加载中。然后,就会弹出这个窗口:

上一个空栏写你Nextcloud的帐户名,下一个空栏写Nextcloud的密码。记住我的凭据可以打个勾。

最后,成功挂载!最开始的名字都是乱乱的,右键改个心仪的名字即可:

建议此时重启一下电脑。重启后该网络要重新连接,有时名字也要重改(不知是不是普遍现象)。感觉挺麻烦的,但勉强能用吧 (~ ̄▽ ̄)~

注意事项

  • 挂载WebDav的稳定性很大程度上取决于网络稳定性。
  • 挂载WebDav通常对文件大小有较大限制,FileSizeLimitLnBytes的大小也不是随意取的(不信你加2个0试试),也不总能成功生效。这可能是因为WebDav本身就不是一种很稳定的传输协议,所以对文件大小限制比较严格。另外一种常用的SMB协议就没有这种限制。尽管如此,对于平时不传输很大文件的小伙伴来说,已经是很够用了
  • WebDav无法识别硬盘大小,因此显示的是C盘的容量。实际使用时以实际容量为准。

小结

我们又学会了一个Nextcloud的实用技巧,感觉棒棒哒!用起来!有问题或建议评论区留言!之后我会再关注更多和WebDav有关的软件,毕竟Win10自带的应用是比较简陋的,可能不是使用WebDav的“正确方式”。敬请关注!

参考/拓展阅读

  • Windows 挂载 WebDAV
  • Windows 中映射 WebDAV 驱动器的已知问题
  • 来自蛮吉 の 窝窝的教程Windows 10/11 映射挂载 WebDAV

本文使用 文章同步助手 同步

你可能感兴趣的:(Docker系列 深度使用nextcloud(九) 硬盘挂载)