Hallo,
ich habe einen ZFS Dataset. Genannt "tank/work". Diesen habe ich als Bind Mount in meinen LXC durchgereicht, dann kann ich im LXC unter "/srv/work" auf die Daten zugreifen und auch auf die Snapshots usw.
Es wird alle 15min ein Snapshot angelegt mit zfs-auto-snapshot. Super!
Nund möchte ich unter "work" einen Subdirectory haben, von dem KEINE Snapshots erstellt werden. Da man das bei ZFS nicht für einzelne Ordner festlegen kann, sondern nur für einen ganzen Dataset, habe ich foldendes gemacht:
auf dem Proxmox Host habe ich den Dataset tank/work/tmp angelegt und dort den Property "auto-snapshot" auf "false" gesetzt. Wenn ich nun in den LXC hinein gehe, sehe ich den "tmp" Ornder, unter "/srv/work/tmp", und der zeigt auch auf den richtigen ZFS Dataset! soweit auch gut! Snapshots werden auch, wie vorgesehen, exkludiert für den "tmp" Dataset.
ABER jetzt kommt der witzige Effekt.
Wenn ich den LXC neu boote, dann sehe ich nach dem Neustart zwar /srv/work/tmp immer noch, aber irgendwie scheint der Bind Mount zum darunterliegenden ZFS Dataset verloren gegangen zu sein - wenn ich jetzt Files unter /srv/work/tmp ablege, dann sehe ich die auf dem Host unter /tank/work/tmp nicht mehr.
Umgekehrt auch nicht - wenn ich aus dem Host etwas unter /tank/work/tmp ablege, dann sehe ich es im LXC unter /srv/work/tmp nicht.
Für den /tank/work gilt dies aber nicht, der funktioniert nach wie vor korrekt!
Was geht hier wohl ab? kann ich in einem Bind Mount keine verschachtelten Datasets haben, oder muss ich einfach für jeden Sub-Dataset einen zusätzlichen Mountpoint kreieren? oder ist dies ein Bug? oder ein Feature
ich habe einen ZFS Dataset. Genannt "tank/work". Diesen habe ich als Bind Mount in meinen LXC durchgereicht, dann kann ich im LXC unter "/srv/work" auf die Daten zugreifen und auch auf die Snapshots usw.
Es wird alle 15min ein Snapshot angelegt mit zfs-auto-snapshot. Super!
Nund möchte ich unter "work" einen Subdirectory haben, von dem KEINE Snapshots erstellt werden. Da man das bei ZFS nicht für einzelne Ordner festlegen kann, sondern nur für einen ganzen Dataset, habe ich foldendes gemacht:
auf dem Proxmox Host habe ich den Dataset tank/work/tmp angelegt und dort den Property "auto-snapshot" auf "false" gesetzt. Wenn ich nun in den LXC hinein gehe, sehe ich den "tmp" Ornder, unter "/srv/work/tmp", und der zeigt auch auf den richtigen ZFS Dataset! soweit auch gut! Snapshots werden auch, wie vorgesehen, exkludiert für den "tmp" Dataset.
ABER jetzt kommt der witzige Effekt.
Wenn ich den LXC neu boote, dann sehe ich nach dem Neustart zwar /srv/work/tmp immer noch, aber irgendwie scheint der Bind Mount zum darunterliegenden ZFS Dataset verloren gegangen zu sein - wenn ich jetzt Files unter /srv/work/tmp ablege, dann sehe ich die auf dem Host unter /tank/work/tmp nicht mehr.
Umgekehrt auch nicht - wenn ich aus dem Host etwas unter /tank/work/tmp ablege, dann sehe ich es im LXC unter /srv/work/tmp nicht.
Für den /tank/work gilt dies aber nicht, der funktioniert nach wie vor korrekt!
Was geht hier wohl ab? kann ich in einem Bind Mount keine verschachtelten Datasets haben, oder muss ich einfach für jeden Sub-Dataset einen zusätzlichen Mountpoint kreieren? oder ist dies ein Bug? oder ein Feature