BACKUP (MS-DOS)

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Software)
 
(2 intermediate revisions by one user not shown)
Line 1: Line 1:
 
{{FormatInfo
 
{{FormatInfo
 
|subcat=Backup
 
|subcat=Backup
|extensions={{ext|@@@}}, {{ext|@02}}, {{ext|001}}, others
+
|extensions={{ext|@@@}}, {{ext|@01}}, {{ext|001}}, others
 
}}
 
}}
The '''BACKUP''' command in MS-DOS backed up the contents of a hard disk to files of a proprietary, undocumented format which could be returned to their original file structure using the RESTORE command.
+
Some versions of [[MS-DOS]] have a '''BACKUP''' command, whose main use is to back up some or all of the contents of a hard disk to a set of floppy disks. The '''RESTORE''' command is used to restore files. The backup format was undocumented.
  
 
There are at least two quite different formats:
 
There are at least two quite different formats:
Line 13: Line 13:
 
== Format details ==
 
== Format details ==
 
=== Format details - 2.0 ===
 
=== Format details - 2.0 ===
<!-- Files generally had extensions consisting of three digits (incremented consecutively across the files of the backup set), with a control file called ''BACKUPID.@@@''. The aim was to store the entire file and directory structure of a disk onto a set of files that each fit on a floppy disk. -->Backed up files usually keep their original filenames. The data is modified, to add a header. In case of a duplicate filename (because the same filename appeared in different directories), a replacement extension like '''.@02''' is used. A file may be split into multiple backup files, each containing a fragment of its data.
+
Backed up files usually keep their original filenames. The data is modified, at least to add a header. In case of a duplicate filename (because the same filename appeared in different directories), a replacement extension like '''.@01''' or '''.@02''' is evidently used. A file may be split into multiple backup files, each containing a fragment of the original data.
  
 
An extra BACKUPID.@@@ file is written to each disk, containing general information about the backup. It doesn't contain any critical information.
 
An extra BACKUPID.@@@ file is written to each disk, containing general information about the backup. It doesn't contain any critical information.
Line 19: Line 19:
 
=== Format details - 3.3 ===
 
=== Format details - 3.3 ===
 
Just two files are written to each floppy disk: CONTROL.001 (or .002, etc.), and BACKUP.001 (.002, etc.). The CONTROL file contains information about the file data in the corresponding BACKUP file.
 
Just two files are written to each floppy disk: CONTROL.001 (or .002, etc.), and BACKUP.001 (.002, etc.). The CONTROL file contains information about the file data in the corresponding BACKUP file.
 +
 +
== Identification ==
 +
=== Identification - 2.0 ===
 +
BACKUPID.@@@: The first byte of the file is either {{magic|0xff}} or {{magic|0x00}}. The file is exactly 128 bytes in size. (TODO: More info)
 +
 +
Data files: It's possible to heuristically identify data files from their contents, but they don't really have any distinctive markings. The first byte of a file is either {{magic|0xff}} or {{magic|0x00}}. Non-fragmented archives start with bytes {{magic|ff 01 00}}. (TODO: More info)
 +
 +
=== Identification - 3.3 ===
 +
A CONTROL.* file starts with byte {{magic|0x8b}}, followed by ASCII "{{magic|BACKUP&nbsp;&nbsp;}}" (which ends with two spaces).
 +
 +
The BACKUP.* files can't be identified from their contents, as they contain nothing other than the contents of the backed up files.
  
 
== Specifications ==
 
== Specifications ==
* [http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/dos/restore/brtecdoc.htm Tech docs from FreeDOS]
+
* [https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/dos/restore/brtecdoc.htm Tech docs from FreeDOS]
* One could presumably learn about the format(s) from the MS-DOS 4.0 source code, listed below.
+
* One could presumably learn about at least one of the formats from the MS-DOS 4.0 source code, listed below.
  
 
== Software ==
 
== Software ==
 
* [https://winworldpc.com/product/ms-dos/3x MS-DOS], at WinWorld
 
* [https://winworldpc.com/product/ms-dos/3x MS-DOS], at WinWorld
 
* MS-DOS 4.0 source code: [https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/CMD/BACKUP BACKUP], [https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/CMD/RESTORE RESTORE]
 
* MS-DOS 4.0 source code: [https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/CMD/BACKUP BACKUP], [https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/CMD/RESTORE RESTORE]
 +
* {{Deark}}
  
 
== Sample files ==
 
== Sample files ==
 +
2.0 format:
 
* {{DexvertSamples|archive/dosBackupFile}}
 
* {{DexvertSamples|archive/dosBackupFile}}
 +
* [{{DiscMasterURL|browse/30126/07.iso/c/c006}}] → *.ddi ([[DDI|DiskDupe]] format) → ...
 +
** Examples of split files are LNALLMS.BAT from parts 1 and 2, and BTPARSE.EXE from parts 2 and 3.
 +
 +
3.3 format:
 +
* &#x7b;{{CdTextfiles|pcblueii/PCBLUE/VOL583.ZIP|VOL583.ZIP}}, {{CdTextfiles|pcblueii/PCBLUE/VOL584.ZIP|VOL584.ZIP}}&#x7d; → ...
 +
* [{{DiscMasterURL|browse/15395/NSS_Collection.iso/3-103%20might%20and%20magic%20iii%20%20144}}] → *.imz → ...
  
 
== Links ==
 
== Links ==

Latest revision as of 12:44, 23 August 2025

File Format
Name BACKUP (MS-DOS)
Ontology
Extension(s) .@@@, .@01, .001, others

Some versions of MS-DOS have a BACKUP command, whose main use is to back up some or all of the contents of a hard disk to a set of floppy disks. The RESTORE command is used to restore files. The backup format was undocumented.

There are at least two quite different formats:

  • The format used by MS-DOS 2.0(?) through 3.2. We'll call it 2.0 format.
  • The format used by MS-DOS 3.3 through 5.x. We'll call it 3.3 format.

For the format used by MS-DOS 6.x's MSBACKUP.EXE utility, see Norton Backup.

Contents

[edit] Format details

[edit] Format details - 2.0

Backed up files usually keep their original filenames. The data is modified, at least to add a header. In case of a duplicate filename (because the same filename appeared in different directories), a replacement extension like .@01 or .@02 is evidently used. A file may be split into multiple backup files, each containing a fragment of the original data.

An extra BACKUPID.@@@ file is written to each disk, containing general information about the backup. It doesn't contain any critical information.

[edit] Format details - 3.3

Just two files are written to each floppy disk: CONTROL.001 (or .002, etc.), and BACKUP.001 (.002, etc.). The CONTROL file contains information about the file data in the corresponding BACKUP file.

[edit] Identification

[edit] Identification - 2.0

BACKUPID.@@@: The first byte of the file is either 0xff or 0x00. The file is exactly 128 bytes in size. (TODO: More info)

Data files: It's possible to heuristically identify data files from their contents, but they don't really have any distinctive markings. The first byte of a file is either 0xff or 0x00. Non-fragmented archives start with bytes ff 01 00. (TODO: More info)

[edit] Identification - 3.3

A CONTROL.* file starts with byte 0x8b, followed by ASCII "BACKUP  " (which ends with two spaces).

The BACKUP.* files can't be identified from their contents, as they contain nothing other than the contents of the backed up files.

[edit] Specifications

  • Tech docs from FreeDOS
  • One could presumably learn about at least one of the formats from the MS-DOS 4.0 source code, listed below.

[edit] Software

[edit] Sample files

2.0 format:

3.3 format:

[edit] Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox