Previous | Next

Troubleshooting Disks and File Systems

This section provides information for troubleshooting disk and tape drive problems, FAT32 problems, and file system problems.

For more information about using the Troubleshooting dialog box for File System Properties in the System option in Control Panel, see Chapter 26, "Performance Tuning."

Disks and Tape Drives

The system did not shut down cleanly, or the disk suffers a hard error.

ScanDisk will be run automatically when your system restarts. By default, a message will be displayed before ScanDisk starts. You can override this behavior by setting the AutoScan variable in the [Options] section of the Msdos.sys file:

There are performance problems with the floppy disk drive.

You can try preventing the floppy disk device driver from attempting to use first-in, first-out (FIFO). To do this, add the value ForceFIFO=0 to the following registry key:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\FDC \0000

Windows 98 cannot access the drive or reports 2 GB disk space on a larger drive.

Microsoft does not recommend using Windows 98 with a FAT16 volume larger than 2 GB created in Windows NT. On a dual-boot computer with both Windows 98 and Windows NT installed, you can read from and write to the drive, but you might experience strange results, such as programs reporting 0 bytes free space on the drive. However, you should not experience data loss when accessing a 4 GB drive.

Hard disk drive limited to 8 GB partition.

When you try to partition a drive that is larger than 8 GB in size, the maximum partition size may be 8 GB. This can occur if the hard disk controller does not fully support the interrupt 13 extensions. This information applies to both IDE and SCSI hard disk drives. For a hard disk that is larger than 8 GB and uses the FAT32 file system to be fully addressed, it must support interrupt 13 extensions. Io.sys tests for the presence of interrupt 13 extensions. If interrupt 13 extensions are not detected, the default CHS LBA limit of 7.9 GB is used.

To determine whether your BIOS supports interrupt 13 extensions, please refer to the drive’s documentation or manufacturer. Contact the drive controller’s manufacturer for information about a possible BIOS upgrade to a version of the BIOS that fully supports interrupt 13 extensions.

Disk utilities fail on a Windows 98 volume.

Disk utilities that were not designed for the Windows 98 VFAT file system can find unexpected values in fields that were once reserved for MS-DOS. Use disk utilities designed for Windows 98 instead. You might be able to use some earlier utilities by first running LFNBK, as described in "Using the LFNBK Utility for Temporary Compatibility" earlier in this chapter.

Problems occur after compressing the Windows 98 volume with Stacker.

Stacker version 4.0 and earlier does not recognize or accommodate long file names. If you compress your Windows 98 volume by using the Stacker DOS compression program, your desktop shortcuts will need to be repaired manually and you will also need to move User.dat from the host volume to your compressed volume. If you are using Stacker, do not run DriveSpace 3 or DoubleSpace.

Parameter value not in allowed range for Format.

If you specify a value that is not 1 or an exponent of 2, or if you specify a value that is larger than 64, Format returns this message:

Parameter value not in allowed range.

Specify a value in the correct range.

Backup does not detect your tape drive.

Microsoft Backup does not work with all tape drives. If you install Backup and get a message that your tape drive has not been detected, click the Help button and connect to Seagate’s Web site using the provided URL to see a list of supported tape drives.

Tape drive detection.

Plug and Play software does not detect tape drives. This is a function of the drivers provided with the Windows 98 Backup program, or the software that came with the drive. As a result, the tape drive may appear as an unknown device in Device Manager. If your backup software does not detect your tape drive, contact the company that wrote the software.

Tape drive compatibility.

If your tape drive does not appear in the list of supported drives located on Seagate’s Web site (click the Help button and connect to Seagate’s Web site using the provided URL), contact your tape drive manufacturer for information about backup software that you can use with Windows 98.

Running Zip Tools on an Iomega Parallel Zip Disk.

From within My Computer or Windows Explorer, if you right-click the Zip disk and then click Format, the Format window displays an option for you to do a full format of the drive. If you select this option, the following blue-screen fatal-exception error might occur:

A fatal exception 0E has occurred at 0028:C3C64C51 in 
VXD IOMEGA (01) + 00000CB5. The current application 
will be terminated. 

Pressing any key closes the Windows Explorer window.

