zoukankan      html  css  js  c++  java
  • CentOS 7安装SSHFS 实现远程主机目录 挂载为本地目录

    安装sshfs

    官方下载地址 https://github.com/libfuse/sshfs/releases


    首先,我们需要安装sshfs软件。sshfs是一个基于SSH文件传输协议的文件系统客户端,它的官方网页是:http://fuse.sourceforge.net/sshfs.html 。在CentOS下,我们可以通过yum来安装(注意使用yum安装需要安装EPEL源):

    yum -y install fuse-sshfs

    安装好后,系统会自动建立fuse用户组,要使用sshfs的用户只要加入这个用户组即可。

    挂载远程目录
    要想挂载远程目录,使用如下命令即可:
    sshfs user@hostname:path mout_point
    例如:sshfs root@127.0. 0. 0:/data/www/rabbit/Upload/ /mnt/file_server_storage
    /mnt/file_server_storage为本地的路径
    这里user为远程主机用户名,hostname为远程主机IP地址,path为远程主机中想要挂载到本地的目录,mount_point为挂载到本地的目录。

    卸载挂载点
    当不需要使用的时候,使用以下命令卸载:
    fusermount -u mount_point
    如果想要开机自动挂载,可以在/etc/fstab中加入下面一行:
    sshfs#user@hostname:path mount_point fuse defaults,auto,allow_other 0 0
    这就要求必须先把ssh自动登录配置好了,让root用户能够使用user身份登录远程主机,另外allow_other这个参数很重要,没有这个参数的话,挂载过来的目录只有root能够访问。

    以下为实际操作中所遇到的问题
    1、执行卸载命令:
    fusermount -u /mnt/file_server_storage

    提示device is busy.
    执行: umount -fl ./file_server_storage 命令可以完成卸载.
    关于: umount 命令
    umount可卸除目前挂在Linux目录中的文件系统

    2、关于操作操作权限
    以前经常出现执行挂载命令以后,shell命令可以直接进入挂载点操作,但远程程序一直无法操作成功。
    后来发现是需要加上-o 参数:
    执行sshfs –h 会看到如下帮助说明


    FUSE options:
    FUSE(用户空间文件系统)
    用户空间文件系统(Filesystem in Userspace),是Linux 中用于挂载某些网络空间,如SSH,到本地文件系统的模块,在SourceForge上可以找到相关内容。

    sshfs root@127.0. 0. 0:/data/www/rabbit/Upload/ /mnt/file_server_storage
    //替换为以下命令即可
    sshfs root@127.0. 0. 0:/data/www/rabbit/Upload/ /mnt/file_server_storage –o allow_other

    配合的在/etc下面增加了一个文件fuse.conf
    在fuse.conf里面就一句话: user_allow_other,保存退出即可。

  • 相关阅读:
    控件列[Coolite]上传文件
    阿里巴巴淘宝马云的SNS之梦有了新目标 收购“微博”
    十进制数真值配套自测连载(一)
    谷歌用户Siri当心!谷歌正从苹果业务中分走一杯羹
    服务协议Rest风格的web服务开发入门篇1
    注意测试数据hdu 1010 (DFS+剪枝)
    团队软件成为技术领导者研发团队管理经验分享
    字段数据用一句sql语句更新两个表并可更新对应的字段的值
    日期条件SQL 截取日期作为条件
    取消内存Myeclipse 9.0优化方法汇总
  • 原文地址:https://www.cnblogs.com/pangguoming/p/9961477.html
Copyright © 2011-2022 走看看