云计算、AI、云原生、大数据等一站式技术学习平台

网站首页 > 教程文章 正文

Manjaro Linux 局域网共享(三)

jxf315 2025-01-09 13:41:37 教程文章 32 ℃

本篇主打“将 Linux 共享给局域网用户”,操作内容不多,但却是三篇中最费脑的:

  • 希望如 Widnows 共享一样直观、简单、方便
  • “非专业” Linux 桌面用户的可操作性强
  • 尽量避免牺牲 Linux 或 Windows 为安全性而做的改变

Manjaro Linux 相关的包

  • samba:提供 samba 服务
  • manjaro-settings-samba:Manjaro 默认 samba 配置
  • gvfs-smb:虚拟文件系统接口
  • nautilus-share:Gnome nautilus 文件管理器共享插件
  • thunar-shares-plugin:Xfce4 thunar 文件管理器共享插件
  • kdenetwork-filesharing:KDE 文件管理器共享插件

其它文件管理器也有对应插件!

已有资料的“不足”

  • 资料老旧
  • 默认已不支持匿名访问
  • 为实现匿名访问配置复杂,配置之间的关系不易理清
  • 需要建立系统用户,“非专业”用户在权限方面遇到问题
  • 为共享关闭安全相关服务

安装包

  • samba 、gvfs-smb 和 manjaro-settings-samba
  • 根据使用的桌面环境选择对应的共享插件:nautilus-share、thunar-shares-plugin、kdenetwork-filesharing

修改 /etc/samba/smb.conf

  • 修改 global 部分
[global]
   # 修改
   map to guest = Never
   # 追加
   username map = /etc/samba/ishare
  • map to guest = Never

Windows 10 以后的系统都已默认禁止 guest 或匿名登录;Manjaro 中 Samba 默认将无效用户映射到 nobody。这两种情况都会出现“网络错误”或“无法访问”的问题。

  • username map = /etc/samba/ishare

访问共享时为了安全性不想将真实的系统帐户名泄露;如果建立新的共享专用系统帐户,其分组、权限等设置操作“复杂”,“非专业”用户操作不友好,所以采用映射的方式。

ishare 是文件名,可自定义,内容为:

iseeisayc = ishare

使用 ishare 登录,可自定义,避免泄露系统用户名 iseeisayc。

  • 删除 home 部分

将 smb.conf 中的 home 部分删除,以免暴露用户 home 目录。

添加系统用户到 Samba 服务

sudo pdbedit -a iseeisayc

与映射的系统帐户名一致。

输入密码,独立的 Samba 服务密码,可与系统用户密码不同(推荐)。访问共享使用 ishare 登录时用到。

查看 Samba 用户:

sudo pdbedit -L

运行服务

# 打开服务,下次开机自动启动服务
sudo systemctl enable smb
# 当前启动服务
sudo systemctl start smb

共享

前面已经安装文件管理器相关插件,现在就可以通过文件管理器共享目录了。

  • 文件管理器要共享的文件夹上右键 - 共享选项

(Xfce:文件夹右键 - 属性 - 共享)

  • 自动加权(Gnome)
  • 共享后文件夹右边出现共享图标(Gnome)

局域网其它电脑访问共享

  • Windows 访问:文件管理器地址框输入 //IP/共享名称
//192.168.1.123/iseeisayc

iseeisayc 是共享的文件夹名称

  • Linux 访问:文件管理器地址框输入 smb://IP/共享名称
smb://192.168.1.123/iseeisayc

访问用户名为映射名,如 ishare,密码为 sudo pdbedit -a iseeisayc 时设定的密码。

取消共享


是不是和 Windows 一样方便了!

如有问题欢迎交流~

最近发表
标签列表