GNU/Linux >> Linux の 問題 >  >> Ubuntu

SSHFS:SSH経由でリモートファイルシステムをマウントする方法

はじめに

SSHFS (SSHファイルシステム)は、リモートマシンにあるファイルシステムをSSH接続を介してローカルシステムにマウントするためのクライアントです。 SSHFSコマンドラインツールは、SFTP(SSHファイル転送プロトコル)を使用して、物理ディスクまたは仮想ディスクをローカルにマウントし、ローカルマシンとリモートマシン間のファイル転送を可能にします。

この記事では、SSHFSを使用してリモートフォルダまたはファイルシステムをSSH経由でマウントするためのインストールと使用法について説明します。

前提条件

  • 管理者権限を持つコマンドラインへのアクセス。
  • ファイルを転送するためにマウントするリモートフォルダまたはファイルシステム。
  • リモートサーバーのユーザー名とホストアドレス。

SSHFSとは何ですか?

SSHFSは、サーバーからローカルマシンにリモートフォルダーを安全にマウントするためのコマンドラインツールです。クライアントはSSHファイル転送プロトコルを拡張します。これにより、リモートファイルシステムをディスクイメージとしてローカルに安全にマウントできます。

SSHFSを使用すると、ローカルディスクで作業しているかのように、ファイルにアクセス、転送、および操作できます。このアプローチは、リモートマシンとの間で大量のコンテンツを移動する場合に便利です。

SSHには、接続を確立するための2つの方法があります。

1.パスワード認証を使用します。

2. SSHキーペアを使用する(推奨)。

LinuxおよびmacOSの場合、リモートディレクトリをマウントする最良の方法はターミナルを使用することです。一方、Windowsは、コマンドライン、Windowsエクスプローラー、GUIなどのいくつかのソリューションを提供します。

SSHFSをインストールする

SSHFSは、ほとんどのマシンでデフォルトで使用できません。ローカルマシンのオペレーティングシステムに基づいて、さまざまなパッケージが存在します。

Linux

aptパッケージマネージャーを使用してUbuntu/DebianシステムにSSHFSをインストールするには、次のコマンドを実行します。

sudo apt install sshfs

CentOSベースのシステムの場合、yumパッケージマネージャーを使用してSSHFSをインストールします。

sudo yum install fuse-sshfs

macOS

MacOSにSSHFSをインストールするには、FUSEおよびSSHFSパッケージの最新の安定したリリースをダウンロードします。最初にFUSEインストーラーを実行します( dmg ファイル)およびSSHFS( pkg ファイル)秒。

ウィンドウ

WindowsでSSHFSを使用するには、ダウンロードしてインストールします。

  • WinFSの最新の安定バージョン。
  • SSHFS-Winの最新の安定バージョンは、システムと互換性があります。オプションで、 SSHFS-Win Manager フロントエンドインターフェイスも利用できます。このインターフェースは、接続を確立および管理するための便利なGUIインターフェースを提供します。

Linuxにリモートファイルシステムをマウントする

SSHFSを使用したリモートファイルシステムのマウントとアンマウントは簡単なプロセスです。概説されている手順は、macOSマシンでも機能します。

ステップ1:マウントポイントを作成する

mntにマウントポイントディレクトリを作成します リモートファイルシステムがマウントされるフォルダ:

sudo mkdir /mnt/<folder name>

ステップ2:SSHFSを使用してリモートファイルシステムをマウントする

SSHFSツールを使用して、作成したマウントポイントにリモートファイルシステムをマウントします。

sudo sshfs [-o <options>] <remote user>@<remote host>:/<path to remote directory> /mnt/<folder name>/

パスワード認証を使用する場合は、要求されたときにログインパスワードを入力します。リモートサーバーがSSHキー認証を使用する場合は、秘密キーのパスを指定します。例:

sudo sshfs -o allow_other,IdentityFile=/home/kb/.ssh/id_rsa [email protected]:/home/ubuntu/ /mnt/test/

上記のコマンドは、 131.153.142.254にあるリモートディレクトリをマウントします ubuntuという名前で /mnt/test/ マウントポイント。

-o タグは、追加されたオプションの存在を示します:

  • allow_other オプションは、root以外のユーザーへのアクセスを許可します。
  • IdentityFile=<path to private key> オプションは、SSH経由でアクセスが構成されているファイルシステム用です。秘密鍵がrootユーザーの下にある場合、コマンドは相対パスを受け入れます。それ以外の場合は、完全なリンクを使用してください。

利用可能なオプションの包括的なリストについては、次を実行してください:

sshfs -h

ステップ3:マウントされたファイルシステムを確認する

cdを使用してディレクトリに移動し、ファイルシステムが正しくマップされているかどうかを確認します。 コマンド:

cd /mnt/<directory name>

または、GUIを使用してフォルダに移動します:

ステップ4:Linuxでリモートファイルシステムをアンマウントする

最後に、マウントポイントが終了したら、次のコマンドを使用してリモートファイルシステムをアンマウントします。

sudo umount /mnt/<folder name>

Windowsエクスプローラーを介してWindowsにリモートファイルシステムをマウントする

リモートファイルシステムをWindowsにマウントする最も一般的な方法は、Windowsエクスプローラーを使用することです。

ステップ1:ネットワークドライブをマッピングする

ファイルエクスプローラーを開きます。 このPCを右クリックします 左側のペインのメニューから、[ネットワークドライブのマッピング]オプションを選択します 。

ネットワークマッピングのダイアログボックスが表示されます。

