【问题标题】:Sublime SFTP + Rails + DigitalOcean -- Uploading FilesSublime SFTP + Rails + DigitalOcean -- 上传文件
【发布时间】:2015-03-03 17:16:56
【问题描述】:

最近有幸通过@DigitalOcean 购买了一个 VPS。这是一个运行 Rails + Nginx 和 Unicorn 的 Ubuntu 14.04。

我想使用 Sublime,就像我在本地一样,所以我安装了商业 SFTP 插件。我能够成功地远程访问我的 VPS,甚至在本地下载了 rails 文件夹。现在是困难的地方,我需要一些帮助。

如何保持本地文件夹和远程文件夹同步?

通过 Sublime 右键单击​​该文件夹会提供一些选项,例如 sync Local -> Remote,这似乎是我想要的,除了每次上传都以 failure (Permission denied) 结尾。

我应该在本地到远程同步吗?还是我不在这儿?如果我在基地,为什么我的权限被拒绝?

【问题讨论】:

  • 通常您使用版本控制系统(例如 git)来更新服务器上的文件
  • rsync 是 Unix 世界中常用的保持目录同步的工具(它也可用于 Windows)。它可以轻松地通过 SSH 隧道运行,因此信息可以加密传输。
  • rsync 是否意味着与 Git 结合使用?还是两者之一?

标签: ruby-on-rails ruby nginx sftp digital-ocean


【解决方案1】:

您用于 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)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-24
    • 1970-01-01
    • 2014-12-29
    • 1970-01-01
    • 2012-03-23
    • 1970-01-01
    相关资源
    最近更新 更多