그룹 권한이 있는 폴더에 접근할 수 없습니다

그룹 권한이 있는 폴더에 접근할 수 없습니다

내 웹 서버의 데이터를 보호하기 위해 PHP 포함 파일을 /var/www-includes(서버 루트 디렉터리 /var/www 외부)라는 폴더로 옮겼습니다. 나도 chown root:wwwadminchmod 770폴더를 실행했다. ls -ld폴더에서 실행 하면 설정이 확인됩니다. drwxrwx--- ... root wwwadmin ... www-includeswwwadmin의 구성원인 기본 사용자(adam)에서 폴더로 CD를 이동할 수 있지만 그래픽 파일 브라우저에서는 해당 내용을 볼 수 없습니다. 이유를 아시나요? 편집: 또한 Nano에 포함된 파일을 편집하려고 하면 다음과 같은 오류 메시지가 표시됩니다. Error reading /home/adam/.nano_history: Permission denied 그런 다음 파일의 내용이 열립니다. 이것이 일어난 일과 관련이 있나요?

답변1

당연한 질문일지도 모르지만... 디렉토리 내부 파일에 대한 권한도 변경하셨나요? 즉, chown/chmod 명령을 실행할 때 "-r"(재귀) 플래그를 사용했습니까?

답변2

답변이 아닐 수도 있지만(게시물에 충분한 정보가 포함되어 있지 않기 때문에) 필요한 경우 수정할 수 있습니다. Linux 교육 과정을 진행하면서 권한 문제를 빠르게 찾는 방법을 개발했습니다. 이미 일부 단계를 수행하셨다는 것을 알고 있지만 완전성을 위해 전체 내용을 기록해야 합니다.

  1. 액세스에 사용하려는 사용자로 전환합니다. 다른 일을 하기 전에 이 일을 하십시오.
  2. id현재 UID와 그룹을 확인하려면 이 명령을 사용하세요 . id name-of-the-user디스크의 구성을 확인하는 데 사용됩니다 . 다른 경우에는 로그아웃했다가 다시 로그인한 후 다시 확인하세요.
  3. "ls -l"을 사용하여 대상 디렉터리를 확인하세요. 권한 뒤의 문자를 확인하는 것을 잊지 마세요. 이것이 selinux 컨텍스트임을 나타내는 점이 있거나 Linux ACL이 설정되었음을 나타내는 더하기 기호가 있을 수 있습니다.
  4. "cd"를 사용하여 디렉토리를 입력하십시오.
  5. 일반 파일에 필요한 작업을 수행합니다. touch쓰기 액세스를 확인하는 데 사용되며 , cat읽기 액세스를 확인하는 데 사용됩니다.
  6. 애플리케이션 수준의 모든 것이 예상대로 작동하는지 확인합니다(예: 브라우저를 사용하여 적절한 작업을 수행해야 하는 URL에 액세스, 이전에 실패했던 즐겨 사용하는 편집 도구 사용 등).
  7. 위의 검사 중 하나를 애플리케이션 수준에 추가합니다.

작업이 실패하고 이유를 알 수 없는 경우 로그에서 selinux 경고 또는 유사한 정보를 확인하세요. strace -o strace.log명령줄에 추가한 다음 strace.log를 확인해 볼 수도 있습니다.허가가 거부되었습니다정보. 하지만 이유를 정확히 알지 않는 한 그것은 모두 흑마술입니다.허가가 거부되었습니다.

관련 정보