2012-04-10 10 views
3

Ich schreibe ein einfaches EC2-Snapshot-Skript und muss feststellen, ob es einen Weg gibt zu wissen, ob ein Dateisystem eingefroren ist oder nicht. Wie es derzeit aussieht, hängt der Versuch, alles mit einem eingefrorenen Dateisystem zu tun, das Skript (und hängt auch in der Bash-Shell).Wie ermitteln Sie, ob ein XFS-Dateisystem programmgesteuert eingefroren ist?

Gibt es einen Befehl oder eine Möglichkeit zu wissen, ob das Dateisystem in einem eingefrorenen Zustand ist?

Danke!

+0

Pragmatisch oder programmgesteuert? –

+0

Ah, mein Fehler. Danke Andrew – DrewVS

Antwort

3

Versuchen Sie das Dateisystem zu mounten:

mount -o remount /moint/point 

Wenn das Dateisystem gemountet wird mit nicht-Standardoptionen dann stellen Sie sicher, geben Sie die gleichen Optionen in der remount. Dies stellt sicher, dass der Remount tatsächlich ein No-Op ist, wenn es erfolgreich ist. Zum Beispiel, wenn das Dateisystem mit der Option noatime montiert ist, dann diesen Befehl statt:

mount -o remount,noatime /moint/point 

Wenn das Dateisystem aufgetaut wird, wird der Remount gelingen. Wenn das Dateisystem eingefroren ist, schlägt es mit EBUSY fehl.

Dies ist nicht idiotensicher, da technisch der Remount mit EBUSY aus einem anderen Grund fehlschlagen kann (außer dem Dateisystem, das eingefroren wird), aber wahrscheinlich den Trick in den meisten Fällen tun wird.

+0

Ja, das hat für mich funktioniert. Und ja, es sieht so aus, als könnte es falsche Positive zurückgeben, aber es sollte für meine Zwecke funktionieren. Vielen Dank! – DrewVS

Verwandte Themen