nas中各种协议的性能对比-smb-nfs-webdav

核心特性对比

特性SMB/CIFSWebDAVNFS
主导平台Windows跨平台/WebUNIX/Linux
权限控制ACLs/NTFS基础ACLUNIX权限/NFSv4 ACL
文件锁完善基本完善
符号链接支持有限原生支持
传输加密SMB3+ (AES)HTTPSNFSv4+ (Kerberos)
多通道传输SMB3支持不支持NFSv4.2支持
远程访问便利性需VPN/端口HTTP(S)直接访问需VPN/防火墙配置

性能与效率

  1. 局域网性能‌:

    • NFS‌:在Linux/Unix环境中性能最优,尤其是大文件连续读写。无状态设计减少开销。
    • SMB‌:现代SMB3(尤其是3.1.1)在Windows和跨平台接近NFS,小文件性能优于NFS。
    • WebDAV‌:HTTP协议开销大,性能最低(比SMB/NFS慢20-50%)。
  2. 小文件操作‌:

    • SMB在Windows上缓存优化更好,大量小文件传输占优。
    • NFS依赖配置(如async写入),需调优才能匹配SMB。
  3. 大文件传输‌:

    • NFS通常领先(协议开销低),SMB3多通道可聚合带宽。
    • WebDAV受HTTPS加密拖累,速度明显下降。
  4. 高并发场景‌:

    • NFS无状态设计更适合高并发读(如虚拟机集群)。
    • SMB3支持目录租约(Directory Leasing),减少重复查询。

稳定性与兼容性

  • SMB‌:
    • 最佳Windows集成‌,但早期版本(SMB1)有漏洞(如永恒之蓝),‌务必禁用‌。
    • macOS/Linux通过Samba支持良好,跨平台共享首选。
  • NFS‌:
    • Linux/Unix环境最稳定‌,Windows需安装NFS客户端(功能受限)。
    • 版本兼容问题常见(建议用NFSv4)。
  • WebDAV‌:
    • 依赖Web服务器(如Apache/Nginx),配置不当易崩溃。
    • 移动端兼容性最佳(可直接播放视频/文档)。

总结

  • 功能最全‌:‌SMB‌(ACL、锁、跨平台)。
  • 性能最高‌:‌NFS‌(Linux环境)、‌SMB3‌(Windows/跨平台)。
  • 最易远程访问‌:‌WebDAV‌(HTTP便利性)。
  • 最稳定‌:‌NFS‌(企业级场景)、‌SMB‌(主流OS深度集成)。

⚠️ ‌关键提醒‌:协议性能受实现质量影响极大(如Samba vs Windows SMB),实际部署前建议用iperf+fio测试您的环境。若是家庭用户,SMB通常是最省心的选择;若是纯Linux环境,NFS性能更优;若需随时从外网访问手机相册,WebDAV更方便。

alpine-linux-kiosk

echo -e "#!/bin/sh\nopenbox-session &\nfirefox -kiosk https://www.bing.com" > ~/.xinitrc && chmod +x ~/.xinitrc

setup-xorg-base && apk add openbox font-noto-cjk firefox

[可选] 为 Firefox 创建策略配置, 禁止用户访问开发者工具(F12)

echo ‘{“policies”: {“DisableDeveloperTools”: true}}’ | tee /usr/lib/firefox/distribution/policies.json

# 注意以 root 身份下执行

# 添加 agetty 包
apk add agetty

# 编辑配置文件
vi /etc/inittab
#将 tty1 开头的行注释掉, 插入下面内容:

tty1::respawn:/sbin/agetty –autologin lpwm –noclear tty1 linux
参考文档: TTY Autologin

RaiDrive

RaiDrive可以把网盘挂载到电脑本地,使我们能像操作C盘、D盘等电脑本地磁盘那样,直接在本地操作网盘文件。比如,可以在本地直接对网盘中的文件进行复制,粘贴,重命名等操作。如同给我们的电脑硬盘扩容了,理论上只要您添加的网盘足够多容量或者足够大,相当于给电脑添加了一块“无限”容量的网络硬盘。

若是搭配 Everything 搜索软件,还可以在电脑中快速搜索网盘文件。此外,如果已经搭建并使用了alist,raidrive挂载alist后(WebDAV挂载),则可间接实现一键挂载阿里云盘、百度网盘、onedrive、天翼云盘、123云盘、中国移动云盘等诸多网盘。

不过,RaiDrive的新版本分为免费版和Pro版,而免费版有功能限制(比如限制大文件传输等),并且偶尔会出现广告。而由于RaiDrive起初是全免费软件,故而一些早期的旧版本反而没有这些功能限制且天然去广告了。

