1. 程式人生 > >使用 SSHFS 掛載遠端的 Linux 檔案系統及目錄

使用 SSHFS 掛載遠端的 Linux 檔案系統及目錄

導讀 當我們需要在本地機器上和遠端的目錄和檔案進行互動時,總是會考慮到安全之類的問題,那麼SSHFS將會是一個不錯的選擇。

這篇文章對於那些無論出於什麼目的,希望在他們本地的系統中掛載遠端的檔案系統的使用者或者系統管理員有幫助。我們通過 Linux 系統中的一個安裝了 SSHFS 客戶端進行實際測試,並且成功的掛載了遠端的檔案系統。

在我們進一步安裝之前,讓我們瞭解一下 SSHFS 的相關內容,以及它是如何工作的。

ssh2

什麼是 SSHFS

SSHFS(Secure SHell FileSystem)是一個客戶端,可以讓我們通過 SSH 檔案傳輸協議(SFTP)掛載遠端的檔案系統並且在本地機器上和遠端的目錄和檔案進行互動。

SFTP 是一種通過 SSH 協議提供檔案訪問、檔案傳輸和檔案管理功能的安全檔案傳輸協議。因為 SSH 在網路中從一臺電腦到另一臺電腦傳輸檔案的時候使用資料加密通道,並且 SSHFS 內建在 FUSE(使用者空間的檔案系統)核心模組,允許任何非特權使用者在不修改核心程式碼的情況下建立他們自己的檔案系統。

在這篇文章中,我們將會向你展示在任意 Linux 發行版上如何安裝並且使用 SSHFS 客戶端,在本地 Linux 機器上掛載遠端的 Linux 檔案系統或者目錄。

步驟1:在 Linux 系統上安裝 SSHFS

預設情況下,sshfs 包不存在所有的主流 Linux 發行版中,你需要在你的 Linux 系統中啟用 epel,在 Yum 命令列的幫助下安裝 SSHFS 及其依賴。

# yum install sshfs
# dnf install sshfs              【在 Fedora 22+ 發行版上】
$ sudo apt-get install sshfs     【基於 Debian/Ubuntu 的系統】
步驟2:建立 SSHFS 掛載目錄

當你安裝 SSHFS 包之後,你需要建立一個掛載點目錄,在這兒你將要掛載你的遠端檔案系統。例如,我們在 /mnt/tecmint 下建立掛載目錄。

# mkdir /mnt/tecmint
$ sudo mkdir /mnt/tecmint     【基於 Debian/Ubuntu 的系統】
步驟 3:使用 SSHFS 掛載遠端的檔案系統

當你已經建立你的掛載點目錄之後,現在使用 root 使用者執行下面的命令列,在 /mnt/tecmint 目錄下掛載遠端的檔案系統。視你的情況掛載目錄可以是任何目錄。

下面的命令列將會在本地的 /mnt/tecmint 目錄下掛載一個叫遠端的一個 /home/tecmint 目錄。(不要忘了使用你的 IP 地址和掛載點替換 x.x.x.x)。

# sshfs [email protected]:/home/tecmint/ /mnt/tecmint
$ sudo sshfs -o allow_other [email protected]:/home/tecmint/ /mnt/tecmint     
 【基於 Debian/Ubuntu 的系統】

如果你的 Linux 伺服器配置為基於 SSH 金鑰授權,那麼你將需要使用如下所示的命令列指定你的公共金鑰的路徑。

# sshfs -o IdentityFile=~/.ssh/id_rsa [email protected]:/home/tecmint/ /mnt/tecmint
$ sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa [email protected]:/home/tecmint/ /mnt/tecmint     【基於 Debian/Ubuntu 的系統】
步驟 4:驗證遠端的檔案系統掛載成功

如果你已經成功的運行了上面的命令並且沒有任何錯誤,你將會看到掛載在 /mnt/tecmint 目錄下的遠端的檔案和目錄的列表

# cd /mnt/tecmint
# ls
[[email protected] tecmint]# ls
12345.jpg                       ffmpeg-php-0.6.0.tbz2                Linux                                           news-closeup.xsl     s3.jpg
cmslogs                         gmd-latest.sql.tar.bz2               Malware                                         newsletter1.html     sshdallow
epel-release-6-5.noarch.rpm     json-1.2.1                           movies_list.php                                 pollbeta.sql
ffmpeg-php-0.6.0                json-1.2.1.tgz                       my_next_artical_v2.php                          pollbeta.tar.bz2
步驟 5:使用 df -hT 命令檢查掛載點

如果你執行 df -hT命令,你將會看到遠端檔案系統的掛載點。

