您好,我是 Ubuntu 新手,我想将文件夹复制到我的网络驱动器。我知道如何正常复制文件,但我似乎无法将文件复制到我的网络驱动器。
sudo cp /home/adam/file.txt smb://nas/main/
它说不存在这样的目录。我可以通过文件资源管理器导航到该位置。
EDIT2:RoVo 提供的解决方案有效。我通过编辑 /etc/fstab 文件并将该行添加到末尾来永久安装网络驱动器。
我现在可以使用以下方式传输文件:
sudo cp /home/adam/file.txt /media/networkdrive
答案1
您无法cd
像这样使用 smb 共享。Nautilus
/Nemo 可以做到这一点,因为它使用虚拟文件系统(財產協會) 并在后台自动将共享挂载到文件系统中某个文件夹中。
启动 Nautilus/Nemo 将其挂载后,您可以转到/run/user/1000/gvfs/[...]
(比较您的mount
输出)并看到。您应该在那里看到 smb 共享。
在没有 Nautilus/Nemo 的终端上,你需要挂载 smb 驱动器手动。有几种方法可以实现这一点。
据我所知,最常见的选项是使用cifs
。smbfs
是一种替代方法。 描述了在用户空间中安装 smb 的替代方案(无需具有 sudo 权限或成为 root 用户)这里或者这里或者这里。
安装 cifs-utils:
sudo apt-get install cifs-utils
然后安装你的驱动器
--> 暂时:
sudo mount -t cifs -o <Options> //<Server>/<Sharename> <Mountpoint>
注意:<MountPoint>
必须存在。
例如
sudo mount -t cifs -o credentials=~/.smbcredentials //nas/shared_folder /media/nas_shared
~/.smbcredentials 只是一个常规文本文件,包含以下内容:
username=<username of the share>
password=<password of the share>
-o credentials=[...]
如果这是无需登录的公共共享,则省略该部分。
--> 或者使用 fstab 永久生效:
//<Server>/<Sharename> <Mountpoint> cifs credentials=/home/user/.smbcredentials 0 0
然后您可以 cd 到<Mountpoint>
。
获取更多信息Ubuntu 维基。
答案2
由于您可以使用 Nautilus(文件资源管理器)导航到共享文件夹,这意味着 SMB 共享已安装(在较新的 Ubuntu 版本中会自动完成)。因此,如果您只复制一次,则无需创建另一个安装,无论是临时安装,更不用说永久安装。所以现在的问题是:SMB(自动)安装在哪里?我在这里得到了答案:https://askubuntu.com/a/616707/402539
导航/run/user/XXXX/gvfs/smb-share:server=$SERVER_NAME
其中XXXX
是某个用户 ID,例如 1000,$SERVER_NAME
是共享服务器的名称。这是一个很长的名字,可能只用一次就够了,就像我的情况一样。但如果你打算多次使用它,那么更永久的解决方案可能会更好(使用更友好名称的挂载)
答案3
当用户在 Ubuntu 桌面内安装驱动器时,fuse 会将其安装到 /media。
检查输出:
mount
和
lsblk
检查该位置是否已安装。
其次,您应该尝试使用命令行中的“cd”导航到该路径,看看是否能够正常浏览。
亲切的问候