昨天把 Samba 服务器搞定了,现在已经开始用上了,之后,我把以前的移动硬盘插在了新买的华为荣耀路由器上面,启用了路由器的 Samba 服务,配置情况如下:

  • IP: 192.168.3.13
  • 用户名:username
  • 密码:password

接下来,在我的 Elementary 上面,连接该服务,并将里面的文件同步到本机。

继续之前,需要先安装 smbclient 工具:

sudo apt-get install smbclient

使用 smbclient 连接

smbclient 可以用于浏览 Samba 服务器上面的所有共享资源,也可以用于直接访问 Samba 服务器指定的共享资源。

浏览 Samba 服务器所有共享资源可以使用如下命令:

smbclient -L 192.168.3.13 -U username

输入上面命令之后,终端会要求你输入该用户名的密码,如果想直接连同密码一起输入到命令行工具中,可以像下面这样:

smbclient -L 192.168.3.13 -U username%password

终端输出如下结果:

Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.37]

    Sharename       Type      Comment
    ---------       ----      -------
    Seagate_usb1_1  Disk      
    Seagate_usb1_2  Disk 

如果要直接访问 Samba 服务器指定共享资源,可以使用下面这行命令:

smbclient //192.168.3.13/Seagate_usb1_2 -U username%password

输出:

Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.37]
smb: \> 

在 smb 环境下,我们就可以对文件进行操作。

使用 mount 方式

使用 smbclient 访问,还是很麻烦,一般我们都会将资源挂载到本地计算机上面,这样使用起来就会方便得多:

mount -t cifs //192.168.3.13/Seagate_usb1_2 /home/pantao/CloudStorages/HonorRouter -o username=username%password

如果要永久使用 Samba 服务器共享资源,可以将挂载信息写入到 /etc/fstab 文件中,在最后添加以下这行:

//192.168.3.13/Seagate_usb1_2 /home/pantao/CloudStorages/HonorRouter cifs defaults,username=username%password 0 0

由于 /etc/fstab 文件的默认权限是 0644,也就是说所有用户都可以读取,如果你不希望其它用户看到你的 Samba 用户名与密码的话,那可在 /etc/samba/pwd.conf 文件中,添加以下内容:

username=username password=password

然后在 /etc/fstab 中添加下面这行:

//192.168.3.13/Seagate_usb1_2 /home/pantao/CloudStorages/HonorRouter cifs defaults,credentials=/etc/samba/pwd.conf 0 0

 使用自动挂载

/etc/auto.master 文件中加入以下内容:

/home/pantao/CloudStorages/HonorRouter /etc/samba.misc--timeout=30 # timeout 值可以根据实际网络情况设置

然后建立 /etc/samba.misc 文件,加入以下内容:

samba-fstype=cifs,username=username,password=password ://192.168.3.13/Seagate_usb1_2

标签: 文件共享, Samba

评论已关闭