当前位置:首页>Linux>一台Linux服务器,三台电脑共用?局域网共享保姆级教程

一台Linux服务器,三台电脑共用?局域网共享保姆级教程

  • 2026-09-10 20:18:04
一台Linux服务器,三台电脑共用?局域网共享保姆级教程
这几天在用旧电脑部署服务,顺便把这个过程记录一下。今天主要想从windows电脑访问旧电脑中的文档。这就涉及到局域网共享方法的问题。

    先说结论:为什么选SMB

    市面上文件共享协议不少,SMB、NFS、WebDAV、FTP……

    对于普通用户,局域网就用SMB,远程就用WebDAV。

    原因很简单:

    • Windows原生支持,零配置
    • Mac/Linux都能连
    • 速度比WebDAV快3-6倍
    • 可以直接映射为网络驱动器

    其他协议的定位:

    • NFS:纯Linux环境用,Windows不支持
    • WebDAV:适合Tailscale远程访问,局域网不如SMB快
    • FTP:古老协议,不推荐

    共享协议对比

    协议
    速度
    兼容性
    推荐场景
    SMB
    ⭐⭐⭐⭐⭐
    Windows/Mac/Linux
    局域网首选
    NFS
    ⭐⭐⭐⭐⭐
    Linux/Mac
    纯Linux环境
    WebDAV
    ⭐⭐⭐
    全平台
    远程访问
    FTP
    ⭐⭐
    全平台
    已淘汰

    第一步:在Linux上安装Samba

    Samba是Linux上最流行的SMB服务器软件。

    # 更新包列表sudo apt-get update# 安装Sambasudo apt-get install -y samba

    安装完成后,Samba服务会自动启动。


    第二步:配置共享目录

    编辑配置文件:

    sudo nano /etc/samba/smb.conf

    在文件末尾添加:

    [娱乐盘]path = /mnt/databrowseable = yes   read only = no   guest ok = yes   create mask = 0777   directory mask = 0777

    参数解释:

    参数
    含义
    path
    要共享的目录路径
    browseable
    是否在网络邻居中可见
    read only
    只读(yes)还是可读写(no)
    guest ok
    是否允许匿名访问
    create mask
    新建文件的权限

    安全提示:guest ok = yes 意味着任何人连上你的局域网都能访问这个共享。如果服务器暴露在互联网上,建议改为 guest ok = no 并设置密码(见后文)。


    第三步:重启服务并验证

    # 重启Samba服务sudo systemctl restart smbd# 查看共享列表smbclient -L //localhost -N

    如果输出包含你刚才配置的共享名,说明配置成功。


    Windows怎么访问

    方法一:资源管理器(最推荐)

    1. 按 Win + R 打开运行窗口
    2. 输入:\\服务器的IP地址\共享名
    3. 回车,就能看到共享文件夹了

    例如:

    \\192.168.x.x\娱乐盘

    方法二:映射网络驱动器

    如果你经常访问,可以映射为本地磁盘:

    1. 打开「此电脑」
    2. 右键 → 「映射网络驱动器」
    3. 文件夹填写:\\192.168.x.x\娱乐盘
    4. 勾选「登录时重新连接」
    5. 完成

    之后你在「此电脑」里会看到一个网络磁盘,随时可用。

    方法三:命令行

    net use Z: \\192.168.x.x\娱乐盘

    多目录共享

    如果你有多个磁盘想共享,直接在配置文件中添加多个区块即可:

    [娱乐盘]path = /mnt/data   browseable= yes   read only = no guest ok = yescreate mask = 0777 create mask = 0777  [工作盘]path = /mnt/work   guest ok = yes  read only = noguest ok = yescreate mask = 0777 create mask = 0777  [备份盘]path = /mnt/backup    read only = yes    guest ok = yes   read only = no  guest ok = yes create mask = 0777 create mask = 0777  

    每个共享名对应一个独立的访问入口。


    Mac怎么访问

    Mac原生支持SMB,连接方式更简单:

    1. 打开Finder
    2. 菜单栏 → 前往 → 连接服务器
    3. 输入:smb://192.168.x.x
    4. 回车,选择共享文件夹

    Linux怎么访问

    GNOME桌面(Ubuntu等)

    1. 打开文件管理器
    2. 左侧「其他位置」→ 「连接服务器」
    3. 输入:smb://192.168.x.x

    命令行

    # 安装客户端sudo apt-get install -y cifs-utils# 挂载sudo mount -t cifs //192.168.x.x/娱乐盘 /mnt/remote \  -o guest,uid=1000

    需要密码怎么办?

    如果不想开放匿名访问,可以设置用户名密码:

    修改配置

    [私有盘]path = /mnt/backup   guest ok = no   valid users = 你的用户名   write list = 你的用户名   create mask = 0777  directory mask= 0777

    添加Samba用户

    # 添加用户(需要是系统用户)sudo smbpasswd -a 你的用户名# 输入两次密码# 启用用户sudo smbpasswd -e 你的用户名

    Windows访问时输入密码

    连接时会弹出登录框,输入刚才设置的账号密码即可。


    安全问题:端口扫描怎么办?

    很多人担心:445端口暴露在网段里,会不会被扫描?

    答案是:会。

    但有两种应对方案:

    方案一:防火墙限制IP(推荐)

    不改端口,只限制谁能访问:

    # 删除默认的Samba规则sudo ufw delete allow samba# 只允许局域网访问sudo ufw allow from 192.168.x.0/24 to any port 445# 只允许Tailscale网段访问sudo ufw allow from 100.64.0.0/10 to any port 445

    这样,非授权IP根本扫不到你的445端口。

    方案二:修改端口(不推荐)

    [global]   smb ports = 1445011390

    但有个问题:Windows资源管理器只会尝试445端口,改了之后无法直接访问,需要用PowerShell脚本或第三方工具。

    结论:除非有特殊需求,否则用方案一更省心。


    Tailscale远程访问

    如果你的服务器在外网,或者你想在公司访问家里的文件,Tailscale是最佳选择。

    Tailscale下用SMB还是WebDAV?

    实测结果:WebDAV更稳定。

    原因:

    • SMB需要多个端口,Tailscale可能拦截部分端口
    • SMB对延迟敏感,跨网段容易断开
    • WebDAV基于HTTP,单端口穿透能力强

    配置Alist的WebDAV

    Alist默认启用WebDAV,无需额外配置:

    http://100.x.x.x:5252/dav/

    Windows挂载WebDAV

    此电脑 → 映射网络驱动器文件夹:https://100.x.x.x:5252/dav/

    Mac挂载WebDAV

    Finder → 前往 → 连接服务器https://100.x.x.x:5252/dav/

    速度对比

    操作
    SMB(局域网)
    WebDAV(Tailscale)
    打开文件夹
    0.5秒
    2-3秒
    播放1080p视频
    流畅
    流畅
    复制1GB文件
    ~8秒
    ~15秒
    浏览大量小文件
    快
    较慢

    结论:

    • 同局域网:SMB碾压级优势
    • Tailscale远程:WebDAV更稳定

    完整配置示例

    [global]workgroup = WORKGROUP   server string = My Server   dns proxy = no   log file = /var/log/samba/log.%m   max log size = 1000# 公开共享[娱乐盘]path = /mnt/databrowseable = yes   read only = no   guest ok = yes   create mask = 0777   directory mask = 0777[工作盘]path = /mnt/workbrowseable = yes   read only = no   guest ok = yes   create mask = 0777   directory mask = 0777[私有盘]path = /mnt/privatebrowseable = yes   read only = no   guest ok = no   valid users = youruser   write list = youruser
       create mask = 0777
     directory mask= 0777

    常见问题

    Q1:连接被拒绝

    # 检查Samba状态sudo systemctl status smbd# 检查防火墙sudo ufw statussudo ufw allow samba

    Q2:找不到共享

    # 查看共享列表smbclient -L //服务器IP -N

    Q3:NTFS磁盘权限问题

    # 挂载时指定权限sudo mount -t ntfs3 -o uid=1000,gid=1000,permissions /dev/sdX /mnt/data

    Q4:忘记密码

    # 修改Samba用户密码sudo smbpasswd 你的用户名

    总结

    场景
    推荐方案
    Windows访问Linux
    SMB
     ✅
    Mac访问Linux
    SMB
     ✅
    Linux访问Linux
    SMB
     或 NFS
    Tailscale远程
    WebDAV
     ✅
    追求速度(局域网)
    SMB
     ✅
    追求稳定(远程)
    WebDAV
     ✅

    一句话:局域网共享,SMB 通吃所有平台,最简单最快。Tailscale远程访问,用 WebDAV 更稳定。


    更多内容请关注公众号。

    最新文章

    随机文章