Questions tagged «sshfs»

sshfs是一个FUSE文件系统,它允许通过SSH在远程系统上挂载目录。它要求在远程系统上安装SFTP子系统(OpenSSH服务器默认情况下,但不包括在较小的SSHd实现中,例如dropbear)。

3
如何在SSHFS中指定密钥?
我有一个问题,无法找到答案。我有两台计算机,都运行Ubuntu Linux 12.04。我已经设置了我的第一台计算机(“家庭”),以便能够使用公共/私有RSA密钥身份验证通过SSH进入第二台计算机(“远程”)。 这不是我的家用计算机上使用密钥身份验证建立的第一个SSH连接,因此我的家用计算机具有多个id_rsa私钥文件(每个私钥文件都用于SSH进入的另一台计算机)。因此,我能够成功SSH只有当我指定一个密钥文件(中ssh,该-i选项),使用ssh username@ipaddress -i path/to/keyfile/id_rsa.2。 效果很好。但是,我也想使用sshfs挂载远程文件系统。虽然ssh似乎可以使用多个键,但是我找不到找到sshfs使用正确私钥(“ id_rsa.2”)的方法。 有没有办法sshfs做到这一点?

5
有什么更好的方法来处理sshfs挂载的服务器断开连接?
我有几个目录通过sshfs挂载。有时我会与服务器断开连接(无法自行配置)。我通常这样挂载目录 sshfs user@server.example.com:/home/user /mnt/example 当服务器断开连接时,sshfs子系统不会卸载/释放目录,而是将其锁定为不可访问。键入时仍可以看到该安装mount。当我打字 ls /mnt/example 该过程被锁定(Ctrl+ c也无济于事)。我因此做 sudo umount -l /mnt/example # find pid of corresponding process: ps aux | grep example.com kill -9 <pid of locked sshfs process> 有没有更好的方法来解决这个问题?显然,sshfs应该执行umount并清理...理想情况下,它将自动重新连接。
58 ssh  mount  sshfs 

3
sshfs挂载,sudo获得许可被拒绝
我正在sshfs通过ssh将带有一些python项目的文件夹安装到我的~/目录中。 $ mkdir -p ~/mount/my-projects $ sshfs user@example.com:/home/user/my-projects ~/mount/my-projects 我可以按预期执行大多数命令: $ ls ~/mount/my-projects some-python-project 但是,如果我尝试使用进行任何操作sudo,它都会失败,并且权限被拒绝: $ sudo ls ~/mount/my-projects ls: cannot access /home/user/mount/my-projects: Permission denied 我实际上要完成的工作是在本地计算机上测试python软件包安装脚本: $ cd ~/mount/my-projects/some-python-project $ sudo python setup.py install
53 ssh  sudo  sshfs 

13
使用sshfs由对等方重置连接
我使用的是保险丝/ sshfs安装架,到目前为止效果良好。现在,我不得不重新安装服务器系统,突然发现经典read: Connection reset by peer错误。我正在使用公共密钥身份验证,并将我的密钥复制到了新安装的系统中。正常的ssh登录可以正常工作。我将日志更改为调试,但是可惜的是这没有给我任何有用的信息: sshd[2077]: debug1: Forked child 2198. sshd[2198]: Set /proc/self/oom_score_adj to 0 sshd[2198]: debug1: rexec start in 5 out 5 newsock 5 pipe 7 sock 8 sshd[2198]: debug1: inetd sockets after dupping: 3, 3 sshd[2198]: Connection from 192.168.1.6 port 47991 sshd[2198]: debug1: Client protocol version 2.0; …
32 ssh  sshfs 

3
/ etc / fstab中的_netdev挂载选项如何工作?
我想知道什么是用于安装推迟到以后的网络接口是向上的确切机制(实现)当人们使用_netdev的选项/etc/fstab? 会systemd改变这种行为吗? 另外,delay_connectsshfs的选项提供了什么_netdev,而没有提供什么呢? 从mount 手册页: _netdev 文件系统驻留在需要网络访问的设备上(用于防止系统尝试在系统上启用网络之前挂载这些文件系统)。 从sshfs 手册页: -o delay_connect 延迟与服务器的连接

