在Windows的R中通过已映射Linux驱动器访问未映射目录
问题解答
通常情况下,仅通过已映射的Z:盘无法直接访问Linux根目录下的/linda目录,原因如下:
- Windows网络映射本质是将远程Linux的/bob目录挂载为本地Z:盘的根目录,此时Z:盘的访问范围被限制在/bob内部,Linux的根目录及同级的/linda对Z:盘是不可见的,这是SMB共享(默认跨系统文件共享协议)的默认隔离机制。
如果有权限修改Linux端的共享配置,有一个可行的间接方案:
- 在Linux的/bob目录下创建指向/linda的软链接,执行命令:
ln -s /linda /bob/linda_link - 修改Linux的SMB配置文件(通常是
/etc/samba/smb.conf),确保目标共享(即/bob的共享项)中开启软链接跟随:follow symlinks = yes wide links = yes - 重启SMB服务(不同发行版命令略有差异,比如Ubuntu用
sudo systemctl restart smbd)
完成以上操作后,在Windows的Z:盘中就能看到linda_link链接,在R中执行list.files("Z:/linda_link")即可获取/linda下的c、d目录内容。
如果没有Linux端的配置权限,那就只能新增Windows网络映射指向/linda目录,没有其他绕开的办法。
内容的提问来源于stack exchange,提问作者David Robie
相关产品推荐
相关产品推荐

