重启后,fstab 中通过 fuse.sshfs 驱动器未挂载

重启后,fstab 中通过 fuse.sshfs 驱动器未挂载

使用 Ubuntu 22.04。我的 fstab 条目:

some_user@some_storagebox.com:~/somedir /mnt/volume fuse.sshfs defaults,allow_other,reconnect,_netdev,users,ServerAliveInterval=15,identityfile=/root/.ssh/id_rsa,uid=101,gid=101,ServerAliveCountMax=3 0 0

第一个有趣的事情是,我尝试通过以下方式挂载卷来测试 fstab 行是否有效:

mount /mnt/volume-1

存储需要输入密码,尽管我使用的是 rsa 密钥

身份文件

范围。

重启后卷无法挂载。我不知道为什么会发生这种情况。

答案1

如果您尝试使用 fstab 挂载 sshfs 卷,并且即使您使用带有参数的 rsa 密钥,系统也会提示您输入密码identityfile

一种可能的解决方案是使用sshpassfstab 条目中的命令。该参数如下所示,并sshpass -f /root/sftp.pass ssh在连接时执行:

ssh_command=sshpass\\040-f\\040/root/sftp.pass\\040ssh

例如,要以用户名和密码 secret 连接到端口 2222 上的服务器 sftp.example.com,您的 fstab 条目可能如下所示:

username@server:/remote/directory /local/mountpoint fuse.sshfs defaults,_netdev,user,idmap=user,uid=1000,gid=1000,allow_other,reconnect,ssh_command=sshpass\\040-f\\040/root/sftp.pass\\040ssh,port=2222 0 0

您还可以查看此内容询问 Ubuntu 帖子它解释了如何通过带有密码验证的 fstab 自动挂载 sshfs 卷。

我希望这有帮助

相关内容