2
无法将-o allow_other与sshfs一起使用(在fuse.conf中启用了选项)
我的/etc/fuse.conf档案中有以下内容: # Set the maximum number of FUSE mounts allowed to non-root users. # The default is 1000. # #mount_max = 1000 # Allow non-root users to specify the 'allow_other' or 'allow_root' # mount options. # user_allow_other 但是当我尝试使用该选项挂载远程路径时allow_other: > sshfs name@server:/remote/path /local/path -o allow_other 我得到: fusermount: failed to open /etc/fuse.conf: …
20 ssh  sshfs  fuse 

8
sshfs总是在fstab中要求输入密码吗?
我正在尝试在/ etc / fstab中使用以下行输入sshfs挂载: sshfs#oli@192.168.0.2:/media/usb0 /media/ExtHD fuse defaults,nonempty,allow_other 0 0 这样就可以在启动时挂载该卷。引导后,什么都没有发生,但是当我使用命令sudo mount -a时,总是提示我输入密码。我已经设置了SSH密钥并将它们转移到192.168.0.2的计算机上,并且可以在没有密码的情况下登录到常规ssh。如何阻止保险丝询问密码,以便在启动时自动挂载该卷? 如果有帮助,我正尝试从运行Arch Linux的笔记本电脑连接到运行Debian的家庭服务器。谢谢
20 ssh  fstab  sshfs 

1
sshfs -oworkaround = rename是做什么的?
对于我要学习的操作系统类,我需要运行Freebsd5.4。由于我不想尝试在git发行之前就在bsd的版本上构建git,因此我认为git从Arch 那里使用它会很简洁sshfs。 无论如何,我发现了一种解决方法,建议我sshfs选择该选项-o workaround=rename。 它似乎使人git高兴,但我对刚刚发生的事情感到困惑。 手册页中所有关于解决方法的内容是 fix renaming to existing file 但是我对这意味着什么感到困惑 该选项到底能做什么?
17 sshfs 

2
sshfs中断来自SFTP服务器的符号链接
有谁知道如何通过SSHFS挂载远程SFTP路径,以便可以使用符号链接?当我这样做时,我创建的所有符号链接都指向错误的文件(不是我链接的文件)。我感兴趣的所有符号链接都是相对的(不是绝对的),因此让它们看起来与在远程计算机上完全一样理想。 使用带有默认安装选项的sshfs,我无法在当前目录中创建到另一个文件的符号链接: $ cd /mnt/path/to/sshfs/mount $ ln -s ./test ./test2 $ ls test2 lrwxrwxrwx 1 root webusers 11 Jul 3 09:11 test2 -> /test 这显然是不正确的,因为链接目标位于当前目录(./test)中,但是在这里您可以看到sshfs创建了一个/test不正确的链接-链接目标/mnt/path/to/sshfs/mount/test不是/test。 通过transform_symlinks在挂载sshfs文件系统时添加该选项,可以使用相同的命令获取相对链接,但它仍指向错误的位置: $ cd /mnt/path/to/sshfs/mount $ ln -s ./test ./test2 $ ls test2 lrwxrwxrwx 1 root webusers 11 Jul 3 09:13 test2 -> ../../../test 在这里,我尝试链接到./test当前目录中,但是却获得了../../../test三个级别的链接! 但是,使用命令行SFTP客户端进行连接sftp而不是使用sshfs进行安装是可行的: …
16 mount  symlink  sftp  sshfs 

