Verzeichnis verschieben

aus PUG, der Penguin User Group
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Ziel

Man möchte bei bereits installiertem System ein Verzeichnis (z.B. /usr) auf eine eigene Festplatte bzw. Partition legen. Dafür sollen natürlich alle Dateiattribute erhalten bleiben.


Vorgehen

Um diese Schritte durchführen zu können, muss man root sein.

Zuerst mountet man die freie Partition (z.b. /dev/hdb2) in ein beliebiges freies Verzeichnis, z.B. /mnt und wechselt dann in das Verzeichnis /usr.

# mount /dev/hdb2 /mnt
# cd /usr

Nun kopiert man den Inhalt von /usr nach /mnt. Um die Dateiattribute zu erhalten macht man einen Trick mit dem Programm tar.

tar cSpf - . | (cd /mnt && tar xvSpf - )

Dies kann einige Zeit dauern. Natürlich dürfen in dieser Zeit keine Schreibzugriffe auf /usr stattfinden. Im Zweifelsfall sollte man lieber in den Single-User-Runlevel wechseln.

Danach verschiebt man /usr nach /usrold und mountet anschliessend /dev/hdb2 nach /usr.

# umount /mnt
# mv /usr /usrold
# mount /dev/hdb2 /usr

Man kann nun direkt mit dem System weiterarbeiten.

Zuletzt muss man natürlich die neue Partition in die /etc/fstab eintragen.

/dev/hdb2  /usr  ext2  defaults  1 1

Das Verzeichnis /usrold kann man löschen, sobald man sich davon überzeugt hat, dass alles funktioniert.

Folgen

Die Performance des Systems sollte sich durch die Verteilung auf zwei Platten spürbar verbessert haben.

Quelle

  • Handbuch SuSE-Linux 6.1, S. 51 f
  • man tar