/srv/www/htdocs auf andere Festplatte verschieben

Datum: 2004-02-15
Quelle: suse-linux

Worum ging es?

Das Dokumentverzeichnis des apache soll von der root-Partition auf eine andere Festplatte oder andere Partition umziehen.

Code
# /srv/www/htdocs sichern / backup /srv/www/htdocs
tar cvzf /tmp/htdocs.tgz /srv/www/htdocs
# Dateisystem auf der neuen Festplatte einrichten 
# create a file system on the new disk
mke2fs -j /dev/hdb1
# das neue Dateisystem mounten / mount the new filesystem
mount -t ext3 /dev/hdb1 /mnt
# Dateien kopieren / copy the files
cd /srv/www/htdocs
find . -print | cpio -pdmuv /mnt
cd /
# sicherstellen, dass auf /srv/www/htdocs kein Prozess mehr zugreift
# assure, that no process accesses the files in /srv/www/htdocs
/etc/init.d/apache stop
lsof /srv/www/htdocs
# Alles unter /srv/www/htdocs loeschen / remove everything in /srv/www/htdocs
cd /srv/www/htdocs
rm -rf *
# das neue Dateisystem in /etc/fstab eintragen
# insert a line for the new filesystem in  /etc/fstab
echo "/dev/hdb1 /srv/www/htdocs ext3 1 2" >>/etc/fstab
    # oder Editor benutzen / or use an editor
# mounten des neuen Dateisystems / mount the new filesystem
umount /mnt
mount /dev/hdb1
# apache neu starten / restart apache
/etc/init.d/apache start
Beschreibung

Der Ablauf ist als Beispiel zu verstehen, die Pfade, Mountpunkte usw. müssen natürlich den konkreten Gegebenheiten angepasst werden. Das beschriebene Vorgehen ist aber auch auf andere Szenarien anwendbar, nur für die root- und andere Systempartitionen muss man anders vorgehen. Zum lsof noch eine Ergänzung: Dieser Befehl prüft, welche Prozesse auf einen Pfad zugreifen. Er soll hier dazu dienen, evtl. unbekannte Prozesse zu finden, die Dateien in /srv/www/htdocs geöffnet haben.