NetWorker löscht Daten nicht von Volumes, von denen er gerade liest

Insbesondere bei großen Umgebungen, in denen auch noch viel geklont wird, kann es passieren, dass der Dell EMC NetWorker Backups zwar während seines nsrim-Laufes (wird während der Expiration-Action ausgeführt) Backups als abgelaufen markiert, diese dann aber nicht gelöscht werden. Der Grund dafür ist, dass NetWorker standardmäßig auf einem Volume (z.B. ein DDBoost-Volume) keine Daten löscht, während davon gelesen wird.
In größeren Umgebungen kann es jedoch passieren, dass von Volumes immer gelesen wird, während der nsrim läuft. Und damit werden dort auch niemals abgelaufene Backups gelöscht und somit auch der Platz nicht freigegeben.

Der Grund dafür ist einfach: Dies ist ein Sicherheitsfeature, welches verhindern soll, dass Backups, die gerade gelesen werden (z.B. für einen Restore oder einen Klon), gelöscht werden. Leider wird dies nicht auf Backup-Ebene gesperrt, sondern direkt das ganze Volume.
Wer NetWorker kennt, wird wohl früher oder später mal am /nsr/debug  (Windows Standard: C:\Program Files\EMC NetWorker\nsr\debug) Verzeichnis vorbeikommen. In diesem Verzeichnis kann man Dateien anlegen, welche das Verhalten von NetWorker beeinflussen können.
Und genau dies müssen wir hierfür tun.

Hierfür legt man eine leere Datei namens “recover_space_anytime” in diesem Verzeichnis an.

Unter Linux/Unix z.B. mit dem “touch”-Befehl:

touch /nsr/debug/recover_space_anytime

Und unter Windows z.B. mit diesem Befehl:

type nul > "C:\Program Files\EMC NetWorker\nsr\debug\recover_space_anytime"

Die Pfadangaben muss man natürlich der jeweiligen Umgebung anpassen.
Beim nächsten Expirarion/nsrim-Lauf zieht die Datei auch schon und die abgelaufenen Backups werden gelöscht.
Bei Dell EMC gibt es ebenfalls einen Artikel zu dem Thema und wie man sehen kann, ist das schon seit NetWorker 8 ein Thema.