# df -hT

樣本輸出:

Filesystem                          Type        Size  Used Avail Use% Mounted on
udev                                devtmpfs    730M     0  730M   0% /dev
tmpfs                               tmpfs       150M  4.9M  145M   4% /run
/dev/sda1                           ext4         31G  5.5G   24G  19% /
tmpfs                               tmpfs       749M  216K  748M   1% /dev/shm
tmpfs                               tmpfs       5.0M  4.0K  5.0M   1% /run/lock
tmpfs                               tmpfs       749M     0  749M   0% /sys/fs/cgroup
tmpfs                               tmpfs       150M   44K  150M   1% /run/user/1000
[email protected]:/home/tecmint fuse.sshfs  324G   55G  253G  18% /mnt/tecmint
步驟 6:永久掛載遠端檔案系統

為了永久的掛載遠端的檔案系統,你需要修改一個叫

/etc/fstab

的檔案。照著做,使用你最喜歡的編輯器開啟檔案。

# vi /etc/fstab
$ sudo vi /etc/fstab     【基於 Debian/Ubuntu 的系統】         

移動到檔案的底部並且新增下面的一行,儲存檔案並退出。下面條目表示使用預設的設定掛載遠端的檔案系統。

sshfs#[email protected]:/home/tecmint/ /mnt/tecmint fuse.sshfs defaults 0 0

確保伺服器之間允許 SSH無密碼登入,這樣系統重啟之後才能自動掛載檔案系統。

如果你的伺服器配置為基於 SSH 金鑰的認證方式,請加入如下行:

sshfs#[email protected]:/home/tecmint/ /mnt/tecmint fuse.sshfs IdentityFile=~/.ssh/id_rsa defaults 0 0

接下來,你需要更新 fstab 檔案使修改生效。

# mount -a
$ sudo mount -a   【基於 Debian/Ubuntu 的系統】
步驟 7:解除安裝遠端的檔案系統

為了解除安裝遠端的檔案系統,只需要發出以下的命令即可。

# umount /mnt/tecmint

相關推薦

linux下使用sshfs掛載遠端linux檔案系統目錄

文章來源 寫這篇文章的主要目的就是提供一步一步的指導,關於如何使用 SSHFS 通過 SSH 掛載遠端的 Linux 檔案系統或目錄。 這篇文章對於那些無論出於什麼目的,希望在他們本地的系統中掛載遠端的檔案系統的使用者或者系統管理員有幫助。我們通過 Linu

使用 SSHFS 掛載遠端Linux 檔案系統目錄

導讀 當我們需要在本地機器上和遠端的目錄和檔案進行互動時,總是會考慮到安全之類的問題,那麼SSHFS將會是一個不錯的選擇。 這篇文章對於那些無論出於什麼目的,希望在他們本地的系統中掛載遠端的檔案系統的使用者或者系統管理員有幫助。我們通過 Linux 系統中的一個安裝了 S

Linux檔案系統硬碟

ext 檔案系統管理工具mkfs.ext2,3,4mkfs.ext2 沒有日誌功能 mkfs.ext4 /dev/sda2ext檔案系統專用管理工具:mke2fsmke2fs [options] device -t[ext2|ext3|ext4] -b [1024|2048|4096] 指名檔案系統塊大小

Linux檔案系統屬性

