rm이 기본적으로 쓰기 불가능한 파일을 제거하지 않는 이유는 무엇입니까?

rm이 기본적으로 쓰기 불가능한 파일을 제거하지 않는 이유는 무엇입니까?

rm이 기본적으로 쓰기 불가능한 파일을 제거하지 않는 이유는 무엇입니까? 현재 사용자가 쓸 수 없는 파일이지만 디렉터리에 쓰기 권한이 있는 파일을 제거하려고 할 때마다 이 경고가 표시되며 삭제를 확인하려면 `y'를 눌러야 합니다.

rm: remove write-protected regular file 

쓰기 불가능한 파일이 왜 그렇게 특별한 방식으로 처리되는지 궁금합니다. 내 마음에 떠오르는 한 가지는 이러한 파일은 일반적으로 암호화된 비밀번호와 같은 사용자 비밀 데이터가 포함된 사용자 구성 파일이므로 삭제하기 전에 rm이 경고한다는 것입니다. 자, 진짜 이유는 무엇입니까?

답변1

이 경우 UNIX의 동작이 약간 반직관적이기 때문입니다. 많은 사람들은 파일을 읽기 전용으로 표시하고 누군가가 해당 파일을 삭제할 수 있으면 매우 놀랐습니다. 파일을 삭제하려면 포함 디렉터리에 대한 쓰기 권한만 필요합니다. rm읽기 전용으로 보호해 주기를 바랐던 경우를 대비해 관례로 부탁드립니다.

(강제)를 사용하면 -f귀찮게 하지 않고 할 수 있습니다. 하지만 신중하게 사용하세요.

답변2

기록되지 않도록 설정되어 있기 때문에 메시지가 표시되는 것이 맞다고 생각합니다. 쓰기 불가능한 파일을 제거하는 경우 실제로는 해당 파일에 쓰는 것입니다. 메시지를 표시하지 않으려면 언제든지 rm이 실제로 rm -f라는 별칭을 만들 수 있습니다.

관련 정보