The freezer.utils.checksum
Module¶
-
class
freezer.utils.checksum.
CheckSum
(path, hasher_type='sha256', blocksize=1048576, exclude='', ignorelinks=False)[source]¶ Bases:
object
Checksum a file or directory with sha256 or md5 algorithms.
This is used by backup and restore jobs to check for backup consistency.
- parameters::
param path: the path to the file or directory to checksum type path: string param hasher_type: the hashing algorithm to use for checksum type hasher_type: string param hasher: hasher object for the specified hasher_type type hasher: hashlib object param blocksize: the max. size of block to read when hashing a file type blocksize: integer param exclude: pattern of files to exclude type exclude: string param checksum: final result for checksum computing type checksum: string param real_checksum: checksum without filename appended if unique file type real_checksum: string param count: number of files checksummed type count: int
-
compare
(checksum)[source]¶ Compute the checksum for the object path and compare with the given checksum. :return: boolean
-
compute
()[source]¶ Compute the checksum for the given path. If a single file is provided, the result is its checksum concatenated with its name. If a directory is provided, the result is the checksum of the checksum concatenation for each file. :return: string
-
get_files_hashes_in_path
()[source]¶ Walk the files in path computing the checksum for each one and updates the concatenation checksum for the final result
-
get_hash
(filepath)[source]¶ Open filename and calculate its hash. Append the hash to the previous result and stores the checksum for this concatenation :param filepath: path to file :type filepath: string :return: string containing the hash of the given file
-
hashes
= []¶