2
如果fstab安装失败,请不要停止引导
我的fstab中有这行: sshfs#ecarroll@o99:/opt/dealermade/ftp/inc /opt/dealermade/ftp/inc fuse defaults,idmap=user,users 0 0 无论出于什么原因,它都无法正常工作-很好。我如何使其不停止启动顺序。它提示我点击S跳过或M手动修复。如果不是引导卷,我只希望我的卷无法挂载,只不过是日志中的一个条目。
15 linux  mount  fstab  sshfs 

3
sshfs-传输端点未连接
重新安装服务器后,我无法安装它 sshfs root@domain.com:/var /remote_mount fuse: bad mount point `/remote_mount': Transport endpoint is not connected 更新 # ssh root@domain.com The authenticity of host 'domain.com (xxx.xxx.xxx.xxx)' can't be established. ECDSA key fingerprint is 57:b6:bd:76:17:80:73:85:4a:14:8a:6f:dc:fa:fe:7c. Are you sure you want to continue connecting (yes/no)?
15 ssh  sshfs 

7
命令行中使用sshfs的用户名和密码
我正在使用创建一个小的备份脚本sshfs: sshfs backup_user@target_ip:/home /mnt/backup 有没有办法在此命令中包含密码? 还是有其他文件传输解决方案可以包含FTP / SFTP以外的登录密码?
15 linux  ssh  sshfs 

2
远程安装的sshfs上的rsync与本地的rsync之间的区别?
如果我将远程主机(ssh://)作为源/目标运行rsync或使用本地路径通过sshfs共享安装目录,有什么区别吗? 在不使用任何开关的情况下,在安全性或复制速度方面是否可能存在差异,只需使用rsync存档模式和远程主机路径(ssh)。sshfs的安装方式与源和目的地相同(无密码更改,仅默认设置)。

1
如何通过SSHFS使用inotify或命名管道?
谢谢sshfs魔术,我可以使用以下命令从远程服务器挂载主目录 sshfs user@server:/home/user ~/remote 乐观,我想我会设置一个本地inotify-hook上~/remote/logFile(在sshfs安装),因此本地程序可以对远程日志的变化作出反应。 cd ~/remote touch logFile # create remote file inotifywait logFile & # set up local inotify-hook ssh user@server -x touch /home/user/logFile # touch file from remote 什么都没发生。inotifywait除非我touch在本地将文件设为静音。类似地,写入命名管道失败。 为什么是这样?我如何弥合这一差距? 我可以inotifywait在远程上运行,破解文件系统更改序列化策略并维持与本地的连接,但是我基本上是在重新实现SSHFS。它完全杀死了抽象。
12 sshfs  inotify  fifo 

1
如何在配置文件中设置sftp -s子系统选项
sftp命令支持子系统选项(-s),该选项允许远程用户选择远程sftp-server可执行文件,并可以选择在此过程中升级到sudo。 sftp -s "/usr/bin/sudo /usr/libexec/openssh/sftp-server" xxx.yyy.zzz.aaa 此命令遵循〜/ .ssh / config中的ssh客户端选项,允许透明使用pubkey以及自定义端口和用户设置。 但是,它subsystem似乎是特定于sftp的,因此未在配置文件中设置它,因此它似乎必须设置为sftp的命令行选项。 但是,某些工具会包装sftp调用,因此无法设置子系统选项,因此会限制用户访问。 通常是否有一些配置选项文件可用于openssh sftp设置? 是否有一些配置文件可以影响gnome nautilus调用sftp进行文件管理器集成的方式? 更新可能的骇客但功能正常的解决方案是... 因此,事实证明,没有明显的sftp将用于选项的配置文件,因此我最终修改了通用包装脚本,通过将其放置在我的路径中为选定的主机显式添加了该选项。 #!/bin/bash # Generic shell wrapper that performs an operation OPERATION=/usr/bin/sftp args=("$@") #the final arg should contain a hostname of the form [user@]host[:path] case "${args[@]: -1}" in myserver.com) exec $OPERATION -s "/usr/bin/sudo /usr/libexec/openssh/sftp-server" …
11 sudo  openssh  sftp  sshfs 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.