To correct this problem, contact Iomega and obtain a new Iomega.vxd file. Using the Find command on the Start menu, find the old Iomega.vxd file and replace it with the newer version.

ScanDisk reports errors on files or folders made with different code pages.

If you have created or named files or folders while using different code pages, ScanDisk may report errors about these files or the folders they reside in. If you are affected by this, open ScanDisk’s Advanced dialog box and make sure Check Files For Invalid File Names is not checked. Note that turning off this option may inhibit ScanDisk’s ability to detect or repair seriously damaged folders.

The Drvspace or Dblspace /mount command in Autoexec.bat does not work.

This occurs because Windows 98 Setup deletes or renames the MS-DOS-based versions of Drvspace.exe and Dblspace.exe. To solve this problem, use scandisk /mount as the replacement command line in Autoexec.bat. The version of ScanDisk provided with Windows 98 has been enhanced for this purpose.

Installing program requiring specific drive letter.

Use the SUBST command to associate the required drive letter with the program’s installation folder. For example:

subst <drive>: <C:\dir>

FAT32

This section discusses problems and potential support issues that exist with FAT32. The list below summarizes some points to remember about FAT32:

Booting from a previous operating system.

The new file system is not backward compatible. You cannot access a FAT32 volume from any MS-DOS version before 7.1. Attempting to access a FAT32 volume with a previous version of MS-DOS will initiate a "Non-DOS Partition" error message. If you boot from a floppy with a previous version and all the drives are FAT32, you will not be able to access the drives. There is no problem accessing the C drive if the C drive is a 12-bit or 16-bit FAT.

You must have a Startup Disk from the new operating system.

Windows NT (version 4.0 or earlier) and FAT32.

Currently, Windows NT cannot access a FAT32 drive. You will get one of two messages.

If the capacity of the drive is greater than 4 GB:

The drive is not a valid partition.

If the capacity of the drive is less than 4 GB:

The drive is not formatted.
DriveSpace 3.

DriveSpace 3 and FAT32 are incompatible. DriveSpace 3 is included with Windows 98, and it has been modified to detect FAT32 drives, but it will not compress them. You can still compress FAT16 drives even if another drive is FAT32. DriveSpace 3 components are included in Windows 98.

DriveSpace 3 and Cluster Allocation Granularity.

Do not assume that since you reduce the amount of slack space at the end of the clusters, the capacity of a FAT32 drive should increase as much as if you were using DriveSpace 3. There are two components in DriveSpace 3 compression — tokenization and reduction of the cluster size.

There are no compression features in FAT32; just smaller clusters. Gained space is not a function of compression, but more a function of the files sizes on the drive and how many files are on that drive. If you do not have many files on the drive, there will not be a significant improvement in space. The point and advantage of FAT32 is efficiency.

Disk Manager.

Using Ontrack Systems Disk Manager product on a system that is booting from a FAT32 drive may result in a long pause at boot time and/or that the drive will be set to run in compatibility mode. With version 7.0x, you can use the /L=0 option with Disk Manager to avoid this pause.

If you are using an earlier version of Disk Manager, you should update to version 9.0 and use the /L=0 switch if you use FAT32. Contact Ontrack for an upgraded driver, or check their site on the World Wide Web.

Io.sys floppy disk support.

Io.sys floppy disk support had some problems that have been fixed. When Io.sys copied the BIOS Parameter Block (BPB) from a floppy disk into memory, some data structures were truncated and some fields were ignored based on assumptions that the media was a floppy disk. Also, initializing a drive as "other" (such as an external floppy) would always set up as a 12-bit FAT and discard bits identifying the total sectors or not examine the number of read/write heads.

The problems in building the BPB have all been fixed so that Io.sys now correctly copies all of the BPB fields out of the boot sector on the disk inserted in the drive. Also, Io.sys has increased less than 5 KB in size in conventional memory because of the changes in the real-mode kernel that accommodate FAT32 drives.

If a program was written to work around these problems on its own, you may need to obtain an update that recognizes FAT32. If you begin to experience external drive problems from an application or driver, test with Windows, not the application in question. You can obtain an update that recognizes FAT32 from the vendor.

