Q&A

files/attach 디렉터리에서 새로 생겨나는 디렉터리가 계속 권한이 이상하게 생성되네요

2019.04.05 15:32
869
0
CMS/프레임워크 Rhymix 1.9
개발 언어 PHP 7.0

사이트 이전하고 chomd를 이용해서 files 폴더 전체에 권한을 777으로 부여했는데 새로운 디렉터리가 생길때마다 777이 적용되지 않은 상태에서 생성되네요.

 

혹시 디렉터리가 생성될때마다 777권한이 적용된 상태로 생성되게 할 수 있나요?

댓글 23

  • 2019.04.05 15:55 #1205238

    퍼미션이 문제가 아니라 소유권이 문제입니다. 폴더를 소유한 계정(FTP 계정)과 파일을 생성하는 계정(PHP를 실행하는 계정)이 다르게 되어 있으면 퍼미션을 777로 해주지 않으면 아무 것도 제대로 작동하지 않는 변태적인 세팅이 나오지만, 폴더를 소유한 계정과 파일을 생성하는 계정이 같으면 퍼미션은 신경쓸 필요조차 없게 됩니다.

     

    호스팅 업체마다 세팅 방식이 다른데, 퍼미션 777이 필요한 곳은 대체로 옛날 방식입니다. 요즘 카페24처럼 그나마 정석대로 운영하는 곳은 처음부터 퍼미션 조정이 필요없도록 세팅되어서 나옵니다. 개인서버라면 세팅한 사람 책임이고요.

     

    files/attach 뿐 아니라 쉬운설치나 캐시파일 정리 등 여러 부분에서 문제가 될 수 있으므로 퍼미션과 소유권은 제대로 정리를 해놓는 것이 좋습니다.

  • 2019.04.05 16:03 #1205245
    ftp 계정과 php 계정이 둘 다 아이디가 동일한데 정작 새로 만들어지는 소유권은 다르게 나오더라구요..

    일단 상세한 답변 감사드립니다!
  • 2019.04.05 16:05 #1205249

    chmod 777 -R files

    후 chown으로 소유권 조정해보세요

  • 2019.04.05 16:40 #1205265
    넵 알겠습니다!
  • 2019.04.05 16:51 #1205269
    확인해보니 지난번에 제가 소유자/그룹을 둘 다 변경을 했었는데도 새로 생성되는 것들은 전부 다르게 나오네요.
  • 2019.04.05 17:16 #1205279
    라이믹스 files 폴더 들어가서 ls -al로 확인해보세요.
    그리고 소유자/그룹이 root인지 확인해보세요.
  • 2019.04.05 17:25 #1205283
    일단 cache, superchach 폴더는 지난번에 한번 삭제시켰더니 새로 생성됐는데
    www-data 로 나오네요.
  • 2019.04.05 17:40 #1205287
    nginx.conf에서 www-data로 설정되어 있는지 확인해보세요.
  • 2019.04.05 18:02 #1205291
    etc/nginx 에서 nginx.conf 말하시는거 맞으시죠?

    user에 www-data 로 되어있어요
  • 2019.04.05 18:11 #1205295
    라이믹스 루트폴더 가서
    chown -R root:root files
  • 2019.04.05 18:18 #1205299
    넵 변경했어요!
    아 그리고 nginx.conf에 www-data로 되어있는건 root로 변경할까요?
  • 2019.04.05 20:01 #1205305
    아니요. 그냥 놔두셔도 됩니다.
  • 2019.04.05 20:07 #1205309
    감사합니당!
  • 2019.04.08 12:16 #1206443
    알려주신 방법대로 변경했는데 새로 생성되는 디렉터리에 소유권은 그대로 www-data로 나타나네요 ㅠㅠ...
  • 2019.04.08 12:57 #1206455

    nginx는 파일을 생성하지 않습니다. 아마 PHP-FPM이 www-data 계정으로 실행되고 있을 거예요.
    /etc/php/버전/fpm/pool.d/www.conf에서 user, group을 지정할 수 있습니다.

    단, 이걸 임의로 바꾸면 세션 같은 부분에서 문제가 생길 수 있으니
    그냥 www-data로 통일하는 것이 나을 수도 있어요.

    그리고 어떤 경우에도 사이트 소스 파일을 root가 소유하거나
    nginx, PHP 등을 root 권한으로 실행하도록 세팅해서는 안 됩니다.

  • 2019.04.08 14:01 #1206478
    아하.. 넵 감사합니다 ㅠㅠ
    어떻게 통일시켜야 할지 감이 도통 안잡히네요...
    종종 업로드 오류를 다들 호소하던데..ㅜㅜ큰일났네요
  • 2019.04.08 14:10 #1206482

    그냥 files 아래의 모든 소유권을 www-data에 맞춰주는 것이 가장 쉬울 것 같습니다.
    소유권이 맞으면 퍼미션은 상관없으니까요.


    chown -R www-data:www-data /XE/설치/경로/files

  • 2019.04.08 14:19 #1206496
    아 그럼 files 폴더에 www-data 소유권만 설정하면 상관없다는 얘기시죠??
  • 2019.04.08 14:22 #1206504
    chown -R www-data:www-data /usr/share/nginx/html/files

    잘못 알려드려서 죄송합니다 -_-..
  • 2019.04.08 14:24 #1206508
    흑흑..ㅠㅠ 그래두 도와주셔서 감사합니다
  • 2019.04.08 14:11 #1206486

    @도토리묵 root 외에는 아무도 건드릴 수 없는 폴더를 만들어 버리면 대체 어쩌자는 겁니까... ㅡ.ㅡ;;

  • 2019.04.08 14:20 #1206500
    -_-;
  • 2019.04.05 16:32 #1205261
    새로 만들어지는 파일의 소유권 = PHP를 실행하는 계정입니다. 만약 다르다면 다른 거예요.