rf -Rf
명령을 사용하여 제거 할 수없는 몇 가지 파일이 있습니다 . 나는 해당 파일의 소유자이고 해당 파일에 할당 된 그룹도 사용자가 속한 그룹입니다. 더 이상한 점은 컨텐츠를 편집 할 수 있고 파일에 대한 권한을 변경할 수 있지만 이동하거나 그것들을 삭제하십시오.
ls -al
total 12
dr-xr-xr-x 3 rayell pg1083760 4096 2010-10-10 10:00 .
drwxr-xr-x 3 rayell pg1083760 4096 2011-09-02 04:33 ..
-rwxrwxrwx 1 rayell pg1083760 0 2011-09-02 06:38 default.settings.php
drwxrwxrwx 2 rayell pg1083760 4096 2011-09-02 04:33 files
-rwxrwxrwx 1 rayell pg1083760 0 2011-09-02 06:38 settings.php
rm -Rf *
rm: cannot remove `default.settings.php': Permission denied
rm: cannot remove directory `files': Permission denied
rm: cannot remove `settings.php': Permission denied
아무도 무슨 일이 일어나고 있는지 말해 줄 수 있습니까?
답변
하나의 파일을 제거하려면 이 파일이 포함 된 디렉토리 에 대한 쓰기 권한이 필요 합니다.
여기에 권한이 dr-xr-xr-x 3 rayell pg1083760 4096 2010-10-10 10:00 .
있으므로이 이외의 다른 사람 은 root
이 디렉토리 내의 파일을 제거 할 수 없습니다. 소유자는 chmod
먼저 사용해야합니다 .
—
1. 그 이유는 꽤 있습니다. 로 파일을 ‘제거’하면 rm
실제로 디렉토리에서 링크 를 해제 하려고합니다 (하드 카피 된 사본은 삭제되지 않음).
답변
나는 같은 문제가 있었고 chmod
혼자서는 그 트릭을하지 않았다. 먼저 제거하려는 파일의 소유자 (사용자 및 그룹)를 변경해야했습니다.
sudo chown -hR root:admin dir_to_delete
설명:
sudo
: 적절한 권리가 있는지 확인하십시오chown
: 파일 소유자를 변경하는 Linux 명령-hR
: 디렉토리 및 모든 하위 디렉토리의 소유자를 변경합니다. 여기 에서 찾았습니다 .root
: 새로운 사용자의 이름admin
: 새로운 그룹의 이름
이미 수정자를 777로 변경했습니다. 그것이 필요한지 모르겠습니다.
답변
또 다른 가능한 질문은 속성입니다
lsattr file
이 명령은 파일의 속성을 표시하며 ‘i’속성을 가진 파일은 수정할 수 없으며 삭제할 수 없습니다
파일의 속성을 확인하고 속성이 설정된 경우 ‘i’속성을 제거하십시오.
chattr -i file
답변
그 이유는 부모 디렉토리가 chmod 705
그와 비슷한 것이기 때문입니다. chmod
다음 명령으로 상위 디렉토리를 작성할 수 있습니다 .
chmod -R 777 directory_name
그런 다음 해당 디렉토리와 디렉토리에 포함 된 파일을 제거 할 수 있습니다.