创建文件夹时EACCES错误

时间:2012-11-13 02:59:13

标签: ruby sinatra capistrano rack file-permissions

我是Linux和Ruby noob,所以请耐心等待。

我正在使用Sinatra编写一个小型Ruby应用程序,并使用Capistrano将其部署到Linux服务器。我能够在本地成功运行应用程序,甚至远程使用rack -p 4567

我的应用程序使用/foo以及此Dir::mkdir目录中的子目录和文件创建目录(让我们称之为/foo)。当我使用守护程序-D选项执行机架时,在创建/foo文件夹时突然出现文件权限错误。

rackup -D -p 4567

我知道这与文件权限有关,但我不知道在这里设置什么。网络推荐chmod,但是如果你是从shell运行的话,对吧?我尝试将07000777传递给Dir::mkdir,但似乎没有帮助。如何授予守护程序权限以创建目录和文件?

1 个答案:

答案 0 :(得分:0)

事实证明,这是因为我在我的应用中没有使用绝对路径。因此,当前工作目录指向ruby所在的/ usr / bin。

使用File.expand_path(File.dirname(__FILE__))获取脚本所在的路径。

相关问题