我通常只需在 macOS 终端中输入即可访问、打开和编辑通过以太网连接到路由器的 Linux 计算机内的所有文件。然而,我不想纯粹通过终端进行交互,而是想挂载 Linux 计算机的整个文件系统,以便我可以编辑文件并在 Mac 和 Linux 计算机之间自由传输文件。ssh [email protected]
macOS 支持通过 SMB 进行文件共享,因此我决定在远程计算机上安装 Samba:
sudo apt-get install samba
user
然后,我添加了访问文件共享的用户和密码:
smbpasswd -a user
之后,我编辑了 Samba 配置文件以包含以下内容:
[Volumes]
path = /volumes
writable = yes
write list = user
force create mode = 0777
force directory mode = 0777
public=yes
最后,我重新启动了Samba服务:
sudo service smbd restart
我可以使用之前设置的用户名和密码Volumes
在 Finder 中挂载。user
我也能够阅读里面的所有内容/volumes
。但是,我完全无法修改任何文件或将任何内容传输到/volumes
.
如何真正使文件夹可写,而不仅仅是可读?我在 Samba 配置中添加了writable = yes
、write list = user
、 和等行force directory mode = 0777
,如上所示,但它似乎没有任何帮助。
ls -l
on的输出/volumes
给我以下内容:
ls -l /volumes
total 248
drwxr-xr-x 9 root root 131072 Jul 3 01:06 bridge1
drwxr-xr-x 2 root root 102400 Jun 13 20:30 bridge2
答案1
您无法修改其中的文件或目录,/volumes
因为只有root
对它们的修改权限。根据所发生的情况,目录本身也是如此volumes
。
您需要,如root
,chown -R user /volumes
使user
所有者具有修改访问权限,或者创建一个组,使用 添加user
到该组usermod -aG group user
,然后chmod -R g+w /volumes
授予包含user
对目录及其内容的修改访问权限的组。
force directory mode
仅适用于通过samba
.它们对已经存在的任何东西没有任何影响。无论如何,您都不希望使用0777
as 模式,因为它允许任何有权访问系统的人写入不利于安全的目录。