web-dev-qa-db-ja.com

mount -aなしでfstabを使用してsshfsを自動マウント

以下のfstab行(読みやすいように改行)を検討してください。

sshfs#[email protected]:/home/user/ 
/home/user/Server/ 
Fuse    
auto,user,_netdev,reconnect,uid=1000,gid=1000,IdentityFile=/home/user/.ssh/id_rsa,idmap=user,allow_other  
0 

正常に動作しますが、再起動するたびにmount -aを使用してサーバーをマウントする必要があります(またはThunarの適切なアイコンをクリックしてマウントします)。

ブート時に直接sshディレクトリをマウントすることは可能ですか?

Xubuntu 13.10を使用しています

25
user21886

/ etc/fstabファイルで、ブート時にsshfs共有をマウントするための正しい構文は次のとおりです。

 [email protected]_OR_IP:/REMOTE/DIRECTORY  /LOCAL/MOUNTPOINT  Fuse.sshfs _netdev,user,idmap=user,transform_symlinks,identityfile=/home/USERNAME/.ssh/id_rsa,allow_other,default_permissions,uid=USER_ID_N,gid=USER_GID_N 0 0

これは、含まれている命令のnon-systemdディストリビューションへの適応 here です。代わりにsystemdディストリビューション(Arch、Fedora、OpenSUSEなど)を使用している場合、適切な手順は次のとおりです。

[email protected]_OR_IP:/REMOTE/DIRECTORY  /LOCAL/MOUNTPOINT  Fuse.sshfs x-systemd.automount,_netdev,user,idmap=user,transform_symlinks,identityfile=/home/USERNAME/.ssh/id_rsa,allow_other,default_permissions,uid=USER_ID_N,gid=USER_GID_N 0 0
18
MariusMatutiae

delay_connectオプションを使用してみてください。

完全な/ etc/fstab行:

[email protected]:/REMOTE/ /LOCAL/ Fuse.sshfs delay_connect,_netdev,user,idmap=user,transform_symlinks,identityfile=/home/USERNAME/.ssh/id_rsa,allow_other,default_permissions,uid=USER_ID_N,gid=USER_GID_N 0 0
4
DmitrySandalov

これらのdelay_connect_netdev、...は正しいですが、/ etc/fstabが実行されているときに、その小さな時間枠内(またはその前)にネットワークを微調整しない限り機能しません処理されました。処理が終わり、ネットワーキングが後で始まる場合は、mount -a(または友達)を使用する必要があります。

ほとんどの場合(そして私も)、network-managerがデフォルトでネットワークを起動するログイン後になるため、問題が発生しました。起動時に早く表示されるように調整できます。私が正しく覚えている場合は、接続プロパティダイアログのオプションAvailable to all usersを確認するだけです(または、コマンドラインを使用する場合は、/etc/NetworkManager/system-connectionsに手動で接続を作成します)。

2
SkyRaT

この buntuヘルプページ と、Debian 9での私の試みに基づいて、私はそれを機能させ、このfstabエントリで適切なファイル権限を持っています。

sshfs#[email protected]:/remote/path /local/path Fuse delay_connect,defaults,idmap=user,IdentityFile=/local/path/to/privatekey.pem,port=22,uid=1001,gid=1002,allow_other 0 0

delay_connectは、ネットワークインターフェイスが起動する前にfstabがリモートフォルダをマウントしないようにします。

portuidgidは、地域のニーズに合わせて変更できます。私のuid/gidを理解するには、単に$ id正しいユーザーでログインした場合。

allow_otherは、他のユーザー/グループがマウントされたディレクトリにアクセスできるようにするためのものです。右でも/local/path権限(例:777)、別のユーザー(sshfsをマウントしているユーザーとは別のユーザー)がマウントされたディレクトリにアクセスする場合に必要です。

他のオプションは sshfs manpage にあります

0
kheraud