zoukankan      html  css  js  c++  java
  • Ubuntu SSH 客户端的应用 | sshfs映射远程文件系统为本地磁盘

    SSH是指Secure Shell,是一种安全的传输协议。


    Ubuntu客户端通过SSH访问远程服务器 ,以下步骤是客户端 的配置方法:

    1. sudo apt-get install ssh
    2. ssh-keygen
    (按回车设置默认值)
    按缺省生成id_rsa和id_rsa.pub文件,分别是私钥和公钥。

    假定服务器ip为61.145.34.33,ssh服务的端口号为22,服务器上有个用户为root;
    用ssh登录服务器的命令为:
    >ssh -l root 61.145.34.33 -p 22
    >输入root用户的密码
    注:第2可以省略,因为这一步的配置目的为了今后访问服务器不需要密码

    具体ssh-keygen操作流程如下链接:

    http://blog.csdn.net/wh_19910525/article/details/7433164

    sshfs映射远程文件系统为本地磁盘

    Ubuntu客户端通过sshfs将远程服务器的文件系统映射为本地磁盘,以下步骤为客户端的配置方法:

    1. sudo apt-get install sshfs

    2. sshfs 用户名@远程服务器名:远程目录 映射至本地的目录

    "执行命令后 Ubuntu 会自动在桌面上显示挂载的 sshfs 文件系统盘,现在你就可以像操作本地磁盘一样操作这个映射的磁盘了。"

    注:我执行这行命令时,报错了,起先我用的服务器地址是IP地址,如:hexiaodong@192.168.0.61:,这个后来才发现其实没有问题,但是还是报出这样的错误:Read:Connection reset by peer.可想而知,是链接错误,但不知道是服务器问题还是本机问题,ping能ping通,说明网络没有问题,后来网上一查,使用sshfs的用户需要将其加入fuse用户组里,fuse用户组这里不再赘述,于是试图用命令usermode -a -G fuse rainey将本地用户加入fuse组,但是又遇到问题:usermode: cannot lock /etc/password; try again later。后来发现这个错误,其实就是usermode 需要超级用户权限,于是在命令前加个sudo顺利解决。接下来再次尝试映射(挂载)目标服务器的文件系统,但这次,我不经意间把服务器的地址用成了名称,而不是IP,果断报错,错误跟原来的一样:Read:Connection reset by peer.所以千万要注意了:尝试用sshfs挂载的时候,服务器的地址必须是IP地址,如:hexiaodong@192.168.0.61:。接下来就是访问权限设置问题了,解决方法很多,网上有很多资料的,自己找找吧,我是把自己的用户加入了超级用户组。

    后记:我的目的是为了本地的eclipse能顺利的导入远程源码,发现用户权限着实让人头疼,即使你命令行下得到超级权限,你在eclipse下仍然不能访问这个文件夹,后来一想,如果把文件系统挂载到主目录,会怎么样,/home/rainey,果然不受权限限制,可以happy地把服务器上的源代码哪导入eclipse啦。

  • 相关阅读:
    基于Canal和Kafka实现MySQL的Binlog近实时同步
    Levenshtein Distance(编辑距离)算法与使用场景
    超强图文|并发编程【等待/通知机制】就是这个feel~
    volatile和synchronized到底啥区别?多图文讲解告诉你
    读《Clean Code 代码整洁之道》之感悟
    小小TODO标识,你用对了吗?
    深入理解JVM(③)判断对象是否还健在?
    深入理解JVM(③)虚拟机的类加载器(双亲委派模型)
    深入理解JVM(③)经典的垃圾收集器
    深入理解JVM(③)HotSpot虚拟机对象探秘
  • 原文地址:https://www.cnblogs.com/rainey-forrest/p/4742644.html
Copyright © 2011-2022 走看看