本次分享的是RaiDrive的历史版本,也就是早期的一些老版本。具体包含所谓的最后一个全功能版本 RaiDrive 1.5.3.1(不过也有说2019.12.22那个是最后一个完全免费版本),还有raidrive 1.8.0等等,基本上涵盖了raidrive 1.6.2.416 到 2019.12.22 的所有旧版本。

软件下载

https://pan.quark.cn/s/33f5ef3233ba

https://www.123pan.com/s/hieA-qsgxH.html

https://url26.ctfile.com/d/948726-56175567-da8e0e?p=7890 (访问密码: 7890)

===
https://raidrive.mrdownload.com/en/for-windows/app/download/7266
2020.6.25
OpenBoxLab
====
Raidrive新手+拓展教程
https://blog.csdn.net/EricZCY/article/details/106720431
https://wws.lanzous.com/iLfRMdlbbub

https://production-downloads-webserver.storage.googleapis.com/softwares/29efabd1-4006-4e2c-9a74-c5b81dad13c7/raidrive-2020-6-25.exe?AWSAccessKeyId=GOOG1EMFSX4KQJNU4T4R4BCA2WP4NEBACPV7PBW7ACQN55XEWDJUEEZVM63TI&Expires=1749032405&Signature=FvYRuKYOPpoZbUfn7gB2bkQ3oDI%3D

NVIDIA-CUDA-CUDNN

CUDA
https://developer.nvidia.com/cuda-toolkit-archive
https://developer.download.nvidia.cn/compute/cuda/12.4.1/local_installers/cuda_12.4.1_551.78_windows.exe

CUDNN
https://developer.nvidia.com/rdp/cudnn-archive
https://developer.nvidia.com/downloads/compute/cudnn/secure/8.9.7/local_installers/12.x/cudnn-windows-x86_64-8.9.7.29_cuda12-archive.zip

参考:
https://zhuanlan.zhihu.com/p/32400431090

linux-命令行-关闭显示器

setterm --blank poke --term linux < /dev/tty1
=======================================================================
参考
https://www.cnblogs.com/dirgo/p/17376210.html

题外话:不得不说现在百度的搜索真的烂,除了广告,有用的信息一点也搜不到,bing倒是广告少,照样也搜不到有用信息,谷歌虽然作恶不少,某些技术还是可以的,但是国内不通过特殊方法又使用不了,解决方法:1.找谷歌的镜像站,但是不好找,就算找到了,可能过几天就失效了;2.找一些小众的搜索引擎,推荐”F搜”,不过最近有些不稳定了,只能说且用且珍惜吧,本次的解决方法就是通过它才搜到的.

这个需求主要是解决当你把笔记本或者平板当作服务器,平时只用ssh连接,想关闭屏幕节电;

本机环境:cpu为z3735f的酷比魔方平板,系统为Arch Linux,未启动任何桌面环境和窗口管理器,即位于默认终端tty1下

在其他电脑通过ssh工具连接上平板;

方法如下:

命令需要root权限,可用su切换

关闭屏幕命令:

setterm –blank force –term linux </dev/tty1

打开屏幕命令:

setterm –blank poke –term linux < /dev/tty1

注意:关闭后,必须通过打开命令开启屏幕,移动鼠标或点击键盘按键均无法再点亮屏幕

参考文章:

https://access.redhat.com/discussions/3076941#comment-1184861

https://forums.centos.org/viewtopic.php?t=75666

第一个链接即本文的解决方法,是从第二个链接的论坛帖子尝试方法2跳转的,我的可以实现,但楼主说不行,他最后还是安装了桌面环境,其实安装桌面环境(主要的两个解决方案为Xorg(x11)和wayland),并且启动了桌面或者窗口管理器之后,解决的方法就非常多了(比如export DISPLAY=:0.0;xset dpms force off;),除了楼主写的几个,还可以借助一些工具,其实也是对/sys/class/backlight进行了一些封装操作,具体可参考Arch 的wiki(背光实用程序) https://wiki.archlinuxcn.org/wiki/%E8%83%8C%E5%85%89  ,并且可以实现关闭后移动鼠标或点击键盘重新点亮屏幕.

—————————-2023-05-15更新—-

以上方法其实只是关闭了显示输出,当然在一定程度上也降低了功耗。

但仔细观察会发现,屏幕的背光没有关闭,在Arch上试过很多方法都不行,甚至一度想直接拆开拔掉显示排线。

直到今天安装了Debian以后,发现背光可以调节和关闭了,这说明arch对一些老的硬件支持不那么好,老硬件可以尝试Debian,方法依照arch的wiki即可:

https://wiki.archlinuxcn.org/wiki/%E8%83%8C%E5%85%89

说到底还是使用acpi接口,修改/sys/class/backlight/acpi_video0/max_brightness 文件记录的亮度值,如:

echo 5 > /sys/class/backlight/acpi_video0/brightness