Err Msg: "No Room for System on Destination Disk" with SYS (57730)

The information in this article applies to:
    Microsoft MS-DOS operating system 3.1
    Microsoft MS-DOS operating system 3.2
    Microsoft MS-DOS operating system 3.21
    Microsoft MS-DOS operating system 3.3
    Microsoft MS-DOS operating system 3.3a
    Microsoft MS-DOS operating system 4.0
    Microsoft MS-DOS operating system 4.01
    Microsoft MS-DOS operating system 5.0
    Microsoft MS-DOS operating system 5.0a
    Microsoft MS-DOS operating system 6.0
    Microsoft MS-DOS operating system 6.2
    Microsoft MS-DOS operating system 6.21
    Microsoft MS-DOS operating system 6.22

This article was previously published under Q57730


In the Microsoft MS-DOS user's manuals, the SYS command entry states that you do not need to reformat your disk when you upgrade to a later version of MS-DOS. SYS updates system disks even though the new system files are larger and must be broken up to fit in the available disk space.

However, when upgrading some system disks, SYS returns the following error message:

No room for system on destination disk


This error message is caused by one of the following:
    There is not enough free space anywhere on the destination disk for the relocatable part of the system files.


    Delete some files to make room for the system files. This is documented in Appendix F of the "Microsoft MS-DOS User's Guide and Reference" for versions 4.01 and earlier, under the "No room for system on destination disk" error message.
    A file occupies the first clusters of the disk on a non-system disk.


    If a disk utility is available to find which file(s) occupy the first clusters of the disk, erase or move those files to clear the space needed for the system.

    If you have the MS-DOS 5, 6, or 6.2 Upgrade, you can run Setup with the /M parameter.

    If the previous two options are not available, you must reformat the disk.
    The disk has an original equipment manufacturer (OEM) version of MS-DOS that does not use the Microsoft naming convention for the hidden system files.


    Contact the OEM supplier for an MS-DOS upgrade. You should continue running the OEM version of MS-DOS. However, if you must change to the Microsoft MS-DOS packaged product, see the information provided below.
    Cluster 2 is a lost cluster and cannot be used to hold IO.SYS.


    Run MS-DOS CHKDSK /F to correct the lost allocation unit.

    If you are using MS-DOS 6.2 or later, run SCANDISK.


There is a quick solution for the OEM MS-DOS problem mentioned above. This solution requires that you have a good understanding of MS-DOS, and that you have a third-party utility to remove the Hidden, System, and Read-Only attributes from the system files.

The MS-DOS SYS command looks for the files named IO.SYS and MSDOS.SYS on the destination disk. If these files are not found, because they do not exist or are named differently, SYS assumes the disk is not a system disk and attempts to install the new system files starting at cluster 2 (IO.SYS must be contiguous starting at cluster 2).

Some OEMs, such as IBM, use different names for the system files. To make SYS work with these disks, you can rename the two files to IO.SYS and MSDOS.SYS, as in the following example. (The following example uses IBM PC-DOS naming conventions.)

    Using a third-party attribute change utility, remove the Hidden, Read-Only, and System attributes from IBMBIO.COM and IBMDOS.COM. MS-DOS does not provide a utility to set or reset the Hidden and System attributes of a file, because you should not tamper with these files.
    Rename these two files as follows:

    ren io.sys
    ren msdos.sys

    Use the attribute utility to replace the Hidden, Read-Only, and System attributes.
The SYS command should work correctly after you make the above changes. The SYS command does not transfer COMMAND.COM to the destination floppy disk in MS-DOS versions 3.3x through 4.x, so you must do that manually.

Modification Type: Major Last Reviewed: 5/10/2003
Keywords: KB57730