Making sure a disk is formatted for a FAT32 system.

When you try to defragment a FAT32 file system drive, you may receive the following error message:

Windows cannot defragment this drive. Make sure the 
disk is formatted and free of errors. Then try 
defragmenting the drive again. ID No: DEFRAG0026

This can be caused by running an earlier version of Defrag.exe than the version included with Windows 98.

Invalid media error message when formatting a FAT32 partition.

When you try to format a FAT32 file system partition larger than 8,025 MB from within Windows 98, you may receive the following error message:

Verifying <xxx.xx>M
Invalid media or track 0 bad-disk unusable
Format terminated

where <xxx.xx> is the size of the partition.

This error occurs if there is a non-MS-DOS partition preceding the extended MS-DOS partition and the primary MS-DOS partition has been formatted using the real-mode Format.exe command. To resolve this issue, format the volume using the following steps.

To format the volume

  1. Click Start, click Shut Down, click Restart in MS-DOS mode, and then click OK.
  2. Type the following command
    format <drive>:
    

    where <drive> is the drive letter for the partition you want to format.

  3. Press ENTER.
  4. When the partition is formatted, type Exit to restart Windows 98.
You must run CVT1 to convert a drive to FAT32.

When you attempt to convert a drive to the FAT32 file system, you may receive the following error message:

You must run CVT1 to convert a drive to FAT32. In Windows, 
click the Start button, point to Accessories, point to 
System Tools, and then click the Drive Converter (FAT32) icon. 
The conversion was canceled.

This error message can occur if you attempt the conversion when in an MS-DOS window. When the computer is booted to a command prompt, run Cvt.exe by typing the following command:

cvt <drive> /cvt32

where <drive> is the drive to be converted.

Windows 98 partition types not recognized by Windows NT.

When you set up Windows NT on a computer that has Windows 98 preinstalled, the FAT partitions may be shown as unknown.

Windows NT cannot recognize primary partitions using the FAT32 format. Backup any data that you might need to save and then delete the partition(s) using Fdisk from either MS-DOS or Windows 98.

Windows 98 supports four partition types for FAT file systems that Windows NT cannot recognize. The partition type can be identified by the System ID byte in the partition table. This byte is located at the following offsets:

0x1C2 = Partition 1
0x1D2 = Partition 2
0x1E2 = Partition 3
0x1F2 = Partition 4

The four values used by Windows 98 that Windows NT does not recognize are as follows:

0x0B      Primary  Fat32 Partitions up to 2047 GB
0x0C      Same as 0x0B, uses Logical Block Address Int 0x13 extensions
0x0E      Same as 0x06, uses Logical Block Address Int 0x13 extensions
0x0F      Same as 0x05, uses Logical Block Address Int 0x13 extensions

The FAT partition types that Windows NT version 3.x and 4.0 can recognize are:

0x01      Fat12 < 10 megabytes
0x04      Fat16 < 32 megabytes
0x06      Fat16 > 32 megabytes
0x05      Extended (may be FAT, HPFS or NTFS)
CHKDSK.

CHKDSK will not find or repair errors on FAT32. CHKDSK is not being updated to repair the new file system, but it will display the file system statistics. Use the real-mode ScanDisk if you cannot get into Windows 98.

Application setup.

The standard API for determining the free space on a drive is being intercepted by shell32.dll. When installing to a drive larger than 2 GB or with more than 2 GB free, shell32.dll readjusts the values for 16-bit programs to run properly.

All properly coded programs should call the correct API for determining free space and existing disk space. There should be no problem installing 16-bit applications on a FAT32 volume. If the program hangs during installation or displays an error message indicating not enough space to install, the application is using a different API and you should obtain an update from the vendor.

ScanDisk.

Legacy versions of ScanDisk will not work on FAT32. You can receive a variety of error messages, but the following is the most common on that Windows 98 displays:

This version of Microsoft ScanDisk will work only with 
MS-DOS versions 5.0 and later.

With an old version of Scandskw.exe, Scandisk.exe, or Dskmaint.dll on the drive, you will also receive errors.

In both cases, you should use the file versions that come with Windows 98.

