最近有幸通过@DigitalOcean 购买了 VPS。它是运行 Rails + Nginx 和 Unicorn 的 Ubuntu 14.04。
我想使用 Sublime,就像我在本地一样,所以我安装了商业 SFTP 插件。我能够成功远程访问我的 VPS,我什至将 Rails 文件夹下载到本地。但现在事情变得困难了,我需要一些帮助。
如何保持本地文件夹和远程文件夹同步?
通过 Sublime 右键单击文件夹会提供一些选项,例如同步本地 -> 远程
,这似乎是我想要的,只是每次上传都会以失败(权限被拒绝)
.
我应该进行本地到远程同步吗?还是我在这里偏离了基地?如果我在基地,为什么我的许可会被拒绝?
最佳答案
您用于 SFTP 连接的用户可能对您正在处理的文件夹具有读取权限,但不允许写入。 因此,您可以下载远程文件夹,但不再可以在其中写入(上传)。
您可以通过运行 ls -ld /path/to/rails/
来检查这一点并阅读第一部分(例如,它可能是 drwxr--r--
)。如果需要,here you can learn more about file system permissions .
如果是权限问题,您可以通过不同的方式解决它,但您应该考虑每种解决方案如何影响应用程序的安全性和/或功能:
- 您可以更改 Rails 目录的所有者以匹配 Sublime SFTP 用户(请参阅
man chown
),并确保 Rails 用户的所有者拥有该目录的写入权限 (sudo chmod o+w /path/to/rails
) - 您可以使用不同的用户进行 Sublime SFTP 访问(对 Rails 文件夹具有写入权限的用户)
- 您可以将 Sublime SFTP 用户添加到 Rails 文件夹组 (
useradd -G {group-name} username
),然后授予文件夹组写入权限 (sudo chmod g+w /path/to/rails
)
关于ruby-on-rails - Sublime SFTP + Rails + DigitalOcean -- 上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27791884/