Linux檔案系統及屬性 宗旨:技術的學習是有限的,分享的精神是無限的。 一、Linux系統下檔案型別及屬性 1、inode結構 /*索引節點物件由inode結構體表示,定義檔案在linux/fs.h中*/ struct inode { struct hlist_

linux檔案系統磁碟格式化

千萬注意:分割槽格式化磁碟前確保你磁碟的資料備份好了,要不可能就沒了。 1、傻瓜式磁碟分割槽,最直接的方式(先fdisk後parted)。不用瞭解檔案系統的原理。此處將對兩種分割槽機制磁碟進行分割槽格式化(MBR型別磁碟——用fdisk###GPT型別磁碟——用parted

udev 自動掛載U盤檔案系統指定目錄

嵌入式linux檔案系統中自動掛載U盤內的檔案系統 在海思嵌入式linux檔案系統中存在udev目錄及下屬檔案 /etc/udev # pwd /etc/udev /etc/udev # ls disk-hotplug.sh rules.d u

linux檔案結構目錄功能

/boot 開機載入程式 /dev 裝置檔案 /etc 配置檔案     /etc/rc 系統初始化目錄,/etc/passwd 使用者資訊檔案  /etc/shadow使用者密碼資訊    /etc/hosts   

Linux檔案系統基本目錄結構概述

1./bin (binary簡寫) 包含基本命令,如ls,cp, mkdir等,這個目錄中的檔案都是可執行的。 2./sbin (system binary簡寫) 包含系統命令,如modprobe,h

Linux檔案系統檔案相關命令

Linux中一切皆檔案 檔案系統是作業系統用於在磁碟或分割槽上的組織檔案的方法和資料結構。 檔案系統由三部分組成:與檔案管理相關的軟體,被管理檔案以及實施檔案管理所需的資料結構。 從系統的角度來看,檔案系統是對檔案儲存器空間進行組織和分

Linux檔案系統以及目錄結構簡介

Linux和Windows作業系統中的檔案系統些不同,在學習使用Linux之前,能夠了解這個不同之處助於後續的學習。本文先對Windows和Linux上面檔案系統的一些概念進行區分,然後介紹一些Linux檔案系統相關的原理,最後較為詳細地介紹了Linux系統的目

Linux檔案系統管理 開機自動掛載fstab檔案修復

概述 開機自動掛載及fstab檔案修復 開機自動掛載 實現開機後自動掛載,就需要修改系統的自動掛載檔案 /etc/fstab。因為系統就是依賴這個檔案決定啟動時載入的檔案系統的。通過vi 開啟/etc/fstab檔案 [[email protected] ~]# vi /etc/fst

04 Linux檔案系統目錄結構bash特性

Linux檔案系統:   Linux:glibc   程式編譯方式:     動態連結式編譯     靜態連結式編譯   程序的型別:     終端:硬體裝置,在硬體裝置上可以關聯一個使用者介面,從而讓使用者用此介面與作業系統打交道     與終端相關:通過終端啟動     與終端無關:操作引

如何看linux檔案系統型別掛載硬碟命令

[[email protected] bin]$ sudo parted  [sudo] password for zxc:  GNU Parted 2.1 Using /dev/sda Welcome to GNU Parted! Type 'help' to

linux檔案系統目錄構成常用命令

/usr/bin  /bin    存放所有使用者可以執行的命令。 /usr/sbin /sbin  存放只有root可以執行的命令(s代表super)。 /home             使用者預設宿主目錄。 /proc              虛擬檔案系統,存放當前記憶體映象(cpu,記憶體,程序資

Linux 檔案系統的建立與掛載方法

轉自:https://blog.csdn.net/gz153016/article/details/51655994 Linux的  檔案系統的建立與掛載方法 1 Linux 檔案系統的建立 Linux的  作業系統在安裝伺服器時,安裝程式已經建立了自己的檔案系統,但是在使

linux檔案系統管理---分割槽掛載

轉:HTTP://www.cnblogs.com/alantu2018/p/8461680.html 一,系統在初始化時如何識別硬碟  1,系統初始時根據MBR的資訊來識別硬碟,其中包括了一些執行檔案就來載入系統,這些執行檔案就是MBR裡前面446bytes裡的啟動載入器程式,而後面

使用sshfs掛載遠端伺服器目錄

點選訪問原文 您還可以加入全棧技術交流群(QQ群號:254842154) 伺服器日誌檢視,是開發人員和伺服器運維人員在工作中經常會遇到的一件事情,只有一臺伺服器時,比較好辦,直接登入伺服器使用tail -f file-path 命令就可以實時檢視到日誌檔案的輸出。當有負載的需要,伺

Linux檔案系統管理 swap分割槽作用

概述 在安裝系統的時候已經建立了 swap 分割槽。swap 分割槽是 Linux 系統的交換分割槽,當記憶體不夠用的時候,我們使用 swap 分割槽存放記憶體中暫時不用的資料。也就是說,當記憶體不夠用時,我們使用 swap 分割槽來臨時頂替。在記憶體較小的情況下建議 swap 分割槽的

LINUX學習—檔案系統管理類命令

Windows: PE Linux: ELF 檔案系統: rootfs:根檔案系統 FHS:規定Linux應該建立哪些目錄和檔案 ls / 可檢視根目錄下一級子目錄, 也可以ls /目錄名:可以檢視該目錄下一級子目錄 /boot: 系統啟動相關的檔案, 如核心、initrd

Linux之初識檔案系統初步管理

一、什麼是檔案系統 計算機的檔案系統是一種儲存和組織計算機資料的方法,它使得對其訪問和查詢變得容易,檔案系統使用檔案和樹形目錄的抽象邏輯概念代替了硬碟和光碟等物理裝置使用資料塊的概念,使用者使用檔案系統來儲存資料不必關心資料實際儲存在硬碟(或者光碟)的地址為多少的資料塊上,只需要記住這個檔案的所