DRIVPARM.

DRIVPARM is a Config.sys command. The numbers entered for the /f, /h, /s, and /t switches were not checked to see if they were too large, now they are. The /f number must be < 10; the /h number must be < 256; the /s number must be < 64; and the /t number must be <= 1024.

Check Help for assistance with these parameters. There are three new switches that allow the setting of other device parameters. If none of these new flags is present, the call continues to do exactly what it did in previous versions.

/a:# - sectors/cluster, must be 1, 2, 4, 8, 16, 32, or 64
/v:# - number of reserved sectors
/r:# - number of root directory entries, must be a multiple of 16

A value of 0 means use the default value.

The new switches allow media of any type to be set, including 12-bit, 16-bit, and 32-bit FAT.

Important

It is strongly recommended that you specify /f:7 whenever using any of these new switches so that the media defined will have the 0F0h media byte value. /f:5 will give an error. The other /f:# are allowed, but may not work properly if their default media byte value is not 0F0h.

FAT32 Extension Changes

With the significant changes to the new file system, some previous extensions are no longer supported or have changed. The following list are extensions no longer supported.

SHARE.

SHARE is no longer supported in real mode under MS-DOS 7.1. Share services are a part of the IFS manager. VFAT uses them to provide full file sharing functionality. All MS-DOS-, Win16-, or Win32-based applications have full file sharing services available to it. As a consequence, the MS-DOS utility Share.exe is no longer necessary and is not provided in Windows 98.

FASTOPEN.

FASTOPEN support has been removed from the Io.sys. As with SHARE, it can be installed without error, but Io.sys never calls it.

Windows 3.1 File Manager.

Winfile.exe (the old Windows 3.1 File Manager) does not show accurate free drive space on FAT32 drives that are over 2 GB in size, nor will it display long file names.

Extensions Changed or Superseded

The following functions/extensions have new limitations on FAT32 media.

FCBs.

Support for File Control Blocks (FCBs) is reduced. The Open and Create functions only work for creating a volume label on a FAT32 drive. Programs still using FCBs for finding, deleting or renaming a file will still perform as expected.

Writing to a large file.

To increase a file to a size greater than 2 GB in size, the file must be opened with a new Extended Size flag. If such a file is not opened using this flag, write functions fail and you receive an "Error Access Denied" message.

Opening and creating a large file.

To open a file to a size greater than 2 GB in size, the file must be opened with a new Extended Size flag.

Errors arise from opening or changing files greater than 2 GB from non-FAT32 aware programs. You will need to obtain an upgrade from the application vendor.

Interrupts 25h/26h absolute disk read/write.

Many utilities use absolute disk reads and writes to function. Utilities include disk editors, backup programs, defragmenters, virus scanning software (especially Master Boot Record [MBR] and Boot Sector [BS] scanning), and repair utilities. These utilities can cause problems accessing a drive where the underlying foundation is unknown.

Int 25h/26h is superseded by Int 21h Function 7305h Ext ABSDiskReadWrite for FAT32 drives. As with Windows 95, Int 25h/26h is designed to fail by displaying a blue screen and informing the customer not to read/write to the disk. Programs designed for Windows 98 that invoke volume locking will need to be upgraded for FAT32. These utilities should continue to work properly on FAT16 drives. Also, Windows 95 utilities, including ScanDisk and Defrag, do not work on FAT32 volumes.

Free disk space.

If total or free disk space is greater than 2 GB, then 2 GB is returned. This function, GetDiskFreeSpace, is superseded by GetDiskFreeSpaceEx. GetDiskFreeSpace, for compatibility reasons, now never reports more than 1.999999 GB free under Windows 98.

The only time you might have a problem is if the program does not use GetDiskFreeSpace when determining free space on a volume. If a program has a problem with a drive larger than 2 GB, then it is probably using some other method to determine the free space. You should contact the manufacturer to update the program to FAT32.

Drive parameters.

MS-DOS and Windows keep track of drive characteristics in memory. For example, if you are copying a file to a floppy disk from Microsoft Excel, the application goes to this area to identify the media type. The information here is identical to the BIOS Parameter Block (BPB) in the Boot Sector. Properly written programs use this area of memory for that drive’s information instead of going to the BPB. This area of memory is called the Drive Parameter Block (DPB).

