Ontrack Data Recovery

UNIX / Linux File System Recoverability

 
Data Recovery Help Now!
Web Request Form
Call 1800 872 259
    Bookmark this page:

Forty years ago there was only one type of computer system. Today, the variety of computer systems has grown into its own world. Technological advances have been extraordinary in the hardware side of the industry. Yet while we marvel at ever-faster storage devices and greater processing power, it’s good to remind ourselves that we also need amazing new operating systems and file systems to manage the hardware and data.

The varied UNIX file systems and the recent Linux file systems are the subject of this month’s newsletter. While there are many machines using Microsoft file systems, UNIX file systems have been around much longer. UNIX operating systems have proved to be stable environments for companies. In fact, most of the servers that are part of the infrastructure of the Internet are running a variant of the UNIX operating system. Recently, Linux has proved to be a stable alternative for companies running database servers or other business applications.

The Linux operating system is geared towards the server environment, and increasingly the desktop environment. Linux has been true to its UNIX roots and continues to grow by virtue of its ‘Open-Source’ status. The quality of being Open-Source is that no single company controls the operating system. Some of the smartest minds in computer science have devoted their careers to developing the operating system and file systems for the UNIX and Linux platforms.

At Ontrack, we realize the importance of providing data recovery support for these business systems. What support does Ontrack offer for the UNIX and Linux world?

To help answer that, let’s get some background first.

History of the UNIX File System

Before the Seventies, the operating system was custom-designed for the hardware of the machine and its purpose—which often was a sole purpose. For example, a machine might have been used strictly to track a city’s water usage and billing. This created very esoteric computing systems. The UNIX operating system was designed in the late Sixties and was implemented in the early Seventies.

The history of UNIX and the C programming language are closely intertwined. Ken Thompson and Dennis Ritchie are the key people that worked on these projects for Bell Labs. For an interesting read about the history of UNIX, see History of Unix

The beauty of UNIX was that it allowed hardware companies to concentrate design efforts on hardware without having to design a custom operating system to go with it. When UNIX started out, Bell Labs did not market it as a new operating system; instead it gave the code to universities for training computer science courses. It was in this environment that UNIX matured. Computer scientists were constantly changing and refining the operating system and file system. Why? Because they could. UNIX as an operating system was an open standard based OS. All of a sudden, UNIX became a strong alternative to mainframes. By the Eighties and Nineties, security enhancements began to appear in the form of access control to files. These security features proved that UNIX could be accepted for a business system.

Concentrating on the file system point of view, UNIX brought a number of improvements to the design of file systems. (More information on Unix File System development)
What did Unix contribute to file system structure?

  • Directory structure is hierarchical.
  • Access to files is controlled by attributes (i.e., Read, Write, Append, Execute, Delete, Set Privilege, Set Owner)
  • Data blocks are allocated by inodes. (An inode is a link between a file name and the location of the data.)
  • Inodes are grouped in Cylinder Groups.
  • A SuperBlock is placed at the beginning of a volume. It defines where the cylinder groups are and how many inodes there are in each.

The UNIX file system has two design goals—efficiency and performance.

  • Efficiency means how the file system is allocating blocks (groups of sectors) and directory organization (how and what information the file system is storing about your data files).
  • Performance means how the file system is using the hardware of the computer to perform file read and writing operations. Performance can involve using disk cache algorithms or read-ahead or free-behind file writing techniques.

Recovering UNIX/Linux File Systems
Ontrack has built a suite of specialized UNIX/Linux recovery tools to repair the file system so that files can be accessed. Ontrack can currently work on 40+ variants of UNIX file systems. (i.e EXT2/3 , XFS, EFS, VxFS, UFS, FFS, AIX, JFS, etc.) Our development staff is constantly working on improving our data recovery tools and research will begin into the Linux Rieser file system (RieserFS) and Linux/XFS in the near future.

During the evaluation and recovery of one of these types of file systems, the stages of recovery are: (1) Partition and volume verification, (2) Logical file system scan, error investigation, and repair, and (3) Volume reports.

Ontrack does very well with recoveries on these file systems. However, there are situations where the quality of the recovery cannot be verified. One of these situations is when a file system repair utility has made permanent changes to the file system. Our tools are unable to undo these changes because specific data has been changed that describes where the file physically resides on the volume. Most of the UNIX file system variants also permanently remove inode entries when data is deleted. (The exception to this is the Linux EXT2 file system. Ontrack has developed tools to recover deleted data from this file system.)

Situations where files have been overwritten present the same problem; specific information that points to the data has been overwritten. All is not lost in circumstances like this. Ontrack has tools that will bypass the file system and look for specific file types - sometimes known as the magic number or unique identifier of a file. In these cases, the file names may be unrecoverable, however the file data may be readable. Finally, we can also perform an ASCII dump (ASCII is a code for representing English characters as numbers, with each letter assigned a number for 0 to 127.) This will find all the ASCII characters in the free space of the volume and put that into a text file. This type of recovery is excellent for databases, email, and custom script files.

Custom capabilities
Ontrack also provides the option to have our software development engineers customize our toolset for the file system your variant of UNIX uses. These development efforts take time to complete; yet the effort may be your client’s only solution.
Ontrack has over fifty developers that work on data recovery tools and related software. These software products are supported by software Quality Assurance testing department that goes through all developed software to test for quality and functionality.


The Ontrack Edge
What makes Ontrack the choice for data disasters? Companies chose Ontrack because of experience, dedication to research and development, and quality recoveries. Ontrack has realized that data recovery is a science—a discipline that requires trained experts. Using a company that claims to specialize in data recovery and uses off-the-shelf recovery tools does not guarantee success.

Ontrack researches and studies these file systems and then designs a suite of tools that will recover the data. Ontrack also invests in training because building automated tools is not the answer to complete data recovery—knowledgeable, experienced data recovery engineers who work until all of the data is recovered is the answer for quality. We take the side of the customer and do all we can to retrieve the data. The Ontrack edge provides you and your clients the best solution to data loss.



(based on Operating System Concepts Sixth Edition © 2001)