Rails 控制台访问权限被拒绝 @ rb_sysopen 错误

发布于 2025-01-11 10:50:52 字数 147 浏览 0 评论 0原文

当我尝试使用 Rails c 访问 Rails 控制台时,终端给出了此错误 :权限被拒绝@ rb_sysopen - /Users/yannherveeaniman/.irb_history (Errno::EACCES)

如何解决此问题?

When I try to access rails console with rails c, terminal gives me this error
: Permission denied @ rb_sysopen - /Users/yannherveeaniman/.irb_history (Errno::EACCES)

How can I solve this problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

书间行客 2025-01-18 10:50:52

看起来像是权限问题。我找到了2个解决方案。我希望其中之一能够解决您的问题。

  1. 查看错误,似乎无法访问。我们可以尝试通过以下命令授予访问权限

    sudo chmod -R 777 /Users/yannherveeaniman/.irb_history(授予对文件的所有访问权限)

    或者

    sudo chmod -R 777 /Users/yannherveeaniman(授予对您的文件夹的所有访问权限)

  2. 创建/编辑 ~/.irbrc

     需要 'irb/ext/save-history'
     IRB.conf[:SAVE_HISTORY] = 10000
     IRB.conf[:HISTORY_FILE] = "#{ENV['HOME']}/.irb-history"
    

    制作人员 - https://stackoverflow.com/a/52360668/18073270

感谢您接触这个美丽的平台。希望您的问题能够得到解决。

问候。

It Looks like permission issue. I found 2 solutions. I hope one of them will solve your issue.

  1. Looking at the error it seems like it is unable to access. We can try to give access by below command

    sudo chmod -R 777 /Users/yannherveeaniman/.irb_history (giving all access to file)

    OR

    sudo chmod -R 777 /Users/yannherveeaniman (giving all access to your folder)

  2. create/edit ~/.irbrc

     require 'irb/ext/save-history'
     IRB.conf[:SAVE_HISTORY] = 10000
     IRB.conf[:HISTORY_FILE] = "#{ENV['HOME']}/.irb-history"
    

    credits - https://stackoverflow.com/a/52360668/18073270

Thank You for reaching out to this beautiful platform. Hopefully your issues will be resolved.

Regards.

芸娘子的小脾气 2025-01-18 10:50:52

'write':权限被拒绝@ rb_sysopen - tmp/sockets/puma.state (Errno::EACCES)

由于名为 puma 的 gem,我遇到了类似的问题。每当我运行“rails s”来启动 Rails 服务器时,我得到
“写入”:权限被拒绝@ rb_sysopen - tmp/sockets/puma.state (Errno::EACCES)
所以解决方案非常先进,首先我检查了导致问题“tmp/sockets/puma.rb”的文件的权限,

ls -la ./tmp/sockets/
->: -rw-r--r-- 1 root   root     78 فروری  23 15:13 puma.state

因此它在用户级别具有写入权限。
如果没有尝试为其分配写权限,但仅限于用户级别。

然后我尝试将所有权更改为当前用户。

sudo chown $(whoami) ./tmp/sockets/puma.state

这就是我的技巧。

在尝试此操作之前,请确保几件事。

  • rvm 已安装并正确配置。
  • 仅安装了一个版本的捆绑程序。
  • 确保安装 gems 时不要使用 sudo 来安装
    系统级红宝石宝石。
  • 确保运行“rvm use(您使用的 ruby​​ 版本)”,尽管 rvm
    从 .ruby-version 文件中自动选择 ruby​​ 版本。但让
    通过运行“ruby -v”确保您使用的是正确的当前 ruby​​ 版本。

'write': Permission denied @ rb_sysopen - tmp/sockets/puma.state (Errno::EACCES)

I faced a similar issue due to a gem called puma. whenever I run "rails s" to start rails server I got
'write': Permission denied @ rb_sysopen - tmp/sockets/puma.state (Errno::EACCES)
so the solution was pretty forward first of all i checked the permissions for the file causing issue 'tmp/sockets/puma.rb'

ls -la ./tmp/sockets/
->: -rw-r--r-- 1 root   root     78 فروری  23 15:13 puma.state

so it had a write permission at user level.
if not try to assign it write permission but only at user level.

Then I try to change ownership to current user.

sudo chown $(whoami) ./tmp/sockets/puma.state

and that was my hack.

Before trying this make sure a few things.

  • rvm is installed and configures correctly.
  • Only one version of bundler is installed.
  • Make sure to install gems by not using sudo that will install the
    gems at system level ruby.
  • Make sure to run 'rvm use (ruby version you using)' although rvm
    picks automatically ruby version from .ruby-version file. But make
    sure that you are using correct current ruby version by running 'ruby -v'.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文