APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

A Potential Disaster Using CPIO

We have a shell script that we use to restore files from our nightly backup tape. This script uses 'cpio' . There is a potential disaster waiting to happen if you are prompted to rename the file you want to restore. I believe most UNIX variants (We have SCO Openserver 5.0) interpret a response with a single period to restore the file with the same path and name. The biggest error of my life occurred when I accidentally entered two consecutive periods {..}. What happened was that 'cpio' copied my file that I was trying to restore over the top of {..} (parent directory indicator) in the root directory. All heck broke loose after that. It took a while to figure out what happened and almost all night to fix it. We actually at one point were considering re-loading the operating system and restoring all our files from the night before. What was really scary is that 'cpio' would not work at that point so there was no way to restore any files. Also 'ls', 'pwd', did not work along with any other commands that created temporary work files (quite a few).

If this ever happens to someone (I would not wish this on anybody's worst enemy) the way to fix it is to first unlink {..} from {.} and then remove {..} (UNIX will not allow you to remove it unless it is unlinked first) and then link {..} back to {.} . In other words unlink dot dot from dot and then remove dot dot and then link dot dot back to dot (say that out loud and any layman will run for cover).

This seems like a very easy error to happen especially if you hold down the period key too long. I wonder if this has ever happened before or if there is some full proof measures to prevent this from happening (even if you are superuser).

Publish your articles, comments, book reviews or opinions here!

Copyright July 2000 Ron Kopp All rights reserved



Got something to add? Send me email.





(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> -> A Potential Disaster Using CPIO by Ron Kopp




Increase ad revenue 50-250% with Ezoic


More Articles by © Ron Kopp



Kerio Samepage


Have you tried Searching this site?

Unix/Linux/Mac OS X support by phone, email or on-site: Support Rates

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us





The last bug isn't fixed until the last user is dead. (Sidney Markowitz)

I define UNIX as 30 definitions of regular expressions living under one roof. (Donald Knuth)







This post tagged: