Linux上挂载windows共享目录

Linux上挂载windows共享目录,第1张

    笔者最近经常需要在windows和树莓派之前来回拷贝文件,最开始是使用U盘,然后使用VNC自带的文件传输工具,支持来回传输文件。也有一些SSH工具支持传递文件,但是频繁拷贝来说确实繁琐了些。windows的开发平台和工具用起来更加的和谐友好,比如写php文件,笔者一般在windows写好再上传到服务器,传递也很耗时间。最近闲逛才知道可以linux可以挂载windows共享目录,孤陋寡闻的认为只能挂载硬盘、U盘等。那我们开始吧。

    1、在linux下要挂载windows的共享文件,需要安装cifs-utils软件包

    dpkg -l|grep cifs-utils可以查看是否安装了这个软件包,which mount.cifs可以查看这个软件包安装在哪里。sudo apt-get install cifs-utils可以安装软件包。

2、建立一个目录用来作挂载点。

    笔者准备将共享目录挂载在mnt目录下,在mnt目录下建立share目录,sudo mkdir share 。

3、window共享share文件夹

    文件夹上右键属性,设置共享属性。

4、挂载 *** 作

    sudo mount -t cifs -o username=Administrator,password=123456  //192.168.31.33/share /mnt/share。

    192.168.31.33为windows的IP地址,Administrator为windows的用户名,123456为用户密码。在测试时,笔者不会不设置密码会出现告警,“mount error(13): Permission denied;Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)“,设置windows的用户名密码后才能挂载成功。还有注意用户名Administrator第一个字母有可能是是大写的,所以一定要对应好用户名。

5、测试大功告成

    在windows新建修改文件,在linux可以自由查看,修改就需要root权限了。

6、取消挂载

    sudo umount /mnt/share 。当然,重启linux后挂载自动会取消。需要重新挂载。

7、脚本控制来挂载共享文件夹

    为了方便起见,在开启linux后需要重新挂载共享文件夹,这一串命令可要让人头疼了,那么脚本来帮助!执行效果如下。如果挂载路径不一样,可要修改脚本用参数定位到新路径,那笔者就不尝试了。$? 执行上一个指令的返回值 ,显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。

   欢迎取用:

在本地挂载远程主机目录需要用到的工具是sshfs,所以我们需要安装这个工具。

安装

apt-get install sshfs

安装完成以后,我们只需要一个简单的命令即可挂载远程目录。

sshfs  用户名@主机名:目录  需要挂载的本机目录  [options]

挂载

我们直接使用以下命令来挂载xxx.com主机上的/data文件夹,挂载到本地/tmp/data

sshfs  root@xxx.com:/data  /tmp/data/

我们可能会遇到以下的错误

fuse: mountpoint is not empty

fuse: if you are sure this is safe, use the 'nonempty' mount option

产生问题原因以及解决方案:

产生这种问题的原因是因为如果挂载目录下的文件名和挂载后的产生的文件名如果相同的话,系统会产生困扰,所以最好避免这种情况的发生。当然如果你确定安全的话就在挂载时加上nonempty命令就可以解决了

修正命令

sshfs  root@xxx.com:/data  /tmp/data/  -o nonempty

完美挂载。

卸载

卸载会用到umount

umount 本地挂载目录

例如上述我们将远程目录挂载到本地的/tmp/data,所以我们的卸载命令是这样的

umount /tmp/data


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/6054246.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-13
下一篇 2023-03-13

发表评论

登录后才能评论

评论列表(0条)

保存