MacOS从Windows通过SMB复制文件后无读写权限的解决方案咨询
解决SMB传输后Mac文件权限问题的简便方案
嘿,这个权限问题确实挺闹心的——我之前帮好几个朋友搞定过几乎一模一样的场景,给你几个实用方案,按优先级来选就行:
方案1:修改SMB服务器配置(一劳永逸)
这是最推荐的方法,改一次之后所有通过SMB传过来的文件都会自动拥有正确的权限,再也不用手动折腾:
- 打开Mac的「终端」(在Launchpad里搜Terminal就能找到)
- 输入命令编辑SMB的配置文件:
sudo nano /etc/smb.conf - 输入你的管理员密码(输入时屏幕不会显示字符,这是正常的安全机制)
- 找到文件里的
[global]区块,在里面添加两行配置:
简单解释下:inherit permissions = yes inherit owner = yesinherit permissions让新文件自动继承父文件夹的权限,inherit owner会把文件的所有者设置为你的管理员账户 - 按
Ctrl+O保存修改,再按Ctrl+X退出nano编辑器 - 最后重启SMB服务让配置生效:
sudo /usr/sbin/smbd restart
之后再从Windows传文件到Mac,权限就会自动设置好,直接就能打开了
方案2:批量修改已有文件的权限(临时救急)
如果已经传了一堆文件等着处理,用这个命令能一次性搞定所有权限问题:
- 打开终端,先定位到外置硬盘的目标文件夹,比如你的硬盘名叫「DataDisk」,文件存在「Downloads」文件夹里,就输入:
cd /Volumes/DataDisk/Downloads - 输入命令修改所有文件的所有者为你:
sudo chown -R 你的用户名:staff .(注意最后有个英文点,代表当前文件夹下的所有内容) - 再给所有者添加读写权限:
sudo chmod -R u+rw . - 输入管理员密码确认后,所有文件的权限就会瞬间修正完成
方案3:提前配置文件夹的权限继承
如果你不想碰终端,也可以通过图形界面提前设置好接收文件夹的权限规则,让新文件自动继承权限:
- 找到外置硬盘上用来接收Windows文件的文件夹,右键选择「显示简介」
- 拉到窗口最下方的「共享与权限」区域,点击右下角的锁图标,输入管理员密码解锁
- 点击左下角的「+」按钮,添加你的管理员账户,然后把该账户的权限设置为「读与写」
- 点击权限区域上方的齿轮图标,选择「应用到包含的项目…」,在弹出的确认框里点击「确定」
之后所有传到这个文件夹的文件都会自动继承正确的权限,不用再手动调整
补充说明
之所以会出现这个问题,是因为Windows的NTFS权限体系和Mac的POSIX权限体系不一样,通过SMB协议传输时,默认不会自动转换为适合Mac的权限配置,导致作为管理员的你没有读写权限。上面的三个方案分别从服务器配置、批量处理、文件夹预配置三个角度解决了这个问题,你可以根据自己的需求选择。
内容的提问来源于stack exchange,提问作者Lukas P.
相关产品推荐
相关产品推荐

