SSHFSを使用します SFTPを使用してリモートファイルシステムをマウントするLinuxのコマンド (SSHファイル転送プロトコル 。
SSHFS は、リモートサーバー上のファイルとディレクトリをマウントして操作するために使用されるファイルシステムクライアントです。 SSH プロトコルは、2つのホスト間のデータ交換を暗号化するために使用されます。
FTP (ファイル転送プロトコル )は、ネットワークを介して2台のコンピューター間でファイルを転送するために使用されるネットワークプロトコルです。一方、SFTPは、FTPと同様の機能を実行することに加えて、2台のコンピューター間で送受信されるデータを暗号化するために使用されるセキュリティレイヤーを組み込んでいます。インターネット。
では、2つのツールはどのように連携しますか?ええと、 SSHFS はユーザースペース内の単なるファイルシステムであり、リモートファイルシステムをマウントする機能を実行するために、 SFTPを利用します。 。
LinuxへのSSHFSのインストール
SSHFS はLinuxベースのソフトウェアツールであり、デフォルトのパッケージマネージャーを使用してほとんどのディストリビューションの標準リポジトリからインストールできます。
$ sudo apt install sshfs [On Debian, Ubuntu and Mint] $ sudo yum install fuse-sshfs [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux] $ sudo emerge -a net-fs/sshfs [On Gentoo Linux] $ sudo pacman -S sshfs [On Arch Linux] $ sudo zypper install sshfs [On OpenSUSE]
リモートLinuxファイルシステムのマウント
これが機能するためには、リモートサーバーが到達可能である必要があるため、いくつかのping要求を実行します。また、パスワードなどのサーバークレデンシャルがあることを確認する必要があります。
SSHもサーバーマシンとクライアントマシンの両方で構成する必要があります。
コマンドの構文は次のとおりです。
$ sshfs [user@]host:[dir] mountpoint [options]
構文から:
- ユーザー –これはサーバー上のユーザー名を指定します。 SSH経由で接続すると、指定したユーザー名のリモートユーザーアカウントのパスワードの入力を求められます。
- ホスト –リモートサーバーのホスト名を指定します。ドメイン名を指定できます(例: www.example.com )。 思い出しやすい、またはIPアドレスです。
- dir –これはリモートディレクトリのパスを指定します。
- マウントポイント :これは、ファイルシステムをマウントする場所を指定します。これはローカルシステム内にあることに注意してください。通常、ファイルシステムは / mntにマウントされます ディレクトリ。
次の画像は、ローカルシステムにマウントするリモートサーバーのIPアドレスとファイルシステムを示しています。
ローカルシステムで、できれば / mntにディレクトリを作成しましょう。 リモートファイルシステムをマウントするディレクトリ:
$ sudo mkdir /mnt/remoteFS
次に、 192.168.100.62にあるリモートLinuxファイルシステムをマウントします。 / home / user ディレクトリ、次のように記述します:
$ sudo sshfs -o allow_other [email protected]:/home/user /mnt/remoteFS/
上記のコマンドを実行すると、コマンド内で指定したリモートシステムユーザーアカウントのパスワードの入力を求められます。
パスワードが受け入れられた後、リモートファイルシステムは、選択したマウントポイント / mnt / remoteFSのローカルシステムにマウントされます。 。 -o allow_other
を使用していることに注意してください 他のユーザーがマウントされたファイルシステムに対して読み取りと書き込みを行えるようにするオプション。
リモートLinuxファイルシステムがマウントされていることを確認するには、次のコマンドを実行します。
$ sudo ls /mnt/remoteFS
上の画像から、ローカルマシンにマウントされているリモートファイルシステムを一覧表示します。を使用して、ローカルシステムでマウントポイントを確認することもできます。
$ df -Th
注意 :ファイルシステムを削除しないでください!! –マウントされたファイルシステムはリモートサーバーでも削除されるため、削除しないでください。これは望ましくありません。
リモートLinuxファイルシステムの永続的なマウント
これまで見てきたマウントは一時的なものです。リモートファイルシステムを永続的にマウントするには、 fstabを編集します。 / etcにあるファイル 次のようなディレクトリ:
$ sudo vim /etc/fstab
ファイルを開いたら、次の行を貼り付けます。セットアップに固有の詳細を使用することを忘れないでください。
sshfs#[email protected]:/home/user/ /mnt/remoteFS fuse.sshfs defaults 0 0
ファイルをマウントするには、次のコマンドを実行します。
$ sudo mount -a
これで、リモートマシンから切断されても、ファイルシステムは以前にマウントした指定のディレクトリにマウントされたままになります。
リモートLinuxファイルシステムのアンマウント
このファイルシステムが完成したとすると、 umountを使用してアンマウントできます。 次のようにコマンドを実行します:
$ sudo umount /mnt/remoteFS
リモートファイルシステムをローカルマシンにマウントし、セキュリティ上の目的でSSHプロトコルを介してこれを実行する方法を学びました。 / etc / fstab を編集して、ファイルシステムをローカルシステムに永続的にマウントする方法も確認しました。 ファイル。