回答:
たくさんのものを使用できますが、その中で人気のあるオプションは次のとおりです。
セットアップが簡単なため、この順序で並べる必要があると思います(上:最も簡単)
SSHFS
FUSEを使用すると、sshを介してリモートファイルシステムをマウントできます。クリストファーがすでに非常によく説明しているので、その方法については説明しません。ファイルを自動的にマウントするには、もう少し作業が必要になることに注意してください。
サンバ
WindowsおよびUnixマシンを使用して、リモートフォルダにアクセスできます。それがあなたにとって大したことではないなら、あなたはおそらくそれから利益を得ないでしょう。ただし、initに自動マウントするのは簡単です(オプション列/etc/fstab
を含め、に適切な値を入力するだけusername=<your-samba-username>,password=<your-samba-password>
です)。
NFS
IP(ユーザー名なし=高速、非敵対的 LAN 内でのみ使用)またはKerberosチケット(たった2つのラズベリーには痛みがありますが、企業環境では便利です)を介して認証できます。
カーネルモードをサポートしているため、sshfsよりも高速に実行されます。また、暗号化が実行されないため、スループットが向上します。小さなRaspberry ARMの場合、違いが生じる可能性があります。
その上、ネットワークを信頼するだけでセットアップするのはそれほど苦痛ではありません。あなたには自動マウントをサポートしている/etc/fstab
、あまりにも、あなたは、(ユーザー名やパスワードなど)の機密データを配置する必要はありません、そして、あなたのユーザ名を持っている場合syncrhronized(同じ/etc/passwd
と/etc/group
ファイル)を使用すると、通常のPOSIXアクセス権のツールセットを使用することができます(chown
、chgrp
およびchmod
)。
arisu:/mnt/ytra /mnt/ytra nfs soft,ro,intr 0 2
stat()
返品など、nlink
CIFSが認識していないカウントに依存するものなどです。SSHFSはファイルサーバーでコンテキストスイッチを非常に高く実行し、社内プログラムで必要なロックをサポートしていなかったため、あまり感心していませんでした。だから、NFS
SSHFSは素晴らしいです。FUSEを使用して、リモートディレクトリをローカルディレクトリにマウントできます。以下#
のコマンドは、コマンドがとして実行されたことを示すために使用しますが、通常のユーザーとしての実行root
を$
示します。FUSEソフトウェアが必要なため、最初にFUSEソフトウェアが使用可能で実行中であることを確認してください。
以下のlsmod
およびgrep
コマンドのいずれかを使用すると、ソフトウェアがロードされ、使用できる状態になっているかどうかを確認できます。いずれかのコマンドの結果は、それfuse
が利用可能であることを示しています。
# lsmod | grep fuse
$ grep -i fuse /lib/modules/$(uname -r)/modules.builtin
どちらのコマンドでも結果が得られない場合は、再起動せずにカーネルモジュールをロードして、modprobe
もう一度確認してください。
# modprobe fuse
# lsmod fuse
モジュールのロードに失敗した場合は、でソフトウェアをインストールしてくださいapt-get
。
# apt-get install fuse
インストール後にもう一度確認してください。
# modprobe fuse
# lsmod fuse
続行する前に、FUSEをインストールして実行する必要があります。
の権限を確認してください/dev/fuse
。アクセス許可は、通常のユーザーアカウントに読み取りおよび書き込みアクセスを提供する必要があります。通常のユーザーアカウントに既に読み取りおよび書き込み権限があると判断した場合は、この部分をスキップしてください/dev/fuse
。
# ls -l /dev/fuse
出力は次のいずれかになります。
crw-rw-rw- 1 root root (all users can read/write)
crw------- 1 root fuse (only root can read/write)
crw-rw---- 1 root fuse (root and members of fuse group can read/write)
2013年に、Debian /dev/fuse
は0600
権限、所有者root
、グループ所有者で作成しましたfuse
。以下に示すように、ヒューズグループにデバイスを使用させ、通常のユーザーアカウントをグループに追加する必要がありました。
# usermod -aG fuse $your_regular_user_account
# chmod 0660 /dev/fuse
新しいグループメンバーシップが必要な場合は、ログアウトして再度ログインし、グループのメンバーになります。
次に、ssh
次のように両側にインストールします。
# apt-get install ssh
この回答は、Debianのために書かれましたが、Ubuntuの18.x上の少なくとも、openssh-client
、fuse
、およびその他のいくつかのパッケージは、Ubuntuのの一部であるsshfs
パッケージ。sshfs
ソフトウェアは、クライアント側で必要とされるが、必要に応じて、それは両側に設置することができます。パッケージの依存関係の1つはfuse
ですが、インストーラーは既にインストールされているソフトウェアをスキップします。
# Ubuntu 18.x:
# apt-get install sshfs
fuse
し、ssh
利用できる、およびデバイスを使用する許可を得て、/dev/fuse
リモート・ファイル・システムのマウントポイントを作成します。そして、そのリモートファイルシステムを次のようにローカルにマウントします。
# mkdir /mnt/$directory_name
# chown $your_user:$group /mnt/$directory_name/
$ sshfs $remote_username@$remote_server_name: /mnt/$directory_name/
ホーム以外のディレクトリをマウントするには、コロンの後に指定します。
$ sshfs $remote_username@$remote_server_name:/remote/directory /mnt/$directory_name
マウント解除するには、を使用しますfusermount
。
fusermount -u /mnt/$directory_name
Windowsマシンをお持ちの場合は、win-sshfsで SSHFSを使用することもできます。このソフトウェアはSSHFSで「ドライブをマップ」するため、リモートディレクトリを含むWindowsドライブ文字を使用できます。
yum install fuse-sshfs.x86_64
)を使おうとしましたが、私がやったとき、私のmodprobe fuse
ためにヒューズグループを作成しませんでした。だから私がやったときusermod -a -G fuse [your-user]
、私は得たusermod: group 'fuse' does not exist
。お手伝いできますか?事前に感謝
lsmod | grep fuse
は結果を返しますが/dev/fuse
、ルートが所有しているmがあります。あなたは私がグループなしで大丈夫だと言っている?
crw-rw-rw-. 1 root root 10, 229 Nov 21 15:32 /dev/fuse