ステップ2:SSHFSを使用してリモートファイルシステムをマウントする

リモートフォルダをマップするドライブの文字を選択します。 フォルダ内 ボックスに、 sshfsと入力します コマンド:

\\sshfs[.option]\<remote user>@<remote host>[!port][\path]

ユースケースに応じて、 sshfs コマンドにはいくつかのオプションがあります:

  • sshfs リモートユーザーのホームディレクトリをマップします。
  • sshfs.r リモートユーザーのルートディレクトリに接続します。
  • sshfs.k リモートユーザーのホームディレクトリをマップし、<ローカルユーザー>/。ssh/ id_rsaに保存されているSSHキーを使用します 。
  • sshfs.kr リモートユーザーのルートディレクトリを追加し、ローカルに保存されたSSHキーを使用します。

例:

\\sshfs.k\[email protected]

完了をクリックします リモートファイルシステムをマップします。接続しようとすると、ダイアログボックスが表示されます。接続に成功すると、リモートファイルシステムがWindowsエクスプローラーで開きます。

ステップ3:マウントされたファイルシステムを確認する

新しくマウントされたファイルシステムは、このPCから見ることができます Windowsエクスプローラのネットワークの場所

ステップ4:エクスプローラーを介してWindows上のリモートファイルシステムをアンマウントする

ディスクをアンマウントするには、マウントされたデバイスを右クリックして、[切断]オプションを選択します :

CMDを介してWindowsにリモートファイルシステムをマウントする

コマンドラインを介してWindowsにリモートファイルシステムをマウントするのは、すばやく簡単なプロセスです。

ステップ1:ネット使用でリモートファイルシステムをマウントする

net useを使用する リモートファイルシステムをマウントするコマンド:

net use <drive letter>: \\sshfs[.option]\<remote user>@<remote host>[!port][\path]

例:

net use X: \\sshfs.k\[email protected]

コマンドは次のことを行います:

  • X: ローカルマシンのドライブ文字を表します。
  • sshfs.k /。ssh/id_rsaに保存されているSSHキーの使用を示します 。
  • [email protected] はリモートユーザーおよびホストです。

コマンドの出力は、接続が成功したことを通知します。

ステップ2:マウントされたデバイスを表示する

SSHFSを介して現在マウントされているディスクを表示するには、次のコマンドを実行します。

net use

このコマンドは、ローカルマウントポイント名とリモート接続ポイントを出力します。

ステップ3:CMDを介してWindows上のリモートファイルシステムをアンマウントする

マップされたデバイスをシステムから削除するには、次のコマンドを実行します。

net use <drive letter>: /delete

たとえば、リモートファイルシステムがドライブ Xにある場合 、使用:

net use X: /delete

SSHFSを介してWindowsにリモートファイルシステムをマウントする-WinManager

SSHFS-Win Managerは、リモートサーバー接続を確立および管理するための便利で使いやすいGUIを提供します。

ステップ1:SSHFS-WinManagerを見つけて実行する

[スタート]メニューでSSHFS-WinManagerを検索し、プログラムを実行します。デバイス接続を管理するためのGUIインターフェイスが開きます。

ステップ2:接続を追加する

接続の追加をクリックして、新しい接続を追加します 右側のメニューのボタン。

フォームメニューが表示されます。提供されたフィールドに入力し、状況に応じたオプションを選択します。

  • 名前 接続のカスタム名です。
  • IP/ホスト はホストアドレスです。
  • ポート SSH接続のデフォルトは22です。特にポートを変更しない限り、そのままにしておきます。
  • ユーザー リモートシステムのユーザー名です。
  • 認証方法 秘密鍵ファイルまたはパスワードのいずれかを使用します。秘密鍵ファイルを使用する場合は、パスを指定します。または、パスワードオプションを使用すると、すぐに、または接続を確立するときにパスワードを入力できます。
  • リモートパス リモートファイルシステムへのパスです。
  • ローカルドライブ文字 マウントポイント用にローカルで使用可能なドライブ文字のリストです。

最後に、[保存]をクリックします フィールドへの入力が完了したら。新しく作成されたサーバー接続がメインメニューに表示されます。

ステップ3:リモートファイルシステムをマウントしてコンテンツを表示する

ソケットアイコンをクリックします 接続名の横に接続を確立します。接続が成功すると、ソケットアイコンが緑色の接続されたソケットに変わり、フォルダアイコンが表示されます。

フォルダアイコンをクリックします リモートファイルシステムの内容を表示します。

ステップ4:SSHFSWin-Managerを介してWindows上のリモートファイルシステムをアンマウントする

サーバー接続をアンマウントするには、ソケットアイコンをクリックします SSHFSWin-Managerメニューで。接続が不要になった場合は、削除モードを使用して情報を削除してください ボタン。


Ubuntu
  1. CentOS/RHEL で「autofs」を使用して NFS ファイル システムをマウントする方法

  2. SSHFS (Secure SHell FileSystem) – リモート ファイルシステムを ssh 経由で安全にマウント

  3. ssh 経由でディレクトリを比較する方法

  1. ファイルを作成してファイルシステムとしてマウントする方法は?

  2. Linux で iso ファイルをマウントする方法

  3. sshfs よりも高速にリモート ファイル システムをマウントする方法はありますか?

  1. SSH経由でRsyncを使用してファイルを転送する方法

  2. LinuxでISOファイルをマウントするには?

  3. SSH - ~/.ssh/config ファイルに -t コマンドを含める方法