背景
之前一直使用windows访问ubuntu上的数据。但是今天突然遇到一个问题,就是一台ubuntu的虚机机v853无法访问特定网络,而另一台虚拟机t31恰好是配置了访问特定网络的全部信息和配置。于是我希望通过t31来把v853的数据下载到t31上面来,这样就有了这样的需求了。
samba服务端
按照过往安装samba服务器的方法就好了,如下:
bash
$ sudo apt install samba
$ sudo apt install samba-common samba
$ sudo vim /etc/samba/smb.conf
$ sudo smbpasswd -a v853
$ sudo service restart smbd
然后在windowns下直接方位这个samba服务器,并测试一下读写权限是否ok。
注意一定要保证在windowns下访问v853的samba是具有读写权限的才可以,这对下一步来说非常的重要。
samba客户端
bash
$ sudo mkdir /mnt/smbmount
$ sudo chown t31:t31 /mnt/smbmount/ -R
$ sudo umount /mnt/smbmount
$ sudo mount -t cifs -o username=v853,uid=$(id -u),gid=$(id -g),forceuid,forcegid,password=xxxxxx //192.168.2.108/v853 /mnt/smbmount
其中比较重要的就是在t31上访问v853的机器时对文件夹的访问权限问题:
第一,必须要保证v853在其他电脑访问的读写功能是正常的,即保证samba的server端读写权限是ok的。
第二,必须保证t31的账号访问问其"/mnt/smbmount"目录是具有拥有者的权限。
第三,必须在挂载时指定uid和gid为t31的uid和gid才可以的。
记得使用完后别忘记了了umount
bash
$ sudo umount /mnt/smbmount