Skip to main content

A TUI to recover overwritten or deleted data.

Project description

RecoverPy

Recover overwritten or deleted data.

Release License Downloads Tests


RecoverPy

RecoverPy is a utility with Terminal UI written in Python.

You can already find plenty of solutions to recover deleted files but it can be a hassle to recover overwritten files. RecoverPy searches through every blocks of your partition to find your request.

Demo

Installation

:penguin: The main prerequisite is having a Linux system.

:arrow_right: Dependancies

Mandatory: To list and search through your partitions, recoverpy uses grep, dd, and lsblk commands.

Optional: To display real time grep progress, you can install progress.

To install all dependencies:

  • Debian-like: apt install grep coreutils util-linux progress
  • Arch: pacman -S grep coreutils util-linux progress
  • Fedora: dnf install grep coreutils util-linux progress

:arrow_right: Installation from pip

python3 -m pip install recoverpy

Usage

python3 -m recoverpy

:red_circle: You must have root access to use recoverpy.

If you are not logged as root use sudo recoverpy or log in with su - before execution.


First, select the system partition in which your file was. If you are out of luck, you can alternatively search in your home partition, maybe your IDE, text editor, etc. made a backup at some point.

Then, type some text to search. See tips below for better results.

Note that searching a string in a whole partition may take a while. (see euphemism)

Results will appear in the left-hand box. Select a result to display the corresponding partition block content in the right-hand box.

Once you have found your precious, select Save.

You can now either save this block individually or explore neighboring blocks for the remaining parts of the file. You could then save it all in one file.

Save path is set in conf.yaml. Default is /tmp/.

Tips

  • Always do backups! Yes, maybe too late...
  • Unmount your partition before you do anything! Although you can search with your partition still mounted, it is highly recommended to unmount your partition to avoid any alteration to your file.

Regarding the searched string:

  • Be concise, find something that could be unique to your file.
  • Stay simple, your string is escaped but exotic characters may affect your results.
  • Try to remember the last edit you have made to your file.

When you found your file:

  • Use the option to explore neighboring blocks to make sure you do not miss some part of your file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

recoverpy-1.3.2.tar.gz (25.3 kB view details)

Uploaded Source

Built Distribution

recoverpy-1.3.2-py3-none-any.whl (28.2 kB view details)

Uploaded Python 3

File details

Details for the file recoverpy-1.3.2.tar.gz.

File metadata

  • Download URL: recoverpy-1.3.2.tar.gz
  • Upload date:
  • Size: 25.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for recoverpy-1.3.2.tar.gz
Algorithm Hash digest
SHA256 32dc9bfdd038c4d119e0281c90f0f5f04f2ca48e292dab807f39e93f9456cfa0
MD5 b51a5356dc4f47a28ed994d9717b222a
BLAKE2b-256 eeb54d05831be6a3b996d40d8cf7610901fb5347a17a092c7f5bdbfe4b0d874e

See more details on using hashes here.

File details

Details for the file recoverpy-1.3.2-py3-none-any.whl.

File metadata

  • Download URL: recoverpy-1.3.2-py3-none-any.whl
  • Upload date:
  • Size: 28.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for recoverpy-1.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ba7ed8229c5b92ab3c879b30148b3555ac8c272beb1faff45e2cca10376aa850
MD5 e4692c56771cd6e16e11af163c46ac75
BLAKE2b-256 eedd56a5f1ea82dcfb58584642121f9fa3299139dad817c529c84a013c75bbd6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page