当前位置: 首页 > Linux

Ubuntu安装WebDav文件共享服务器(NAS)

时间:2023-04-07 00:28:02 Linux

做NAS,折腾Samba半天,看似简单,实则Samba的用户设置太繁琐,坑太深。用户权限和目录权限,甚至磁盘格式稍有不同,都可能导致登录失败。确实不靠谱,实际体验也不是很稳定。于是在寻找Alternatives的过程中,找到了这个存在已久的WebDav协议。与Samba这种由微软开发的软件系统不同,WebDav只是一个协议,准确的说,是世界上最通用的HTTP协议的一个小扩展。它不是一个软件。所以很容易理解为什么你搜索不到WebDav的官网和官方安装指南——因为没有“官方”。任何人都可以开发支持该协议的软件,就像水可以开发支持HTTP协议的浏览器来浏览网站一样。参考:HowToSetUpWebDAVWithApache2OnDebianEtch#安装Apache2服务器sudoapt-getinstall-yapache2#在Apache2中启用WebDav协议的支持(记住最好在用户目录下执行或者报错error)cd~sudoa2enmoddavsudoa2enmoddav_fs#创建共享目录并修改权限sudomkdir-p/var/www/webdavsudochown-Rwww-data:www-data/var/www/webdav#创建WebDav访问用户数据库,并顺便创建一个用户`pi`sudohtpasswd-c/etc/apache2/webdav.passwordpi#创建guest用户#sudohtpasswd/etc/apache2/webdav.passwordguest#修改用户数据库访问权限sudochownroot:www-data/etc/apache2/webdav.passwordsudochmod640/etc/apache2/webdav.password#打开默认配置文件sudovim/etc/apache2/sites-available/000-default.conf#全部替换成下面的内容(记得先备份):Alias/webdav/var/www/webdavOptionsIndexesDAVOnAuthTypeBasicAuthName"webdav"AuthUserFile/etc/apache2/webdav.passwordRequirevalid-user#重启Apache2服务器sudosystemctlrestartapache2#或sudo/etc/init.d/apache2reload然后就可以用任意浏览器输入:http://树莓派IP地址/webdav访问。请注意,webdav后没有/斜杠。如果目录中的文件结构在网页上显示正常,则可以正常访问:完成这一步后,我们就可以开始将这个共享文件夹映射到Mac和Windows上的本地文件夹中了。磁盘映射网页只能像FTP一样显示文件目录和下载文件。如果我们要正常使用,需要将其映射为本地目录:Mac:在Finder中使用CMD+K打开连接服务器选项,输入http://树莓派IP地址/webdav,输入用户通过Webdav创建的名称和密码来完成映射。iPhone端:安装网盘访问最强大的ReaddleDocuments,添加WebDav服务,输入信息即可访问。可以直接看文档、看视频、听歌。Windows上:比较麻烦的是Win7及以上版本默认只支持HTTPS网络驱动,无法连接HTTP的WebDav。所以修改Windows注册表,使其支持HTTP。方法如下:开始菜单->运行->输入regedit回车,然后打开注册表,在注册表中找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\BasicAuthLevel项,将值改为2、开始菜单->运行->输入cmd回车,打开命令行,输入netstopwebclient回车,停止网络客户端,输入netstartwebclient回车,启动网络客户端,在文件夹菜单映射网络驱动器,输入网址http://树莓派IP地址/webdav或\\树莓派IP地址\webdav,然后输入用户名和密码即可映射成功。关于浏览器:任何设备,只要是浏览器,都可以支持。常用视频可在线播放,图片可直接打开浏览。但是不能上传。挂载外接磁盘(移动硬盘、U盘)和Samba一样,只需要在共享文件夹/var/www/webdav/中新建一个空目录,然后用mount命令将移动硬盘挂载到该目录即可。它可以从外部访问。在使用速度和配置上,比Samba要简单的多。实验证明,速度非比寻常!Mac映射完成后,访问速度和本地文件夹一样快,可以直接看视频、预览图片,支持各种快捷键。也可以直接拖拽文件进行复制,速度之快,与本地复制文件无异。如果对比Samba,最明显的就是看图片和视频的打开速度。Samba要等一秒多,而WebDav几乎不等,或者说和本地打开文件一样快。唯一不足的是Windows访问很卡。稳定性方面,因为是基于Apache2,所以bug极少,也不用纠结权限(跟本地用户无关)。在远程访问上(我在AWS新加坡服务器上搭建的WebDav),速度也相当靠谱,比我在树莓派上访问WebDav还快。毕竟亚马逊服务器配置高,网速快。只是视频访问不是那么方便,经常出现卡顿和异常的情况。不过也挺满意的。总结:WebDav易于配置,易于访问,易于管理权限,稳定,超多平台支持,完美!常见问题Apache2ReloadError使用命令sudo/etc/init.d/apache2reload重启服务器没有反应,命令sudo/etc/init.d/apache2reload重新加载Apache2时也报错:[...]重新加载apache2配置(通过systemctl):apache2.serviceJob的apache2.service失败。有关详细信息,请参阅“systemctlstatusapache2.service”和“journalctl-xn”。失败的!一般来说,很有可能是80端口被占用了,可能是Nginx。所以找到正在使用该端口的服务并关闭它。具体方法如下:#查找所有nginx相关的进程$ps-ef|grepnginx#根据显示的nginx进程号,一个一个关闭$sudokill-TERM进程号#or$pkill-9nginx#reloadApache2服务器$sudo/etc/init.d/apache2reload#重启Apache2服务器$sudosystemctlrestartapache2Reload成功后会显示:然后用浏览器尝试访问webdav服务的URL,就OK了.为什么访问WebDav很慢一般来说,无论是WebDav还是Samba,访问速度慢主要有这些因素:服务器网速不够客户端电脑网速不够路由器速度limited服务器硬盘(或U盘)配置太低(低速)服务器主机配置低:CPU、内存都不足(树莓派就是这样)。客户电脑配置低。因此,如果以上所有原因均不构成连接速度慢的原因,则需要考虑是否WebDav软件设置和架构存在问题。

最新推荐
猜你喜欢