zoukankan      html  css  js  c++  java
  • How to mount a remote directory in Linux using sshfs

    Q. I have access rights to one of the remote server through SSH protocol and there is no File share services such as Samba, NFS or FTP etc which are enabled on the server. Now I want to mount data from that remote server, is it possible to mount remote folders?

     

    A. The answer to this is yes, We can share data/mount folder on a local machine by using just SSH protocol. This can be done by using FUSE(Filesystem in USErspace) whichsupport SSH and FTP file systems. This post is in response to conversation which I had with one our users two days back. the question he asked about ftp is “I want to transfer one latest file from my ftp server and I want to automate this task through shell script to download latest file from my FTP server, And I don’t know what is the Operating System at server end(This is ultimate sentence I hear from the user today in my office  )“. Let’s prepare our machine on how to mount a remote folder by using SSH protocol.

    Step1: Installing Package

    On Ubuntu/Debain

    apt-get install sshfs

    On Redhat/CentOS/Fedora

    rpm -ivh fuse-sshfs-1.8-1.el5.rf.i386.rpm

    Step2: Once the package is installed we have to create a mount point and mount our  server data using sshfs command, for which we require  username/password. Here are my details for this task.

    My Username: root
    
    My password: redhat
    
    My Server: 10.233.10.212
    
    My mount point: /mnt/ssh

    Now create the mount point and mount SSH account data.

    #mkdir /mnt/ssh
    
    #sshfs root@10.233.10.212:/ /mnt/ssh/
    
    root@10.233.10.212's password:

    Step3: The above command will mount my root directory in 10.233.10.212 server. Testing our setup

    Check if you are able to see data

    #cd /mnt/ssh

    #ls

    Sample output

    bin   cdrom     data  etc   initrd.img      lib         media  opt   root  selinux  sys   tmp  var      vmlinuz.old
    boot  cmdb-bkp  dev   home  initrd.img.old  lost+found  mnt    proc  sbin  srv      test  usr  vmlinuz

    What about df -hs command output?

    Sample output

    Filesystem Size Used Avail Use% Mounted on
    /dev/sda2 12G 8.4G 2.5G 78% /
    /dev/sda6 80G 43G 34G 56% /var
    /dev/sda5 2.0G 41M 1.8G 3% /home
    /dev/sda1 99M 12M 83M 12% /boot
    tmpfs 506M 0 506M 0% /dev/shm
    sshfs#root@10.233.10.212:/ 1000G 0 1000G 0% /mnt/ssh

    Step4: So what about mounting it permanently?. We can do it by editing fstab file in /etc folder

    #vi /etc/fstab

    go to last line and type below line

    sshfs#root@10.233.10.212:/ /mnt/ssh fuse defaults 0 0

    Save the file and exit. Now run mount -a to update the fstab file state to kernel.

    Note: Its not advisable to write passwords in human readable files like /etc/fstab.

    #mount -a

    Let me explain what entry in fstab indicates. We are mentioning mount user root data which is located on 10.233.10.212 server on to /mnt/ssh using fuse file system with default settings.

    Step5: What about unmounting this drive?

    #umount /mnt/ssh

    Enjoy new learning of mounting a folder using SSH protocol.

  • 相关阅读:
    从IL角度彻底理解回调_委托_指针
    微信个人机器人开发
    个人微信接口开发
    淘客微信接口
    python爬虫添加请求头代码实例
    用 Django 开发一个 Python Web API
    Common encryption methods and implementation in Python Python中常用的加密方法及实现
    python aes加密
    # Python语言程序设计基础
    Python语言程序设计基础——4 程序的控制结构
  • 原文地址:https://www.cnblogs.com/yangtze736-2013-3-6/p/4760431.html
Copyright © 2011-2022 走看看