Raspberry Pi(/home/pi/server_folder
)からローカルフォルダー(/home/my_name/raspberrypi
)にフォルダーを自動マウントしようとしています。空のrsaキーを設定するときにsshfs(fstabの自動マウント)でこれを行うことができますが、123などの実際のキーを使用しようとすると、RaspberryPiファイルシステムがマウントされません。パスフレーズを指定する必要があるため、これは非常に明白ですが、最初に/home/my_name/raspberrypi
にアクセスしようとしたときにパスフレーズを要求する方法はありますか、それとも同様のことをしますか?誰かが私のラップトップを手に入れても、rsaキーを空白のままにすると、RaspberryPiにアクセスするためにパスワードなどを入力する必要がないためです。 autofs
とautosshfs
を調べましたが、autosshfsがダウンロードされず、autofsが実際のrsaキーを使用してマウントする方法を説明していません(ガイドが見つかりません)方法について)。最新バージョンのArchLinuxを使用しています。 fstabエントリは次のとおりです。
[email protected]:/home/pi/server_folder/ /home/my_name/raspberrypi Fuse.sshfs noauto,x-systemd.automount,_netdev,users,idmap=user,IdentityFile=/home/my_name/.ssh/id_rsa,allow_other,reconnect 0 0
これはArchwikiが行うように言っていることです(しかし、あまりよく説明されていません)。
SSHFSはFuseに基づいているため、ルート以外のオートマウンターを使用する方が簡単です。 afuse を使用します。これは、設計された目的とほぼ同じです。 1回限りのセットアップ:
mkdir ~/.afuse
ln -s .afuse/raspberrypi/server_folder ~/raspberrypi
オートマウンターを起動するには:
afuse -o mount_template="sshfs %r:/ %m" -o unmount_template="fusermount -u -z %m" ~/.afuse
afuse
を開始するときに、SSH_AUTH_SOCK
変数が設定されていることを確認してください。つまり、ssh-agent
の後に開始する必要があります。 ssh-add
を実行してキーをSSHエージェントにロードすると、SSHFSディレクトリにアクセスできるようになります。
Gillesの正解を拡張し、「 afuse の(プロファイル)スタートアップ(スクリプト)への統合」に関する彼の回答へのコメントで取り上げられたいくつかのさらなる考えに対処するには:
オンデマンドを有効にできます sshfs マウントを有効にする スクリプト呼び出しを例に追加します。~/.profile
または ユーザーレベルのsystemdサービスユニットを作成 。
私は systemdanswer を支持します:~/.config/systemd/user/afuse.service
[Unit]
Description="SSHFS via Afuse automounter"
AssertPathExists=%h/scp/
AssertFileIsExecutable=/usr/bin/afuse
AssertFileIsExecutable=/usr/bin/sshfs
[Service]
Type=forking
WorkingDirectory=%h/scp
ExecStart=/usr/bin/afuse \
-o mount_template="sshfs -o ServerAliveInterval=10 -o reconnect %%r:/ %%m" \
-o unmount_template="fusermount -u -z %%m" .
Restart=always
PrivateTmp=true
#NoNewPrivileges=true
#Environment=
[Install]
WantedBy=default.target