다음을 포함하는 Ruby 스크립트를 실행 중입니다.
unless File.writable?(".")
problems << ["Directory /path/to/htdocs needs write access"]
문제는 내가 설정한 경우에만
chmod 777 /경로/to/htdocs
그것은 작동하지만 실제로는 아무 것도 해서는 안 된다는 것을 읽었습니다.
그렇다면 코드가 777 대신 755로 실행되도록 하려면 이 문제를 어떻게 피할 수 있습니까?
답변1
777을 사용할 필요는 없습니다. 그러나 문제가 무엇인지 알아낼 수 있습니다.
- 777에서는 작동하지만 770에서는 작동하지 않는다면 환경에서 알 수 없는 사용자를 사용하고 있는 것입니다. 알려진 사용자로 변경하면 770을 사용하여 작동합니다.
- 770에서는 작동하고 700에서는 작동하지 않는다면 환경에서 알 수 없는 그룹을 사용하고 있는 것입니다. 동일한 수정: 환경을 알려진 그룹으로 설정합니다.
따라서 apache2, nginx 또는 스크립트를 실행하는 데 사용하는 모든 항목에는 구성에 사용자와 그룹이 설정됩니다. 사용된 사용자 및 그룹을 찾아 스크립트를 해당 사용자 및 그룹으로 변경하면 필요한 것은 700 또는 750뿐입니다.