Nice programing

PATH, rails 및 gem의 경우 모드 040777에서“Insecure world writable dir / home / chance”경고 받기

nicepro 2020. 10. 8. 18:59
반응형

PATH, rails 및 gem의 경우 모드 040777에서“Insecure world writable dir / home / chance”경고 받기


나는 해봤 있지만 작동하지 않았다 및 OSX이 될 것 같았다. rvm, rails 3 및 ruby ​​1.9.2와 함께 새로운 Ubuntu 10.10을 설치했습니다. 새로운 rails 앱이 있지만 gem 또는 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(OS가 실행할 실행 파일을 찾으려고 할 때 검색하는 디렉토리 목록 )에 추가되었으며 누구나 쓸 수 있도록 권한이 변경되었습니다. 다른 사용자가 실수로 실행할 수있는 실행 파일을이 디렉토리에 넣을 수 있으므로 이는 잠재적 인 보안 문제입니다. Ruby는이를 인식하고 경고를 발행합니다.

이 명령은 디렉토리의 권한을 변경하여 더 이상 쓸 수 없도록합니다.

유닉스에서 파일 권한은 파일 소유자 (사용자), 파일 그룹 (그룹) 및 기타 모든 사람 (기타)의 세 가지 범주에 지정됩니다. (유닉스 파일 권한에 대한 자세한 내용은 Google을 참조하십시오).

따라서 위의 명령을 분해합니다.

chmod -파일의 '모드'변경 (즉, 권한)

go -그룹 (g) 및 기타 (o)

-w -(w 빼기) 쓰기 권한 제거

/home/chance -문제의 파일 (또는 디렉토리)

다른 답변에서 문제를 일으키는 디렉토리는 /usr/local/bin루트가 소유하고 있으므로 sudo권한을 변경해야합니다. 권한을 변경할 수 /home/chance있는 chance사용자 가 소유 한 홈 디렉토리입니다 sudo. 필요 하지 않습니다.


당신이 사용하는 이동-w chmod를 터미널 당신을주는 어떤 경로를.

따라서 오류 메시지의 경로로 / usr / local이 표시되면 :

warning: Insecure world writable dir /usr/local in PATH, mode 040777

당신은 쓰기

chmod go-w /usr/local

내 문제를 해결하기 위해 -R을 사용해야했습니다.

chmod -R go-w /Users/username

(Mac의 경우) 디스크 유틸리티에서 "디스크 권한 복구"옵션을 시도합니다.

enter image description here

아마도 세부 정보 로그의 두 줄은 다음과 같이 말할 것입니다.

Permissions differ on “usr”; should be drwxr-xr-x ; they are drwxrwxrwx.
Repaired “usr”

I'm in a Mac, so /home/username did not work for me. However, when I tried to changing permissions for /User/username, the error persisted.

The thing that got it working was chmod go-w /User/username/.rvm


If your environment does not allow you to fix this error properly (i.e. ruby lives on a network share or some such), see this answer for a way to suppress the error.

참고URL : https://stackoverflow.com/questions/5380671/getting-the-warning-insecure-world-writable-dir-home-chance-in-path-mode-04

반응형