Polecenie rm w Linuksie: opcje rm -rf i usuwanie bez potwierdzenia

Informacja o linkach partnerskich v3.1
Informacja o linkach partnerskich v3.2 (wersja mobilna)
Środowisko testoweRodzina RHELAlmaLinux 9.8konto rootSprawdzono 05.10.2026

Polecenie rm usuwa pliki od razu, bez kosza. rm to skrót od remove i usuwa pliki oraz katalogi; ten wpis omawia podstawy, opcje i powód, dla którego katalog główny zostaje nawet po [rm -rf /].

W AlmaLinux 9.8 konto root ma domyślnie [alias rm='rm -i'], więc przed usunięciem pyta o potwierdzenie. Dla systemów Linux bez tego ustawienia wpis pokazuje też, jak samemu dodać alias.

✅ Podstawowe użycie

Podstawowa składnia wygląda tak.

rm -opcje cel: Plik lub katalog
Polecenie rm

Plik usuwa się samą nazwą; katalog dopiero po dodaniu opcji -r.

# usunięcie pliku
rm file1
# usunięcie kilku plików
rm file1 file2
# usunięcie katalogu z całą zawartością
rm -r dir1/
# usunięcie pustego katalogu
rm -d dir1/
~]# rm dir1/
rm: cannot remove 'dir1/': Is a directory

Jeśli podasz katalog bez opcji, nie zostanie usunięty, jak widać wyżej.

Usunięcie dowiązania symbolicznego usuwa tylko dowiązanie; plik, na który wskazuje, zostaje. Do sprawdzenia przed usunięciem i po nim użyj też polecenia ls.

✅ rm -rf: usuwanie bez potwierdzenia

Polecenie rm pyta [remove regular file], bo na koncie root rm działa przez alias [rm -i].

~]# rm file1
rm: remove regular file 'file1'? y
~]# alias rm
alias rm='rm -i'

Usuwanie katalogu z opcją -r pyta o potwierdzenie przy wejściu do każdego katalogu i dla każdego pliku, co przy wielu plikach jest uciążliwe.

~]# rm -r logs/
rm: descend into directory 'logs/'? y
rm: remove regular file 'logs/access.log'? y
rm: remove regular empty file 'logs/error.log'? y
rm: remove directory 'logs/'? y

Wtedy dodaj opcję -f: usuwa bez potwierdzenia i nie zgłasza błędu, nawet gdy pliku nie ma.

rm -rf logs/

Ukośnik wsteczny [\] przed poleceniem, który omija alias, albo [yes |] na początku, by przy każdym pytaniu wpisywało się y, daje ten sam wynik.

\rm -r logs/
yes | rm -r logs/

✅ Opcje polecenia rm & symulator

OpcjaOpis
-f--forceUsuwa bez potwierdzenia i nie zgłasza błędu dla nieistniejących plików
-iPyta użytkownika o potwierdzenie przed każdym usunięciemalias rm='rm -i'
-I(wielkie i)Pyta tylko raz przy czterech lub więcej plikach albo z -r
-r, -R--recursiveUsuwa katalog razem z podkatalogami i plikami
-d--dirUsuwa pusty katalog
-v--verboseWypisuje każdy usunięty plik i katalog w osobnym wierszu
--preserve-rootNie usuwa katalogu głównego (/) (domyślnie)
--no-preserve-rootWyłącza ochronę katalogu głównego (/)
Symulator polecenia rmalias rm='rm -i'
[root@server work]#
Działa tylko w przeglądarce i nie dotyka prawdziwych plików. Wpisuj rm z różnymi opcjami i sprawdzaj wynik przez ls i cat. Usunięte pliki wracają po naciśnięciu [Start over]. Klawiszami ↑↓ przywołasz wcześniejsze polecenia, a wpisanie uknew help pokaże dostępne polecenia.

✅ rm -rf /: ochrona katalogu głównego

Przy pracy z hostingiem zdarza się usunąć pliki, których nie należało ruszać. Większość da się odtworzyć z kopii zapasowej, ale po usunięciu katalogu głównego odzyskiwanie jest kłopotliwe nawet ze snapshotem. Kilka razy słyszałem o przypadkach, gdy źle wpisanego rm -rf nie dało się cofnąć.

Polecenie rm domyślnie stosuje opcję [--preserve-root], więc katalog główny nie zostanie usunięty nawet po [rm -rf /].

~]# rm -rf /
rm: it is dangerous to operate recursively on '/'
rm: use --no-preserve-root to override this failsafe

Nie powstrzymuje jednak [rm -rf /*]. Powłoka zamienia [/*] na nazwy katalogów, takie jak /bin, /etc i /home, zanim je przekaże, więc rm usuwa każdy z tych katalogów, a nie [/].

Świeża instalacja AlmaLinux 9.8 ma aliasy -i dla rm, cp i mv w [/root/.bashrc], jak poniżej. Zwykłe konta użytkowników tych aliasów nie mają.

~]# grep alias /root/.bashrc
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

Na koncie lub w systemie Linux bez aliasu dodaj jeden wiersz na końcu [~/.bashrc] i wczytaj go ponownie.

# dodaj na końcu ~/.bashrc
alias rm='rm -i'
# wczytaj ponownie
source ~/.bashrc
linux Free Software

ℹ️ Informacja o linkach partnerskich
Treści tej witryny zawierają linki partnerskie. Jeśli odwiedzający kupi produkt lub usługę przez taki link, witryna otrzymuje od sprzedawcy prowizję. Kwota płacona przy tym przez kupującego (podczas promocji spada↓) nie wzrasta. Podane ceny, rabaty i dostępność odnoszą się do chwili pisania i mogą różnić się od stanu faktycznego, dlatego przed zakupem sprawdź je u sprzedawcy. Produkty wybieramy i oceniamy według własnych kryteriów, a prowizja nie wpływa ani na kolejność prezentacji, ani na treść ocen.