폴더가 삭제/이동되지 않도록 보호하지만 폴더 안의 파일에는 제한을 두지 않는 방법

폴더가 삭제/이동되지 않도록 보호하지만 폴더 안의 파일에는 제한을 두지 않는 방법

이것이 내가 달성하고 싶은 것입니다:

폴더가 삭제되거나 이동되지 않도록 보호하고 싶지만 그 /mnt/sdmmc0p2/test안에 들어있는 파일은 삭제될 수 있습니다.

를 사용해 보았지만 chattr +a /mnt/sdmmc0p2/test실패했습니다.

~# chattr +a /mnt/sdmmc0p2/test
chattr: No such file or directory while trying to stat /mnt/sdmmc0p2/test
~# mkdir /mnt/sdmmc0p2/test
~# chattr +a /mnt/sdmmc0p2/test
~# date >> /mnt/sdmmc0p2/test/test
~# rm /mnt/sdmmc0p2/test/test
rm: can't remove '/mnt/sdmmc0p2/test/test': Operation not permitted

그런 다음 "u"(삭제할 수 없음) 플래그를 사용해 보았습니다.

~# chattr =u /mnt/sdmmc0p2/test
~# rm /mnt/sdmmc0p2/test/test
~# rm -r /mnt/sdmmc0p2/test

여기에는 두 가지 질문이 있습니다.

  1. 내 목표는 달성 가능한가 chattr?
  2. "u" 플래그가 작동하지 않는 이유는 무엇입니까? "삭제 불가능"이 무엇을 의미하는지 오해했나요?

답변1

간단히 다음을 사용하여 chmod이 작업을 수행 할 수 있습니다.chown

sudo chown root:root /mnt/sdmmc0p2/test
sudo chmod 777  /mnt/sdmmc0p2/test

그런 다음 테스트

cd  /mnt/sdmmc0p2/test
touch mytest1
rm mytest1
cd ..
rm -rf  /mnt/sdmmc0p2/test
rm: cannot remove '/mnt/sdmmc0p2/test': Permission denied

관련 정보