Answers:
我认为从OpenSSH 5.4p1开始,您可以使用“ -u”选项,例如:
Subsystem sftp /usr/lib/openssh/sftp-server -u 022
从手册页:
-u umask
Sets an explicit umask(2) to be applied to newly-created files
and directories, instead of the user's default mask.
Subsystem sftp /bin/sh -c 'umask 0002; /usr/lib/openssh/sftp-server'
我希望这可以节省别人的挫败感...
如果您使用的是GUI SFTP应用程序,请检查其首选项以设置上载权限。
我已经尝试了上面所有的解决方案,结果发现应用程序只是覆盖了它们。
经过数小时的尝试,应用各种技巧和修复程序后,我找到了合适的解决方案!
有一个SSH修补程序,允许您选择要用于SFTP的umask。您可以在这里下载:http : //sftpfilecontrol.sourceforge.net/
对我来说(OpenSSH_5.2p1 + sftpfilecontrol-v1.3,OpenSSL 0.9.8g 2007年10月19日)工作正常!
引用此消息:
通过在/etc/init.d/ssh中添加“ umask 007”行,我可以正常工作。
Bash使用.profile
交互式登录shell。我认为不算sftp
一个。您可能能够设置的umask中/etc/bash.bashrc
或~/.bashrc
如果上面的提示不工作,或者你想要更多的细粒度控制。