freezner

[linux] 퍼미션 777로 설정해도 업로드 안되는 문제 해결방법

작업한 소스를 실서버에 올리고 업로드를 테스트하는데.. 에러를 뿜었습니다.

mkdir(): Permission denied

업로드 디렉토리 안에 새로운 디렉토리 생성을 시도하자 퍼미션 에러를 낸겁니다. 그런데 업로드 디렉토리의 퍼미션은 이미 777.. (더 이상 줄 권한이 없다.)

chmod, chown으로도 해결이 안되었기에 로그를 뒤지기 시작했습니다. 아파치 로그도 확인 해봤으나 특별한 로그는 없었습니다. 그런데 로그 디렉토리에서 업로드 시도때마다 용량과 date가 변하고 있는 message 로그 파일을 발견했습니다.

message 로그라면 selinux…

외부에서 접근하는 데이터를 selinux가 막은 것이 었습니다. 그 생각을 못하고 웹소스와 퍼미션만 가지고 삽질을 했네요.

보안에 좋다고는 하지만 selinux의 활성화로 많은 제약이 생기고 관리가 만만치 않습니다. 이럴땐 지긋이 selinux를 OFF..

# vim /etc/selinux/config 명령으로 config 파일을 수정합니다.
SELINUX=enforcing 이 부분을  SELINUX=disabled 로 값을 변경해줍니다. 그리고 저장 후 종료..
이 설정은 시스템이 재부팅되면 적용됩니다.

하지만 당장 시스템을 재부팅하기 힘든 상황이라면 임시설정을 해줍니다.
# setenforce 0

이 명령은 현재 세션에서 selinux를 비활성하는 명령입니다. 즉, 시스템이 재부팅되면 /etc/selinux/config의 설정으로 다시 로드 됩니다. disabled로 설정 했으니 다음 재부팅에도 selinux가 꺼진 상태가 되겠죠~

Exit mobile version