
- Alle Maschinen sind CentOS 6, 64bit
Meine RPM-Build-Maschine verfügt am Ende über ein Verzeichnis, in dem sie Createrepo ausführt.
Dies wird dann per NFS (schreibgeschützt) auf einer Maschine gemountet, die ein RPM-Repository in einem Unterverzeichnis /rpmrepo/staging/ hostet. /rpmrepo/staging ist ein logisches LVM-Volume.
Ich teste (noch nicht, aber in Zukunft) die RPMs und erstelle dann einen Snapshot des logischen Staging-Volumes auf einem unter /rpmrepo/production/ gemounteten Volume.
So weit, so gut. Ich stelle allerdings fest, dass sich die Inhalte der Repodata-Verzeichnisse davor und danach unterscheiden, ebenso wie die Zeitstempel. Die MD5-Summen der RPM-Dateien scheinen jedoch zu stimmen.
Unter anderem:
diff /rpmrepo/*/inhouse/repodata/repomd.xml
(stackexchange ate my diff output a little)
revision 1344287496
revision 1346188044
Die Dateigrößen von other.xml.gz und primary.xml.gz unterscheiden sich ebenfalls leicht, ebenso wie die Dateidaten
-rw-r--r-- 1 root root 287 16. Aug. 13:47 /rpmrepo/production/inhouse/repodata/other.xml.gz -rw-r--r-- 1 niemand niemand 289 29. Aug. 09:07 /rpmrepo/staging/inhouse/repodata/other.xml.gz
Aber soweit ich das beurteilen kann, hat sich nichts geändert, und zwar unmittelbar nach der Erstellung des Snapshots.
LV VG Attr LSize Pool Herkunft Daten% Verschieben Log Kopieren% Konvertieren pd_rpms speichern swi-aos- 10,00g st_rpms 0,00 -schnipp-
Den Snapshot habe ich gemacht mit:
lvcreate -L 10G -s -n pd_rpms /dev/store/st_rpms
Irgendwelche Ideen, was zum Teufel los ist? Ich bin völlig verblüfft. Ich habe versucht, die Synchronisierung auszuführen, bevor ich den Snapshot erstellt habe, aber ich verstehe nicht, wie sich ein Copy-on-Write-Snapshot auf diese Weise unterscheiden kann.
Für mich sieht es so aus, als ob der Zeitstempel der Staging-Dateien (vorher) wie erwartet ist, aber der Zeitstempel der danach erstellten Dateien liegt zwei Wochen zurück??
Ich frage mich, ob das etwas damit zu tun hat, wie ich den Snapshot-Zyklus im Laufe der Zeit immer wieder durchführe. Ich hänge den pd_rpms-Snapshot ab, führe lvremove aus, führe dann lvcreate aus (mit demselben Namen wie zuvor, pd_rpms) und mounte ihn wieder. Könnte das dieses Problem verursachen?
bearbeiten: Ich habe auch versucht, den Snapshot schreibgeschützt zu mounten. Immer noch keine Änderung. Diese Maschine hostet viele RPM-Repos und alle scheinen problemlos Snapshots zu erstellen, außer diesem (dem internen Repo). Auf der RPM-Erstellungsmaschine ist dies eine SVN-Arbeitskopie und enthält daher ein .svn-Verzeichnis, aber ansonsten kann ich nichts Besonderes daran erkennen.
Antwort1
Ein LVM-Snapshot enthält nicht den Inhalt eines NFS-Exports.