質問があります。私のサーバーにSSHサーバーを追加しました。 /etc/fstab.conf に次の行を追加しました。
sshfs#[email protected]:/home/hd03_00_backup_server/ /mnt/server_backup fuse.sshfs IdentityFile=/root/.ssh/id_rsa_backup_server_home,port=23,rw 0 0
しかし、注文は
mount -a
まだパスワードを聞いています。注文する:
sudo sshfs -p 23 [email protected]:/home/ /mnt/server_backup -o IdentityFile=/root/.ssh/id_rsa_backup_server_home
接続してインストールするためにパスワードは必要ありません。
答え1
これは直接的な答えではありませんが、systemdインストールデバイスを使用して同じ結果を得る方法は次のとおりです。
$ cat ~/.config/systemd/user/home-stew-shared.mount
[Mount]
What=%[email protected]:
Where=%h/shared
Type=fuse.sshfs
systemd --user
所有しているユーザーがログインしたときにのみインストールされ、そのユーザーがログアウトしたときに削除されるようにバスに配置しました。私は各ユーザーにこれらのいずれかを提供し、ログインしている人は誰でも自分のホームディレクトリにプライベートマウントを取得できます。 、UID
はすべて暗黙的GID
ですが、IdentityFile
オプションで次の行を追加できます。
Options=umask=0022,uid=%U,gid=%G,IdentityFile=%h/.ssh/id_rsa_backup_server_home
--system
すべてをしたくない場合は、root
バス上でこのプログラムを実行することもできます。
私の答えは上記です。これはあなたの質問に直接答えようとしています。確かに言うことはできませんが、上記のシステムソリューションが気に入らない場合は、少なくとも問題を解決するときに別の方向に考えるのに役立つことを願っています。
ヘルパーmount
として活用できると思います。mount.fuse.sshfs
$ dpkg -S /usr/sbin/mount.fuse.sshfs
sshfs: /usr/sbin/mount.fuse.sshfs
$ ls -l $_
lrwxrwxrwx 1 root root 12 Jul 7 2021 /usr/sbin/mount.fuse.sshfs -> ../bin/sshfs
これはsshfs
Debian パッケージで提供されます。このヘルパーがない場合は、ヘルパーを作成して接続できます/usr/bin/sshfs
。
ln -s /usr/bin/sshfs /usr/local/sbin/mount.fuse.sshfs
私はこれの専門家ではありませんが、/etc/fstab
読んでman mount
次のことを見つけました。
mount および umount(8) プロシージャはファイルシステムのサブタイプをサポートします。サブタイプは「.subtype」サフィックスとして定義されます。たとえば、「fuse.sshfs」です。マウントソースにプレフィックスを追加する代わりに、サブタイプ表記を使用することをお勧めします(例:「sshfs#example.com」は廃止されました。)。
サポートの中断は、行の先頭に問題があることを示しますfstab
。サポートされていない標準の組み合わせを使用している可能性があります。
sshfs#[email protected]:/remote /local fuse ... <-- Deprecated syntax
[email protected]:/remote /local fuse.sshfs ... <-- New syntax
sshfs#[email protected]:/remote /local fuse.sshfs ... <-- Your syntax
最後の考えはsshfs
港です。あなたはオプションの1つとして/etc/fstab
定義します。port=23
ではsshfs
を使用します-p 23
。あなたならどうなりますか-o IdentityFile=...,port=23
?