Skip to main content

A command line interface for recovering overwritten or deleted text data.

Project description

Recoverpy GitHub release (latest by date) GitHub Downloads

Recoverpy is a CUI utility written in Python with the help of py_cui.

You can already find plenty of solutions to recover deleted files but it can be a hassle to recover overwritten files. Recoverpy search through every inodes to find your request.

Installation

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

The file system type of your partition should not be a problem, just make sure you have access to grep, dd, and lsblk commands.

  • Debian-like :

apt install grep coreutils util-linux

  • Arch :

pacman -S grep coreutils util-linux

  • Fedora :

dnf install grep coreutils util-linux

- From pip (recommended):

Pip should be already installed if you have Python >=3.4. Otherwise, see pip docs for installation.

pip install recoverpy

- From source:

To install:

git clone https://github.com/pablolec/recoverpy
cd recoverpy
python3 -m pip install .

To update:

python3 -m pip install --upgrade recoverpy

Demo

Usage

python3 -m recoverpy

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 a text to search. You can now start the search.

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 string you search:

  • 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 have a match:

  • 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.0.5.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

recoverpy-1.0.5-py3-none-any.whl (26.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: recoverpy-1.0.5.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.23.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.6

File hashes

Hashes for recoverpy-1.0.5.tar.gz
Algorithm Hash digest
SHA256 d8e59f862729be0706ea33cf27ab36bffb93b2637bff595942f25bb324ac2c19
MD5 ec4faa1b276e03cef86130669c3b8846
BLAKE2b-256 0c04d6ade352c7a015cc3caa450f9049e23b028f5fb14217021b31be0e75ee1b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: recoverpy-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 26.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.23.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.6

File hashes

Hashes for recoverpy-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 cc4e644040a9bcaf29714617e65b5dc16e3ef775eb7d412e08eba99c3860a2b8
MD5 49a236918afd201c2b4c4faba2bead50
BLAKE2b-256 d32e9f1bc9ce534b7a9bc9e155a312f59e207dded596e152bc9dc80ca8d8255d

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