![SamYaple](/assets/img/avatar_default.png)
Updates backup.py and adds dump_manifest.py that will print out all hashes from the underlying blocks. This can be replicated with a simple python script as follows: # dump_disk.py import hashlib with open('/dev/loop0', 'rb') as f: while True: data = f.read(4*1024**2) if not data: break print(hashlib.sha1(data).hexdigest()) python dump_disk.py | grep -v 2bccbd2f38f15c13eb7d5a89fd9d85f595e23bc3 NOTE: 2bccbd2f38f15c13eb7d5a89fd9d85f595e23bc3 == segment of all zero To perform backup and dump info from manifest (which will match the output of the above script): tools/backup.py --backup /dev/loop0 --manifest mani tools/dump_manifest.py --manifest mani The backup works on both files and block devices with the raw driver. Further drivers will be implemented (such as qcow2 and rbd) as time goes on. Adjust sectors to equal number of bytes on size instead. Change-Id: I976f02a27bc13b5774a6088799ca61f65ec04f14
55 lines
1.3 KiB
INI
55 lines
1.3 KiB
INI
[metadata]
|
|
name = ekko
|
|
summary = Block-based backups stored in object-storage
|
|
description-file =
|
|
README.rst
|
|
author = OpenStack
|
|
author-email = openstack-dev@lists.openstack.org
|
|
home-page = http://www.openstack.org/
|
|
classifier =
|
|
Environment :: OpenStack
|
|
Intended Audience :: Information Technology
|
|
Intended Audience :: System Administrators
|
|
License :: OSI Approved :: Apache Software License
|
|
Operating System :: POSIX :: Linux
|
|
Programming Language :: Python
|
|
Programming Language :: Python :: 2
|
|
Programming Language :: Python :: 2.7
|
|
Programming Language :: Python :: 3
|
|
Programming Language :: Python :: 3.3
|
|
Programming Language :: Python :: 3.4
|
|
|
|
[entry_points]
|
|
ekko.backup.backend =
|
|
raw = ekko.backup._backend.raw:RawBackup
|
|
qcow2 = ekko.backup._backend.qcow2:QCOW2Backup
|
|
ekko.manifest.drivers =
|
|
osdk = ekko.manifest._drivers.osdk:OSDKManifest
|
|
sqlite = ekko.manifest._drivers.sqlite:SQLiteManifest
|
|
|
|
[files]
|
|
packages =
|
|
ekko
|
|
|
|
[build_sphinx]
|
|
source-dir = doc/source
|
|
build-dir = doc/build
|
|
all_files = 1
|
|
|
|
[upload_sphinx]
|
|
upload-dir = doc/build/html
|
|
|
|
[compile_catalog]
|
|
directory = ekko/locale
|
|
domain = ekko
|
|
|
|
[update_catalog]
|
|
domain = ekko
|
|
output_dir = ekko/locale
|
|
input_file = ekko/locale/ekko.pot
|
|
|
|
[extract_messages]
|
|
keywords = _ gettext ngettext l_ lazy_gettext
|
|
mapping_file = babel.cfg
|
|
output_file = ekko/locale/ekko.pot
|