Fedora에서는 파일을 삭제할 수 없습니다

Fedora에서는 파일을 삭제할 수 없습니다

다음 권한을 가진 파일이 있습니다.

-rwSr-s---. 1 1634630331 1818884080 118784 Jun 29 1970 DailyUpdateClass.class

루트 로그인을 사용하여 파일을 삭제하려고 하면 오류가 발생합니다.

rm: cannot remove ‘model/DailyUpdateClass.class’: Operation not permitted

소유권을 변경하거나 다른 작업을 수행할 수 없습니다.

에 올렸어요스택 오버플로몇 가지를 시도했지만 지금까지 아무것도 도움이 되지 않았습니다.

누군가 Unix Stack Exchange에서 이것을 시도해 보라고 제안하여 도움을 요청했습니다.

답변1

다양한 가능성:

  • 파일 권한 행의 후행 점은 루트 재정의를 방지할 수 있는 -rwSr-s---.확장 권한, SE Linux(확인 포함 ls -lZ) 또는 ACL 스타일 권한(확인 포함 )을 나타냅니다.getfacl
  • 파일이 변경 불가능하게 되었습니다 chattr. 파일 시스템 속성을 확인하세요.lsattr
  • 파일은 root_squash 원격 루트 사용자를 권한이 없는 계정에 다시 매핑하는 옵션을 사용하여 내보낸 NFS 파일 시스템에 있습니다. 실제 파일 소유자로 명령을 실행하십시오 rm.sudo -u <file_owner> rm filename
  • 파일이 읽기 전용 파일 시스템에 있습니다. mount다음 명령을 사용하여 확인 하거나/proc/mounts
  • procIIRC에서는 커널 설정(예: 파일 시스템의 파일 ) 을 나타내는 특수 장치 항목을 삭제할 수 없습니다 sysfs. 그렇죠?

답변2

파일에 immutable확장된 속성 세트가 있으므로 삭제할 수 없습니다.

lsattr파일의 확장된 속성을 반환합니다:

$ lsattr model/DailyUpdateClass.class
-u-Diad--j------ DailyUpdateClass.class

-u-Diad--j모든 문자( ) 를 해독해야 합니다 .

의 매뉴얼 페이지에서 lsattr보라고 알려줄 것입니다.매뉴얼 페이지for chattr는 속성 설명을 확장하는 데 사용됩니다. 여기에 관련 항목을 나열했습니다.

u이 속성이 설정된 파일이 삭제되면 해당 내용이 저장됩니다. 이를 통해 사용자는 삭제 취소를 요청할 수 있습니다. 참고: 이 문서 끝에 있는 버그 및 제한 사항 섹션을 꼭 읽어보세요.

속성이 설정된 디렉터리가 수정되면 변경 사항이 디스크에 동기적으로 기록됩니다. 이는 파일 하위 집합에 탑재 옵션이 적용되는 D것과 같습니다 .dirsync

하나는 D약간 걱정스럽습니다. 분명히 디렉토리에만 해당되지만 파일이 있습니다.

이 속성을 가진 파일은 i수정할 수 없습니다. 삭제하거나 이름을 바꿀 수 없고, 파일에 대한 링크를 만들 수 없으며, 파일에 데이터를 쓸 수 없습니다. 수퍼유저 또는 CAP_LINUX_IMMUTABLE 기능이 있는 프로세스만 이 속성을 설정하거나 지울 수 있습니다.

이 속성이 설정된 파일은 a추가 모드에서 쓰기용으로만 열 수 있습니다. 수퍼유저 또는 이 기능이 있는 프로세스만 CAP_LINUX_IMMUTABLE이 속성을 설정하거나 지울 수 있습니다.

이 속성이 설정된 파일은 dump(8) 프로그램이 실행될 때 d백업 대상이 아닙니다 .

또는 옵션을 사용하여 파일 시스템을 마운트하는 경우 이 속성을 가진 파일은 j파일 자체에 쓰기 전에 모든 데이터를 ext3 또는 ext4 로그에 기록합니다. 이 옵션을 사용하여 파일 시스템을 마운트하면 모든 파일 데이터가 기록되며 이 속성은 적용되지 않습니다. 수퍼유저 또는 이 기능이 있는 프로세스만 이 속성을 설정하거나 지울 수 있습니다.data=ordereddata=writebackdata=journalCAP_SYS_RESOURCE

이러한 문제를 해결하려면 chattr를 사용하여 불변 속성과 연결된 속성을 제거하세요.

# chattr -ia model/DailyUpdateClass.class

관련 정보