使用终端将文件夹复制到 NAS 驱动器

使用终端将文件夹复制到 NAS 驱动器

您好,我是 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 驱动器手动。有几种方法可以实现这一点。

据我所知,最常见的选项是使用cifssmbfs是一种替代方法。 描述了在用户空间中安装 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”导航到该路径,看看是否能够正常浏览。

亲切的问候

相关内容