You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu与Android通过Samba无线共享文件无写入权限问题排查

Android与Ubuntu SMB共享无法创建文件/目录的解决方案

问题现状

  • smbd服务正常运行,状态信息:
● smbd.service - Samba SMB Daemon
     Loaded: loaded (/lib/systemd/system/smbd.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2023-06-22 10:10:05 CEST; 8min ago
       Docs: man:smbd(8)
             man:samba(7)
             man:smb.conf(5)
    Process: 67871 ExecStartPre=/usr/share/samba/update-apparmor-samba-profile (code=exited, status=0/SUCCESS)
   Main PID: 67880 (smbd)
     Status: "smbd: ready to serve connections..."
      Tasks: 4 (limit: 16539)
     Memory: 9.3M
        CPU: 237ms
     CGroup: /system.slice/smbd.service
             ├─67880 /usr/sbin/smbd --foreground --no-process-group
             ├─67882 /usr/sbin/smbd --foreground --no-process-group
             ├─67883 /usr/sbin/smbd --foreground --no-process-group
             └─67884 /usr/lib/x86_64-linux-gnu/samba/samba-bgqd --ready-signal-fd=45 --parent-watch-fd=11 --debuglevel=0 -F
  • 共享目录权限为drwxrwxrwx,目录详情:
drwxrwxrwx  2 nikki nikki 4096 Jun 22 09:37 ./
drwxrwxrwx  3 nikki nikki  4096 Jun 22 10:02 austauschtest/
  • Android端文件管理器可看到共享目录,但无法创建文件或目录,核心问题指向Samba权限配置。

排查与解决步骤

1. 修正Samba共享配置

打开/etc/samba/smb.conf,找到对应共享目录的配置段,确保包含以下关键参数:

  • read only = no:明确开启写入权限
  • create mask = 0777:设置新文件的默认权限
  • directory mask = 0777:设置新目录的默认权限
  • force user = nikki:强制共享连接使用目录所属用户身份,避免权限映射冲突

示例配置段:

[austauschtest]
    path = /path/to/austauschtest
    read only = no
    create mask = 0777
    directory mask = 0777
    force user = nikki
    force group = nikki

2. 确认Samba用户权限

若使用密码验证连接,需确保Samba用户拥有写入权限:

  • 创建或更新Samba用户密码:
sudo smbpasswd -a nikki
  • 重启smbd服务使配置生效:
sudo systemctl restart smbd

3. 检查AppArmor限制

尽管服务启动时已执行update-apparmor-samba-profile,仍需确认AppArmor是否阻止写入:

  • 查看AppArmor状态:
sudo aa-status
  • 若smbd处于enforce模式,临时切换为complain模式测试:
sudo aa-complain /usr/sbin/smbd

测试正常后,可选择永久更新规则或保持complain模式。

4. 验证SELinux(若启用)

如果系统启用了SELinux,需设置正确的目录上下文:

sudo chcon -t samba_share_t /path/to/austauschtest

测试验证

修改配置并重启服务后,在Android端重新连接共享目录,尝试创建文件/目录,确认权限正常。

内容的提问来源于stack exchange,提问作者jento

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 06:52:39