e2undo - Linux
Overview
e2undo is a powerful command-line tool that allows users to undo or restore changes made to Ext2 or Ext3 filesystems. It provides a mechanism to recover from accidental deletions, modifications, or other data loss situations.
Syntax
e2undo [-backup-file <file>] [-blocksize <size>] [-c|-d] [-f] [-n] [-u] [<device> | <filesystem>]
Options/Flags
- -backup-file
: Specifies the backup file to restore from. - -blocksize
: Sets the block size for the filesystem. - -c: Checks the integrity of the filesystem and undoes any invalid changes without writing back to the device.
- -d: Does a dry run and shows the changes that would be made without actually performing them.
- -f: Forces the operation even if there are errors.
- -n: Turns off journal checking.
- -u: Undoes the last undo operation.
Examples
Undo a recent deletion:
e2undo /dev/sda1
Restore from a backup file:
e2undo -backup-file ~/backups/ext2.img /dev/sdb1
Check filesystem integrity without making changes:
e2undo -c /dev/sdc1
Dry run to preview changes:
e2undo -d /dev/sdd1
Common Issues
- Error: fsck failed with exit code: This can occur if the filesystem is corrupted beyond repair. Try using
fsck
to attempt repairs. - Error: Backup file not found: Ensure the specified backup file exists and is accessible.
- Error: Device not found: Verify that the specified device or filesystem is accessible.
Integration
Merge with findfs
command:
findfs -bce | xargs -n1 e2undo -c
This command chain checks the integrity of all Ext2/Ext3 filesystems on the system.
Related Commands
- fsck: Repairs filesystem errors.
- dumpe2fs: Dumps filesystem metadata.
- mke2fs: Creates a new Ext2/Ext3 filesystem.