当前位置: 首页 > 面试题库 >

在PATH模式040777的PATH中获得警告“不安全的世界可写目录/ home / chance”,用于rails和gem

云远
2023-03-14
问题内容

我已经尝试过了,但是它没有用,似乎适用于osx。我用rvm,rails 3和ruby 1.9.2重新安装了Ubuntu
10.10。我有一个新鲜的Rails应用程序,但是使用gem或rails会导致以下警告(带有滞后)。

$ rails -v

/home/chance/.rvm/gems/ruby-1.9.2-p180@global/gems/railties-3.0.5/lib/rails/script_rails_loader.rb:11: warning: Insecure world writable dir /home/chance in PATH, mode 040777
/home/chance/.rvm/gems/ruby-1.9.2-p180@global/gems/bundler-1.0.10/lib/bundler/runtime.rb:136: warning: Insecure world writable dir /home/chance in PATH, mode 040777
Rails 3.0.5

$ gem -v

/home/chance/.rvm/rubies/ruby-1.9.2-p180/bin/gem:4: warning: Insecure world writable dir /home/chance in PATH, mode 040777
1.6.2

以防万一,这是我的Gemfile:

source 'http://rubygems.org'

gem 'rails'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
gem 'sqlite3'
gem 'sqlite3-ruby', :require => 'sqlite3'
gem "haml"
gem "formtastic"
gem "will_paginate"
gem "devise"
gem "delayed_job"
gem "whenever"
gem "memcache-client"
gem "capistrano"
group :testing do
  gem "rspec"
  gem "rspec-rails"
  gem "autotest-standalone"
  gem "autotest-rails"
  gem "autotest-growl"
  gem "mocha"
  gem "shoulda"
  gem "factory_girl_rails"
end

group :development do
  gem "cheat"
  gem "bullet"
  gem "ruby-growl"

end

问题答案:

如果您尝试sudo chmod go-w /usr/local/bin使用其他答案,请尝试:

chmod go-w /home/chance

代替。

似乎已发生的事情是,您的主目录(/home/chance)已以某种方式添加到您$PATH的目录中(操作系统在尝试查找要启动的可执行文件时搜索的目录列表),并且其权限也已更改,以便任何人都可以写入它。这可能是一个安全问题,因为其他用户可能会将可执行文件放入此目录中,而您可能会意外启动该可执行文件。Ruby注意到这一点并发出警告。

此命令更改目录的权限,使其不再可写入世界。

在UNIX中,为三个类别(文件所有者(用户),文件组(组)和其他所有人)指定了文件许可权)。(有关Unix文件权限的更多信息,请参见Google)。

因此,分解上面的命令:

chmod -更改文件的“模式”(即其权限)

go -对于组(g)和其他(o)

-w -(减w)删除写入权限

/home/chance -有问题的文件(或目录)

在另一个答案中,引起问题的目录是/usr/local/bin,该目录归root拥有,因此sudo需要更改其权限。/home/chance是您的主目录,该目录由chance可以更改其权限的用户拥有-
sudo不需要。



 类似资料:
  • 我已经使用setup.py打包了我的项目,项目文件夹结构如下所示。 我已经在下面的文件夹中创建了名为“myenv_1”的虚拟环境,/Users/basavarajlamani/Documents/environments/并且我已经在这个虚拟环境中安装了上面的repo。 我在堆栈溢出和互联网上尝试了很多,但没有找到答案。 user.py文件代码 conftest.py守则 如果我运行用户。py文件

  • 我的Java程序()的目录下有一堆文本文件(如ss1.txt、ss2.txt、ss3.txt等)? 我想将我的txt文件移动到一个尚未创建的新目录。我有一个字符串地址为我的所有文件,我想我可以把它们变成路径使用 是否将复制到新目录?

  • 请注意,当我使用[src]=“image”绑定到模板时,例如: 并且使用传递,一切似乎都很好...有人能看出我做错了什么吗?

  • 安全告警即实时监测系统中的安全告警事件,如异常登录等,当发现安全问题后,将会及时通知管理员用户进行处理等。 安全告警即实时监测系统中的安全告警事件,如异常登录等,当发现安全问题后,将会及时通知管理员用户进行处理等。目前仅支持异常登录的安全告警事件,当用户连续登录失败后被锁定将会发送安全告警记录发送给锁定用户以及用户所在域的域管理员和系统管理员。 说明 管理后台下可以看到系统所有的安全告警记录; 域

  • 安全告警即实时监测系统中的安全告警事件,如异常登录等,当发现安全问题后,将会及时通知管理员用户进行处理等。 安全告警 安全告警即实时监测系统中的安全告警事件,如异常登录等,当发现安全问题后,将会及时通知管理员用户进行处理等。