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.

Demo

Installation

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

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 tool.

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

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

python3 -m pip install recoverpy

To update: python3 -m pip install --upgrade recoverpy

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.1.0.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

recoverpy-1.1.0-py3-none-any.whl (26.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: recoverpy-1.1.0.tar.gz
  • Upload date:
  • Size: 13.7 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.1.0.tar.gz
Algorithm Hash digest
SHA256 5b0f86c5daf45222e4b9221b389418614ee11c593cc3e7a738d6327109df96bc
MD5 a78f9d6406f44feb03fbb739a397c0a6
BLAKE2b-256 0f07934696bcd63b6e1ddaf6c40d2a05ee7b3056d6bc9086ddec9575c01a4dc8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: recoverpy-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 26.6 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5950d2b4dbcd6f16cff8a2c27a05ff086fe28221d7fd61cf088b02088d4480c8
MD5 85dd00dd03d7e98445368dd82136facb
BLAKE2b-256 14f3f87fc2d6d887bc5971c94e1ca6720fc521f00d7819b9488f0ebebc2b8526

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