여기에 많이 가본 적이 없습니다. 주로 스택오버플로우. 어쨌든 삭제할 수 없는 파일이 있습니다.
나는 시도 sudo rm files.db
하고 얻었다
Operation not permitted
했다sudo chown me: files.db
그 다음에sudo chmod 777 files.db
다시 시도했지만 sudo rm files.db
동일한 결과를 얻었습니다.
ls -l
생산하다:
-rwx------ 1 me staff 34177024 Jun 6 23:58 files.db
나는 보고 싶었을 것이다:
-rwxrwxrwx 1 me staff 34177024 Jun 6 23:58 files.db
시험을 마친sudo chflags noschg files.db
그런 sudo chmod 777 files.db
다음 여전히 다음을 얻습니다.
-rwx------ 1 me staff 34177024 Jun 6 23:58 files.db
내가 무엇을 놓치고 있나요?
고쳐 쓰다:
su user rm -rf files.db
내 비밀번호를 입력해 보았는데 다음과 같습니다.
su: Sorry
저는 이 드라이브를 타임머신 백업에 사용합니다.
강제로 삭제하는 방법은 없나요?
또 다른 업데이트:
이것이 어떻게 작동하는지 잘 모르겠지만 시도해 보고 다음을 ls -i
얻었습니다.
5482053549 files.db
그런 다음 find . -inum 5482053549 -delete
다음을 얻습니다.
find: -delete: unlink(./files.db): Operation not permitted
또한 시도 find . -inum 5482053549 -exec rm {} \;
하고 얻었습니다:
rm: ./files.db: Operation not permitted
아.
최근 업데이트:
오늘 아침에 나는 다음을 수행했습니다. chown me folder
그런 다음 chmod 777 folder
. 그러면 파일을 삭제할 수 있습니다.
답변1
그것도 시도해 보셨나요 chflags nouchg
, 아니면 일부 상위 디렉토리에 uchg
또는 schg
플래그가 있는지 확인하셨나요?
$ mkdir 1; touch 1/2; chflags uchg 1; sudo rm -f 1/2
rm: 1/2: Operation not permitted
$ chflags nouchg 1; rm 1/2
$
디렉토리에 쓰기 권한이 없는 경우 일반적으로 오류 메시지는 Permission denied
다음과 같습니다 Operation not permitted
.
$ sudo mkdir 3; sudo touch 3/4; sudo chown $USER 3/4; rm 3/4
rm: 3/4: Permission denied
sudo rm
이는 일반적으로 delete
or 연산이 거부된 경우에도 작동합니다.delete_child
$ touch 4; chmod +a 'everyone deny delete' 4; rm 4
rm: 4: Permission denied
$ mkdir 5; touch 5/6; chmod +a 'everyone deny delete_child' 5; rm 5/6
rm: 5/6: Permission denied
$ ls -lde 4 5
-rw-r--r--+ 1 lauri staff 0 Jun 7 12:44 4
0: group:everyone deny delete
drwxr-xr-x+ 3 lauri staff 102 Jun 7 12:44 5
0: group:everyone deny delete_child
$ sudo rm 4 5/6
$