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의 경우) 디스크 유틸리티에서 "디스크 권한 복구"옵션을 시도합니다.
아마도 세부 정보 로그의 두 줄은 다음과 같이 말할 것입니다.
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.
'Nice programing' 카테고리의 다른 글
Scala에서 => 및 () => 의미 (0) | 2020.10.08 |
---|---|
Android, 장치를 회전 할 때 활동을 파괴하지 않는 방법은 무엇입니까? (0) | 2020.10.08 |
파이썬 세트에서 '+'를 이해하지 못하는 이유는 무엇입니까? (0) | 2020.10.08 |
jquery.animate ()를 사용한 CSS 회전 크로스 브라우저 (0) | 2020.10.08 |
WebBrowser 컨트롤에 Javascript를 삽입하는 방법은 무엇입니까? (0) | 2020.10.08 |