Is There a UNIX / Linux unerase / undelete Command?

last updated in Categories , , , , , , , , , ,

Q. Is There a UNIX / Linux unerase or undelete command? How do I undelete files under a UNIX / Linux system?

A.. Short answer – no.

There is no “unerase” or “undelete” command in Linux / *BSD / Unix like operating system such as AIX or HP-UX . The best solution is to restore file from a backup. You can also use a data recovery tool but there is no guaranty you will get back the data. Always use following method to avoid problems:
=> Make regular backups and file system snapshots

=> Never ever login as root for non admin related tasks

=> Always use a regular user account for all normal tasks

=> Alias rm / mv / cp command as rm -i / mv -i
alias cp='cp -i'
alias mv='mv -i'
alias rm='rm -i'

=> Make important file copy before editing

=> Use RAID 6 or above hardware card as additional protection for file server

=> Keep files safe from accidental overwriting with noclobber under BASH shell

=> Make a Linux File unchangeable ( unalterable ) so that no one can modify it – including root user

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

5 comment

  1. you can also use the -b option when using rm mv or cp
    so that there will be a backup if you want to restore it, if now then you can erase it later when you are sure you won’t use it.

  2. WRONG: never use “alias rm=’rm -i'”. Gives you the habit to use “rm *” all too often. Can be distastrous on accounts where this alias is not defined. (Own experience :( )

  3. I tried many GUI shareware and free programs, both windows and linux with no luck. Then found ext2undel and it work great. Almost all 1600 + jpg’s on an USB hard drive easily recovered.

    Still, have a question? Get help on our forum!