Andreas Corneliussen
Dabbler
- Joined
- Apr 19, 2017
- Messages
- 25
Hi Everyone
As mentioned in my introduction thread, I would like to stop being a cheapskate regarding hardware (which if I buy it to cheap end up dying on me), but also on backup systems. This is not entirely true. I would like to start backing up, but I am still working hard to make the lowest cost solution fit my need.
I therefore have the following plan for backing up my Dataset with around 180 Gigs of images:
I have grown quite fond of using python as my day to day programming language for high level programming (i.e. not embedded targets), and I have therefore taken the boto.glacier library and made a class with all the amazon glacier functionality that I have the need for in this project. For the ZFS handling I have found py-libzfs which should give handy python functions for all the actions I need to to on the Zfs pool. And this is where I get to the root of my issue that I need help with.
I have made a jail where I have installed python 2.7, ipython and py27-libzfs-1.0.20170319. When I then try to use the ipython prompt to ask for a list of pools I get the following:
I may have been able to foresee this as there is no reason my jail should have any knowledge about the underlying filesystem and therefore no reason that it should be able to see, let alone make changes to, the diskpool of the base OS of FreeNAS. Therefore, the script I write will have to be executed in the context of the base OS, but here I am unable to install any packages as I understand.
Can any of you point me in a direction of solving this dilemma that is better than fetching the source code of py-libzfs and trying to make it run in the context of the python installed in the base OS of my freenas?[/CMD]
As mentioned in my introduction thread, I would like to stop being a cheapskate regarding hardware (which if I buy it to cheap end up dying on me), but also on backup systems. This is not entirely true. I would like to start backing up, but I am still working hard to make the lowest cost solution fit my need.
I therefore have the following plan for backing up my Dataset with around 180 Gigs of images:
- Make one startup snapshot and zfs send > initial_backup_file
- Take the initial_backup_file and add some parity on top to make it resilient to errors
- Send the initial_backup_file and send it to amazon glacier
- Each day make a new snapshot, calculate the size of an incremental zfs send of this snapshot and if < 1M destroy the snapshot
- If the snapshot is not destroyed make an incremental zfs send of the changes between the newest snapshot and the one before that
- pad the incremental snapshots with parity and send to amazon glacier
- When a fixed amount of incremental files have been transfered to amazon, start over with a new initial backup file
- Keep the full two newest sets of incremental snapshots in amazon glacier
I have grown quite fond of using python as my day to day programming language for high level programming (i.e. not embedded targets), and I have therefore taken the boto.glacier library and made a class with all the amazon glacier functionality that I have the need for in this project. For the ZFS handling I have found py-libzfs which should give handy python functions for all the actions I need to to on the Zfs pool. And this is where I get to the root of my issue that I need help with.
I have made a jail where I have installed python 2.7, ipython and py27-libzfs-1.0.20170319. When I then try to use the ipython prompt to ask for a list of pools I get the following:
import libzfs
pools = list(libzfs.ZFS().pools)
pools
[]
I may have been able to foresee this as there is no reason my jail should have any knowledge about the underlying filesystem and therefore no reason that it should be able to see, let alone make changes to, the diskpool of the base OS of FreeNAS. Therefore, the script I write will have to be executed in the context of the base OS, but here I am unable to install any packages as I understand.
Can any of you point me in a direction of solving this dilemma that is better than fetching the source code of py-libzfs and trying to make it run in the context of the python installed in the base OS of my freenas?[/CMD]