Chcę chronić moje foldery w $ HOME przed przypadkowym usunięciem. Zastosowałem na nich chattr + i, ale zauważyłem, że ostatnia jest stosowana rekurencyjnie, dlatego rzeczywiście nie można usunąć folderu, ale także nie mogę w nim pisać.
To nie jest rekurencyjne, po prostu działają katalogi. Katalog jest w zasadzie specjalnym plikiem z listą nazw i i-węzłów. (Przynajmniej kiedyś; nadal możesz cat
katalogować na niektórych plikach BSD.) Kiedy próbujesz utworzyć, zmienić nazwę lub usunąć plik, nie zmieniasz samego pliku, zmieniasz jego katalog nadrzędny. Jeśli katalog jest oznaczony jako niezmienny, nie można go zmienić - ale podkatalogi można nadal modyfikować.
Próbowałem także zastosować lepki bit do chmod 1775 i zmienić własność folderu za pomocą Chown root foldername. Zwykle przy włączonym lepkim bicie tylko właściciel folderu może go usunąć, ale, o dziwo, w moim przypadku, chociaż folder jest własnością root, mogę go usunąć z moim normalnym użytkownikiem.
Bit lepki umożliwia usuwanie obiektów, jeśli posiadasz sam obiekt lub jego katalog nadrzędny.
Zauważyłem, że foldery użytkowników na partycji / home, chociaż są własnością bieżącego użytkownika i mają uprawnienia rwx dla właściciela, nie można ich usunąć / zmienić. Jak to się osiąga?
Patrz wyżej - podczas usuwania obiektu systemu plików musisz mieć uprawnienia do zapisu w katalogu nadrzędnym , a nie w samym obiekcie. W tym przypadku /home
jest własnością użytkownika root, a Ty masz tylko uprawnienia „odczyt” + „wykonanie”.
Podsumowując
kopie zapasowe.
obiekt systemu plików: n. plik, katalog, węzeł urządzenia, dowiązanie symboliczne, potok, gniazdo Unix lub cokolwiek innego, co może być zapisane w systemie plików.