Zum Inhalt springen

Verschieben & Umbenennen

Mit mv (Move) werden Dateien und Verzeichnisse verschoben oder umbenannt. Unter Linux gibt es keinen separaten Befehl zum Umbenennen – beides ist dieselbe Operation.

Terminal-Fenster
mv alter-name.txt neuer-name.txt
mv projektordner/ archiv-2025/
Terminal-Fenster
mv bericht.txt dokumente/ # in einen anderen Ordner verschieben
mv bericht.txt dokumente/neu.txt # verschieben und gleichzeitig umbenennen
mv datei1.txt datei2.txt zielordner/ # mehrere Dateien in einen Ordner verschieben

Um zu verstehen, was mv intern tut, hilft ein Blick auf das Konzept des Inodes.

Jede Datei in einem Linux-Dateisystem besteht aus zwei Teilen:

  1. Inode – ein Datensatz im Dateisystem, der die eigentlichen Metadaten und Daten-Blöcke der Datei beschreibt (Rechte, Eigentümer, Größe, Zeitstempel, Zeiger auf die Datenblöcke). Jeder Inode hat eine eindeutige Nummer.
  2. Verzeichniseintrag – eine Zeile im übergeordneten Verzeichnis, die einen Namen mit einer Inode-Nummer verknüpft.
Verzeichnis /home/alice/:
"bericht.txt" → Inode 48291
"notizen.txt" → Inode 48305
Inode 48291:
Größe: 12.4 KB
Eigentümer: alice
Datenblöcke: [Block 8200, Block 8201, ...]

Die Inode-Nummer einer Datei lässt sich anzeigen:

Terminal-Fenster
ls -i bericht.txt
# 48291 bericht.txt

Beim Verschieben oder Umbenennen innerhalb derselben Partition wird der Inode nicht angefasst. Nur der Verzeichniseintrag ändert sich – der Name zeigt danach auf denselben Inode wie zuvor:

Terminal-Fenster
mv bericht.txt archiv/jahresbericht.txt
ls -i archiv/jahresbericht.txt
# 48291 archiv/jahresbericht.txt ← identische Inode-Nummer!

Das ist der Grund, warum mv auf derselben Partition blitzschnell ist, egal wie groß die Datei ist: Es werden keine Daten bewegt, nur ein Verzeichniseintrag umgeschrieben.

Was passiert beim mv über Partitionsgrenzen hinweg?

Abschnitt betitelt „Was passiert beim mv über Partitionsgrenzen hinweg?“

Soll eine Datei auf eine andere Partition verschoben werden (z. B. von /home auf einen eingehängten USB-Stick unter /media/usb), muss mv die Daten tatsächlich kopieren und die Originaldatei anschließend löschen. Der Inode auf dem Zieldateisystem ist ein neuer.

OptionBedeutung
-iInteraktiv – fragt nach, bevor eine Datei überschrieben wird
-uNur verschieben, wenn Quelle neuer als Ziel
-vVerbose – zeigt jede verschobene Datei an