파일이 누락된 경우 감지

파일이 누락된 경우 감지

파일 서버에서 CENT OS 7을 사용하고 있습니다. 해당 파일 서버에는 회사의 응용 프로그램에서 파일을 저장하는 데 사용되는 디렉터리가 있습니다. 이 디렉터리를 삭제하면 애플리케이션이 제대로 작동하지 않습니다. 이 문제는 또한 매우 산발적입니다. 2~3개월마다 발생합니다. 권한 문제일 수 있나요? 나는 두 가지 다른 권한 체계를 사용하여 아래에 나열했습니다. 첫 번째 것을 사용하면 디렉토리가 두 번 삭제되었습니다. 두 번째 것이 사용되었지만 디렉터리가 삭제되지 않았습니다. 이는 문제가 해결되었음을 의미할 수 있습니다.

다음 권한이 추가되었습니다.

chmod 750 /Bac/BacFileStore/directory
chmod -R 0777 /Bac/bacFileStore/directory

답변1

디렉토리의 권한을 변경해도 해당 디렉토리는 삭제되지 않습니다. 일부 프로그램이나 사람은 이를 명시적으로 제거해야 합니다. 따라서 귀하의 질문에 대한 대답은 "아니요"입니다. 이는 권한 문제가 아닙니다.

일부 "사악한" 사람이 디렉토리 소유자의 비밀번호를 알고 있는 경우 디렉토리가 삭제될 수 있습니다. 더 나쁜 점은 새로운 권한 "0777"을 사용하면 파일 서버에 액세스할 수 있는 사람은 누구나 디렉터리에 있는 모든 파일을 삭제할 수 있다는 것입니다 /Bac/bacFileStore/directory. 이대로 방치하면 안 될 것 같습니다. "750" 또는 "755"(누구나 디렉토리에 액세스할 수 있는 경우 후자)가 더 나은 선택입니다.

답변2

Centos에는 Gnu가 있으므로 chmod기호 모드를 사용할 수 있습니다. 이것은 이해하기 더 쉽습니다. chmod -R ugo-w /Bac/bacFileStore/directory(사용자, 그룹 및 기타 사용자에 대한 쓰기 권한을 제거합니다).

소유자와 루트 사용자(및 적절한 기능을 가진 사람)는 모드를 변경하고 삭제할 수 있습니다. 파일 삭제 권한은 포함된 디렉터리에 쓸 수 있는 권한입니다(여러 사용자가 디렉터리에 쓸 수 있는 경우 고정 비트 참조).

따라서 파일과 해당 파일이 포함된 디렉터리의 소유권과 권한을 변경해야 할 수도 있습니다.

파일이 누락된 경우 감지

이를 사용하여 inotify-wait파일이 누락된 시기를 감지할 수 있습니다. 파일이 변경되면 깨어나도록 계속 실행해야 합니다.

답변3

777 권한을 설정하면 삭제를 포함하여 파일 서버에 액세스하는 모든 사람에게 읽기/쓰기 권한이 부여됩니다. 이는 아마도 파일 서버를 설정하려는 방법일 것입니다. 그러나 여기에도 신청서를 작성하는 데 문제가 있을 수 있습니다. 단지 파일 서버에 파일을 쓰는 것입니까, 아니면 애플리케이션이 여기에서 다른 작업을 수행하는 것입니까? 그렇다면 파일 서버에서 사용할 수 없는 디렉터리를 사용하도록 애플리케이션을 구성하는 것이 좋습니다. 누군가가 귀하의 응용 프로그램에서 사용 중인 파일을 삭제하면 문제가 발생합니다. 또한 애플리케이션에서 사용 중인 삭제된 파일은 해당 파일의 처리가 완료될 때까지 실제로 삭제되지 않습니다.

관련 정보