해당 파일의 디렉토리 목록을 가질 수 있도록 mv가 있는 파일을 사용자 폴더에서 웹 서버로 이동하려고 합니다. 이 부분이 작동 중입니다. 그러나 파일에는 -rwxr-xr-x+가 있습니다. +로 인해 이 파일을 다운로드할 수 없는지 확실하지 않습니다. setfacl -bn /path를 사용하여 파일을 제거했지만 여전히 작동하지 않기 때문입니다.
내 문제는 403 오류로 인해 crontab으로 이동한 파일을 디렉터리 목록에서 다운로드할 수 없다는 것입니다. 해당 파일에 chmod 755를 추가하고 apache:apache를 chown했지만 여전히 다운로드할 수 없습니다.
제 질문은 다운로드 권한을 부여하는 방법이 있는지 아니면 다운로드 권한이 있는 사용자 폴더에서 직접 목록을 표시할 수 있는지입니다.
답변1
권한 및 ACL 외에도 파일에는 "보안 레이블"(또는 보안 컨텍스트)이 첨부되어 있을 수 있으며, 가장 일반적으로 CentOS에서 활성화된 SELinux에 의해 사용됩니다. 예를 들어, 파일이 원래 /home/dawid에 생성된 경우 파일이 이동된 위치나 권한에 관계없이 Apache가 액세스할 수 없는 "사용자 개인 파일"이라는 보안 레이블을 갖게 됩니다. .
ls -lZ
파일 및 디렉토리의 현재 레이블이 표시됩니다. 내가 아는 한, 다음을 사용할 수 있습니다.restorecon
시스템이 새 위치에 따라 파일에 올바른 레이블을 다시 적용하도록 하는 명령입니다. cronjob은 파일을 이동한 후 매번 이 명령을 실행해야 합니다.