When applications need to know about a drive, such as drive letter, or size of its sector, they access the DPB and use its information accordingly. The functions used to get that information have been superseded. The new DPB contains the FAT32 values by extending the existing DPB to include new 32-bit values while keeping the existing 16-bit fields for compatibility.

On drives larger than 2 GB (or if there is more than 2 GB free), if an application is displaying strange behavior anytime a drive or disk is accessed, it could be getting incomplete information from the old DPB. Also, some programs assume the size of internal Windows data structures. For example, some applications assume that a DPB is 33 bytes long and will never change in size. Programs like this will need to be upgraded to recognize the new ExtDPB. Also, third-party drivers that depend on the old DPB to load will hang if they do not have an error handler in place to terminate the driver.

Dual boot and FAT32.

You cannot use FAT32 on a machine that you need to dual boot to the original release of Windows 95, Windows NT 4.0 (or earlier), Windows 3.1, or MS-DOS 6.x. These operating systems are unable to access a FAT32 partition. However, it is still possible to use dual boot where there are multiple hard disks installed.

InterLink.

The InterLink networking product contained in MS-DOS 6.x will not function properly in MS-DOS mode if you are using FAT32. If you are running InterLink as a server on a FAT32 drive, all connections and inquiries (such as DIR) result in the following error message:

"File allocations table bad, Drive X" 

Also, the InterLink Manager shows the incorrect total drive size. This problem does not occur on FAT16 drives. To see your FAT32 server, start your computer in protected mode with InterLink running.

You will need to use Direct Cable Connection to get connectivity.

Save to File (Hibernate) feature may be incompatible with FAT32.

On computers containing a BIOS made by Phoenix Technologies, you might not be able to use the Save to File feature if your primary (boot) drive is formatted using FAT32. If your PhDISK utility is earlier than version 5.0, you must obtain an updated version of the utility and an updated ROM BIOS from your computer manufacturer in order to use a Save to Disk file. With older versions of the ROM BIOS, your computer may be unable to start if it tries to read a Save to Disk file from a FAT32 drive. If this occurs, you must disable the Save to File feature in your ROM BIOS. This does not affect computers using a disk partition to store the Save to Disk data.

Ontrack Systems Disk Manager.

If you use the Ontrack Systems Disk Manager program on a computer with FAT32 drives, there might be a long pause when you start your computer and/or the drive will be set to run in compatibility mode. If you use version 9.0x, you can avoid this pause by using the /L=0 option with Disk Manager. To do this, carry out the following steps:

To use the /L=0 option with Disk Manager

  1. Start Disk Manager.
  2. Click the Maintenance menu, and then click Update Dynamic Drive Overlay.
  3. Add /L=0 to any other options that are already present.
  4. Save the settings, and then restart your computer.

    If you are running an earlier version of Disk Manager and you want to use FAT32, you should update to version 7.04 or later and use the /L=0 switch.

V Communications System Commander.

Versions 2.28 and earlier of V Communications System Commander are incompatible with FAT32. If your primary (boot) hard disk uses FAT32 exclusively, you must obtain version 3.0 or later of System Commander.

Iomega Jaz tools may be incompatible with FAT32.

If you format an Iomega Jaz disk using FAT32, you may need to obtain updated versions of the Jaz tools. Older versions of the tools do not support FAT32 Jaz disks properly. As a result, the eject, write-protection, and password-protection options will be disabled. Updated versions of these tools that are compatible with FAT32 are available from Iomega, and from the Microsoft Windows Driver Library contained on the Windows CD-ROM disk and available for download from various online services.

Syquest Techology, Inc. device drivers.

Older versions of the Squatdvr.sys and Sqdriver.sys device drivers are incompatible with this version of Windows and will hang when your computer starts if your primary (boot) hard disk uses FAT32. You must remove the associated DEVICE= line from your Config.sys file in order to start your computer from a FAT32 drive. Updated versions of these drivers that are compatible with FAT32 are available from Syquest, and from the Microsoft Windows Driver Library contained on the Windows compact disc and available for download from various online services.

