Ga naar inhoud

Het rmdir commando

Controleren of rmdir aanwezig is

Het rmdir-commando is een veelgebruikt Linux-commando en staat bijna altijd standaard op je systeem geΓ―nstalleerd.
Het maakt deel uit van het pakket GNU coreutils, dat basiscommando’s levert zoals cp, ls, mv, rm, touch en mkdir.

Wil je controleren of rmdir aanwezig is, dan kun je de versie opvragen:

rmdir --version
Voorbeeldoutput
rmdir (GNU coreutils) 9.1
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.

βš™οΈ Installeren van rmdir

Het commando rmdir maakt deel uit van het pakket GNU coreutils.
Dit pakket bevat de meest gebruikte basiscommando’s in Linux, zoals cp, ls, mv, rm, touch en mkdir.

πŸ‘‰ Daarom is rmdir op vrijwel alle Linux-distributies standaard geΓ―nstalleerd, inclusief Debian en Ubuntu.
Alleen in uitzonderlijke gevallen, zoals zeer minimale systemen of custom builds, moet je het handmatig installeren.

Installatie op Debian/Ubuntu:

sudo apt update
sudo apt install coreutils

Voorbeeldoutput
rmdir (GNU coreutils) 8.30
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Hieronder vind je enkele veelgebruikte combinaties van het rmdir-commando:

  • rmdir mapnaam β†’ Verwijder een lege map
Voorbeeld gebruik van rmdir mapnaam

Commando:

rmdir Documenten
Voorbeeldoutput:
# Lege map "Documenten" is verwijderd

  • rmdir -v mapnaam β†’ Toon melding bij verwijderen

  • rmdir --ignore-fail-on-non-empty mapnaam β†’ Negeer foutmeldingen als de map niet leeg is

  • rmdir -p map1/map2/map3 β†’ Verwijder de map en bovenliggende lege mappen

  • rmdir --parents map1/map2 β†’ Zelfde als -p, verwijdert ook lege bovenliggende mappen

  • rmdir --verbose mapnaam β†’ Laat zien welke mappen verwijderd worden

  • rmdir --help β†’ Toon alle opties en hulpinformatie

Het rmdir-commando heeft weinig configuratie, maar je kunt aliases gebruiken voor standaardopties.

1. Per gebruiker instellen

Plaats instellingen in je shell-configuratie:

alias rmdir='rmdir -v'

Dit zorgt dat altijd een melding wordt weergegeven bij het verwijderen van lege mappen.

2. System-wide instellen

Plaats dezelfde alias in /etc/bash.bashrc of /etc/profile.

Voordelen: - Alle gebruikers krijgen dezelfde standaardopties.

Logging van het rmdir-commando

Het rmdir-commando schrijft zelf geen logbestanden weg.
Wil je gebruik van rmdir monitoren, dan kan dat met auditd.

Voorbeeld auditd regel

sudo auditctl -w /bin/rmdir -p x -k rmdir_monitor
  • -w /bin/rmdir β†’ bewaak het bestand /bin/rmdir
  • -p x β†’ log bij uitvoeren
  • -k rmdir_monitor β†’ tag voor herkenning

Logs bekijken:

ausearch -k rmdir_monitor

Of rechtstreeks in:

less /var/log/audit/audit.log

Coreutils en het rmdir-commando

Het rmdir-commando maakt deel uit van coreutils.
Je kunt rmdir dus niet apart updaten, alleen het hele pakket.

sudo apt update
sudo apt install --only-upgrade coreutils

Verwijderen van rmdir

Het rmdir-commando is een fundamenteel onderdeel van Linux.
Het verwijderen kan scripts of systeemfunctionaliteit breken.
Gebruik liever permissies of een alias als je het wilt beperken.

Voorbeeld alias om rmdir te blokkeren:

alias rmdir='echo "rmdir is uitgeschakeld"'

Permissies aanpassen:

sudo chmod 700 /bin/rmdir
(Alleen root kan het uitvoeren)

πŸ“– Handleiding

De ingebouwde handleiding van Linux-commando’s is altijd beschikbaar via man.
Voor rmdir:

man rmdir
Voorbeeld
RMDIR(1)                  User Commands                  RMDIR(1)

NAME
       rmdir - remove empty directories

SYNOPSIS
       rmdir [OPTION]... DIRECTORY...

DESCRIPTION
       Remove the DIRECTORY(ies), if they are empty.