File Systems

Troubleshooting using the File System property sheet.

If you have programs that do not respond properly to the Windows 98 file system, there are settings you can use to isolate the problem areas.

Caution

It is strongly recommended that only advanced users and system administrators change the settings in this procedure.

To change the settings of the File System Troubleshooting property sheet

  1. In the Control Panel, double-click System, and then click the Performance tab.
  2. Click Advanced, and then click File System.
  3. Click the Troubleshooting tab.
  4. Click the setting you want to test. The switch settings are described in Table 10.10.
  5. Click OK and test to determine whether the setting selected solves the problem.

If the problem is not solved, repeat the prior steps, choosing a different setting, until the problem is identified.

Table 10.10 Debugging switch settings for file systems

Switch Description
Disable protected-mode hard disk interrupt handling Windows 98 captures the Int13h interrupts and processes them with a 32-bit virtual driver. If your program is having intermittent disk access problems, you may want to turn off this functionality. The program may then handle the Intl3h interrupts. This usually results in slower hard disk access, but it may solve problems with certain programs.
Disable synchronous buffer commits This setting changes the behavior of the Commit File call. This setting should only be used when requested by the vendor of a specific program. Using this setting may decrease system reliability.
Disable all 32-bit protected-mode drivers If you have a hard drive that is not completely compatible with Windows 98 and you are having problems accessing that drive, consider disabling the protected-mode drivers. This setting turns off the protected-mode drivers and enables the real-mode drivers. Again, this may result in slower hard drive access times.
Disable write-behind caching for all drives This turns off the write caching functions. Caching is only performed on reads from the drives. Disabling the write-behind cache greatly slows down the processing of writing (saving) data to the drives, but it is safe. When a program indicates that data is written to the disk, the data is on the disk and not in a cache waiting to be written to the disk. If you are working in an environment where the quality of electrical power is questionable, for example, if there are frequent power spikes, brownouts, or power failures, and the data being written to the drive is critical, you may opt for this setting.

The 8.3 file name alias was changed.

This can happen when you use options such as Copy, Backup, or Restore. For example, if a file with the name LongFileName is associated with an alias LONGFI~2, and this file is copied to a different directory by using the following:

copy LongFileName \TMP\LongFileName

Then the alias associated with this file can become LONGFI~1, if such an alias is not already present in the target directory.

The long file name was destroyed.

This can happen when transferring files to or from file systems that do not support long file names, when running file searches, or when using certain disk utilities. The long file name cannot be restored.

A long file name was lost after the file was edited on another computer.

This occurs because down-level file systems are not aware of the long file name extensions to the FAT file system.

Hard disk device drivers cause the computer to stall.

The I/O Supervisor, which loads hard disk (block) device drivers, requires the driver’s files (having file name extensions PDR, MPD, VXD, and .386) to be located in the System\Iosubsys subdirectory of the \Windows directory.

If the computer locks up during startup or hardware detection, try the following:

Long file names do not work correctly on DEC PATHWORKS servers.

Long file names do not work correctly on Digital Equipment Corporation (DEC) PATHWORKS servers up to and including version 5.0b. You will be able to create and delete long file name files and make and remove long file name folders, but the files and folders will not appear when you use the DIR command, or when you open an Explorer window to the PATHWORKS server. PATHWORKS server version 5.00 EC01 corrects this problem and is available from DEC.

Virus-detection utilities do not remove a virus.

In general, virus-detection utilities created from earlier versions of Windows can detect but not clean viruses from Windows 98. This is because virus-detection utilities use low-level writes to repair the disk. MS-DOS-based utilities can still be run using the lock command.

Tip

Long file names can cause problems for some disk utilities. Be sure to use disk utilities that are long file name-aware. If you are not sure whether your utility is long file name-aware, consult your disk utility documentation. If long file names are not mentioned, then your utility probably does not support long file names.

Using a down-level file system command (such as copy or rename) rather than the Windows 98 equivalent will destroy a long file name.

Because the root directory is limited to 512 entries, you can fill the root directory with fewer files by using long file names because each long file name takes more than one entry in the directory.