Ghost Solution Suite

 View Only
  • 1.  ghost32 -crc32 fails consistently in winpe 2.0

    Posted Apr 13, 2007 11:55 AM
    • crc32 fails consistently in winpe 2.0 with either ghost32 v8.3 or v11.0.
    • crc32 reports "batch mode crc32 failed"
    • ghost.ls reports "NTFS volume contents differ"
    • It does not seem to matter if ghosting from a mapped network drive or locally between partitions on the unit.

    We had wanted to move from Winpe 1.5 to Winpe 2.0.  Our ghosting and crc32 checks worked using Winpe 1.5 (2005), but now using Winpe 2.0 the ghosting succeeds and the crc32 check consistently fails.

    We had thought that perhaps moving to a newer version of ghost32 (v11.0) might fix the problem, but it has not.

    Test results:

    -create a crc of the partition to be imaged before it is imaged.

    -create a crc during the imaging process.

    These crc values are both different.

    -re-image the ghosted image to a partition and after imaging create another crc of the image in the partition.

    -the crc is different from both of the previous crc values.  

    EVERY CRC GENERATED HAS A DIFFERENT VALUE.

    EVERY CRC GENERATED HAS A DIFFERENT VALUE , IT DOES NOT SEEM TO MATTER WHAT GHOST SWITCHES ARE USED TO CREATE THE IMAGE FILES, WHEN GHOSTING THE IMAGE FILES TO A PARTITION, THEN DOING A CRC32 CHECK AGAINST THE CRC GENERATED WHEN CREATING THE IMAGE FILES, FAILS CONSISTENTLY.  THERE HAS NOT BEEN 1 INSTANCE WHERE THE CRC32 CHECK HAS SUCCEEDED IN WINPE 2.0.

    example of ghosting a partition to image files (one partition on hard drive)

    ghost32 -clone,mode=pdump,src1:1,dst=..\DISK.IMG -fcr -Z9 -FX -sure -autoname -split=688

     

    example of ghosting image files to a partition, scenarios tried:(one partition on hard drive)

    --Each of these lines successfully images the partition

    ghost32 -clone,mode=load,src=..\disk.img,dst=1:1 -sure -autoname -fni 

    ghost32 -ntc- -clone,mode=load,src=..\disk.img,dst=1:1 -sure -autoname -fni

    ghost32 -ntil -clone,mode=load,src=..\disk.img,dst=1:1 -sure -autoname -fni

    ghost32 -ntc- -ntil -clone,mode=load,src=..\disk.img,dst=1:1 -sure -autoname -fni

    --the .. is not the actual location from which the image files reside, just for example.  Actually it is a mapped network drive. 

    --we have also tried slowing the imaging down using a 100mbps lan card, with no change.

    example of crc32 check that fails consistently and has not worked 1 time in Winpe 2.0.

    ghost32 -CRC32,action=pverify,crcfile=.\ghost.crc,vexcept=.\lst.exc,vlist=ghost.ls -sure -autoname

    --this check runs to 100% completion every time before generating a "batch mode crc32 failed" message.

    --the ghost.ls file that is generated during the crc check reports, "NTFS VOLUME CONTENTS DIFFER".

     

     

    Things noticed that are different from Winpe 1.5 and Winpe 2.0:

    --when imaging to a newly formatted ntfs partition, after imaging in winpe 1.5 , one can navigate to that partition and there is no data or files present, until a reboot. (the crc32 check here works)

    --when imaging to a newly formatted ntfs partition, after imaging in winpe 2.0 , one can navigate to that partition and there is data and files present, before a reboot. (the crc32 check here fails every time and has not worked once)

     

    Is ghost32 v8.3 or v11.0 incompatible with Winpe 2.0?

    Example GhostErr.txt

    *********************************
    Date   : Wed Apr 11 01:25:23 2007
    Error Number: (11114)
    Message: Ghost Batch mode CRC32 operation failed.
    Version: 11.0.0.1502 (Dec  4 2006, Build=1502)
    OS Version: Professional  (Build 6000)
    Command line arguments: -CRC32,action=pverify,src=1:1,crcfile=.\GHOST.crc:1,vexcept=.\lst.exc,vlist=ghost.ls -sure -autoname
    Active Switches :
          AutoName
    PathName            :
    DumpFile            :
    DumpPos             : 0
    FlagImplode         : 0
    FlagExplode         : 0

    CloneSrc            : 1
    BatchPartSrc        : 1
    BatchPartMSrc       :

    CloneDst            :
    BatchPartDst        : 1

    Operation Details :
     Total size.........3368
     MB copied..........3368
     MB remaining.......0
     Percent complete...100%
     Speed..............1642 MB/min
     Time elapsed.......2:03  
     Time remaining.....0:00  

    Program Call Stack
    AbortLog
    Generic_Abort
    CRC32PartVerify
    CopyMainline
    AttemptOperation
    sub_main
    main

    Call Stack
    Address            Frame              Logical Addr              Module
    0x0000000077820f34 0x000000000012d3bc 0x0001:0x000000000005ff34 X:\windows\system32\ntdll.dll
    0x000000000012d6c0 0x000000000012d3c0 0x0000:0x0000000000000000
    0x000000000043acd9 0x000000000012d6c0 0x0001:0x0000000000039cd9 x:\LOADIMG_TOOLS\GHOST32.EXE
    0x000000000052e999 0x000000000012da2c 0x0001:0x000000000012d999 x:\LOADIMG_TOOLS\GHOST32.EXE
    0x000000000052e1ab 0x000000000012eaf8 0x0001:0x000000000012d1ab x:\LOADIMG_TOOLS\GHOST32.EXE
    0x000000000052d7d9 0x000000000012f218 0x0001:0x000000000012c7d9 x:\LOADIMG_TOOLS\GHOST32.EXE
    0x000000000052f4aa 0x000000000012f434 0x0001:0x000000000012e4aa x:\LOADIMG_TOOLS\GHOST32.EXE
    0x0000000000545e28 0x000000000012f520 0x0001:0x0000000000144e28 x:\LOADIMG_TOOLS\GHOST32.EXE
    0x0000000000401e96 0x000000000012f5ac 0x0001:0x0000000000000e96 x:\LOADIMG_TOOLS\GHOST32.EXE
    0x0000000000401c3f 0x000000000012f5c8 0x0001:0x0000000000000c3f x:\LOADIMG_TOOLS\GHOST32.EXE
    0x00000000004043d0 0x000000000012f858 0x0001:0x00000000000033d0 x:\LOADIMG_TOOLS\GHOST32.EXE
    0x000000000040383d 0x000000000012ff50 0x0001:0x000000000000283d x:\LOADIMG_TOOLS\GHOST32.EXE
    0x0000000000410e63 0x000000000012ffa0 0x0001:0x000000000000fe63 x:\LOADIMG_TOOLS\GHOST32.EXE
    0x0000000076dc3833 0x000000000012ffac 0x0001:0x0000000000042833 X:\windows\system32\kernel32.dll
    0x00000000777fa9bd 0x000000000012ffec 0x0001:0x00000000000399bd X:\windows\system32\ntdll.dll
    End Call Stack


    Start heap available: 708595712
    Cur   heap available: 707153920
    Total Memory:         1062731776

    Allocated
     33500 ..\ghost.cpp:1394
    Free

    Fat details:

    NTFS details:
    ----------------

    NTFS Global Flags:
    ----------------
     contiguousWrite=1 forceDiskClusterMapping=0
     inhibitCHKDSK=1 ignoreBadLog=0 ignoreCHKDSKBit=0
     enable_cache=0 xfrbuflen=32768
     last_attr_type = 0
     loadExact = 0
    ----------------

    Disk Info :
     remote.............0
     drive..............0
     sectorsUsedCount.......156297216
     estimatedUsedCount.....6899617
     numPartitions..............1
     Version............0

     # Ord Boot Id Ext     First        Num       Last       Used NTFS
     0  0    0   7 No       2048  156297216  156299264    6899616 Yes

    Disk Info :
     remote.............0
     drive..............0
     sectorsUsedCount.......0
     estimatedUsedCount.....0
     numPartitions..............0
     Version............0

     # Ord Boot Id Ext     First        Num       Last       Used NTFS

    Fixed Drives

    Drive 0 IC25N080ATMR04-0       MRA401K6J4ZDDH
    WinNT (Active)
    Total Sectors            156301488
    Bytes per Sector         512
    MB                       76319
    Cylinders                9729
    Heads                    255
    Sectors per Track        63
    Successful IO Count      128329

    Drive 1 SanDisk Cruzer Mini 0.1
    ASPI
    Total Sectors            2001888
    Bytes per Sector         512
    MB                       977
    Successful IO Count      0

    WinNT (Active)
    Total Sectors            2001888
    Bytes per Sector         512
    MB                       977
    Cylinders                124
    Heads                    255
    Sectors per Track        63
    Successful IO Count      8

    Remote Drives
    AsyncIo : 0
    Image Devices

    Key[1]   1.1:
    Key[2]   1:1
    Key[3]   C:
    Path     C:
    Desc     C: 1.1: []
    Type     NTFS
    Disk     0
    Offset   2048

    Key[1]   2.1:
    Key[2]   2:1
    Key[3]   F:
    Path     F:
    Desc     F: 2.1: [TEST]
    Type     FAT
    Disk     1
    Offset   245

    Key[1]   P:
    Path     P:
    Desc     P: [SPCSPROD]
    Type     Network

    Key[1]   X:
    Path     X:
    Desc     X: [Boot]
    Type     Disk

    Key[1]   Z:
    Path     Z:
    Desc     Z: [Global]
    Type     Network

    Key[1]   @CD-R1
    Path     @CD-R1
    Desc     @CD-R1 TEAC    DW-224E-C      
    Type     DVD


    DiskManager diagnostic...
    =========================

    Fixed Drives

    Drive 0 IC25N080ATMR04-0       MRA401K6J4ZDDH
    WinNT (Active)
    Total Sectors            156301488
    Bytes per Sector         512
    MB                       76319
    Cylinders                9729
    Heads                    255
    Sectors per Track        63
    Successful IO Count      128329

    Drive 1 SanDisk Cruzer Mini 0.1
    ASPI
    Total Sectors            2001888
    Bytes per Sector         512
    MB                       977
    Successful IO Count      0

    WinNT (Active)
    Total Sectors            2001888
    Bytes per Sector         512
    MB                       977
    Cylinders                124
    Heads                    255
    Sectors per Track        63
    Successful IO Count      8

    FilesystemManager diagnostic...
    ===============================

    Volume 1
    VolumePos: 2.1:
    DriveLetter: F:
    Description:  976.38MB Primary Disk 1 Offset  122.50KB  976.38MB SanDisk Cruzer Mini 0.1
    Type:        fsfFat32
    Name:        TEST

    Volume 2
    VolumePos: 1.1:
    DriveLetter: C:
    Description:   74.53GB Primary Disk 0 Offset       1MB   74.53GB IC25N080ATMR04-0       MRA401K6J4ZDDH
    Type:        fsfNtfsWindowsXP
    Name:       


    FilesystemMounter diagnostic...
    ===============================


    LfoFilesystemManager diagnostic...
    ==================================

    Filesystem Index: 0
    Filesystem Descriptor:
     ID's:
       ID Type: 2
       ID: C:
       ID Type: 1
       ID: 1.1:
     DriveType: 4
     FilesystemInfo:
       formatType: 8
       volumeName:

    Filesystem Index: 1
    Filesystem Descriptor:
     ID's:
       ID Type: 2
       ID: F:
       ID Type: 1
       ID: 2.1:
       ID Type: 4
       ID: TEST:
     DriveType: 2
     FilesystemInfo:
       formatType: 3
       volumeName: TEST

    Filesystem Index: 2
    Filesystem Descriptor:
     ID's:
       ID Type: 2
       ID: P:
     DriveType: 16
     No FilesystemInfo structure.
     Filesystem has no VolumePtr

    Filesystem Index: 3
    Filesystem Descriptor:
     ID's:
       ID Type: 2
       ID: X:
     DriveType: 4
     No FilesystemInfo structure.
     Filesystem has no VolumePtr

    Filesystem Index: 4
    Filesystem Descriptor:
     ID's:
       ID Type: 2
       ID: Z:
     DriveType: 16
     No FilesystemInfo structure.
     Filesystem has no VolumePtr


    *********************************



  • 2.  RE: ghost32 -crc32 fails consistently in winpe 2.0

    Posted Apr 15, 2007 06:59 PM
    Hi Mark,
     
    In the GSS 2.0 release a new switch was added to Ghost which prevents Ghost from notifying the OS of the new disk layout after a clone operation as the OS can access or change files causing the CRC check to return a false result.
    The switch is: -noOsLayout
    Try using the CRC file you created during the image creation, and restore with the -noOsLayout switch then perform the CRC check.
     
    For further info please reffer to the GSS2.0 readme.txt under 'Ghost disk layout switch'.
     
    Hope this helps,
    Morgan


  • 3.  RE: ghost32 -crc32 fails consistently in winpe 2.0

    Posted Apr 16, 2007 02:04 PM
    Thank you for the reply.  I have tried your suggestion.  I am ghosting image files to a single partition on the hard disk.  I do a crc32 check and "NTFS Volume Contents Differ".  Even with the -NoOsLayout switch. 
     
    I first clean the disk using diskpart
     
    next create a primary partition, assign it letter=c, and format ntfs quick with diskpart
     
    ghost32 v11.0  into new partition
     
    crc check and fails every time consistently.  This same image works just fine in winpe 2005 with ghost v8.3.
     
    Now in winpe 2.0 it never works.  The CRC always fails.  Crc is always different.
     
    Ghost disk layout switch
    ------------------------
    By default, Symantec Ghost informs the operating system about
    the disk layout after a clone operation. However, this might
    cause the crc files created by Symantec Ghost to return a false
    result, i.e. that the disks are not identical when they are
    identical.
    For example, after an image-to-disk restore, a crc32 verify
    operation might return an inaccurate crc result because WinPE
    could change the destination file systems on the drive.
    In a disk-to-disk copy operation under WinPE, the source disk
    remains mounted by Windows. Therefore a CRC create on the source
    disk and then a verify on the destination disk may return an
    inaccurate crc result because WinPE could change the source drive.
    The -noOsLayout switch will prevent Ghost from updating the
    operating system with the destination disk changes. However
    the source is still mounted by Windows and therefore the
    CRC value may change due to system file changes by Windows.
    If the source image and destination disk have similar
    partition layouts, then to ensure the crc checks do not give
    false negatives, it is also advisable to use GDisk32 to
    delete all existing partitions on the destination disk.
    This prevents the operating system from mounting a file system
    driver once the clone is complete. This can happen on
    similarly partitioned disks even when you use the
    -noOsLayout switch.
     
    It seems as though i need a way of creating a partition then dismounting the new partition, then ghost and prevent winpe from remounting the partition.
     
    Any ideas
     
    HELP!!!


  • 4.  RE: ghost32 -crc32 fails consistently in winpe 2.0

    Posted Apr 16, 2007 05:34 PM
    Has anyone else used winpe 2.0 with ghost32 v11 and had success doing a crc32 check after imaging with the -noOsLayout switch?
     
    What does the crc32 check actually buy me?  Is this check really necessary?  I read somewhere that during image creation that a crc value is stored inside the created image files.  I also read that for NTFS partitions the crc value is only checking the MFT and not the actual data imaged to the partition.
     
    If I were to image using ghost without doing a CRC32 check, would I ever have an instance where I could not boot to the newly imaged partition, if the ghosting succeeded and reported no errors?
     
    I have also had instances where a crc check would pass and the image is corrupted upon reboot.  How could this be possible if the CRC32 check was actually verifying that the data written to the partition was correct?


  • 5.  RE: ghost32 -crc32 fails consistently in winpe 2.0

    Posted Apr 16, 2007 09:08 PM
    Hi Mark,
     
    I managed to reproduce your problem using the following steps.

    1 - Creating a partition (1:2) using diskpart and formating it.

    2 - Use Ghost32 (v11) to restore a ntfs image into the created partition.
         ghost32 -clone,mode=prestore,src=image.gho:1,dst=1:2 -batch -nooslayout

    3 - Use Ghost32 to verify the restored partition against the crcfile generated from the image.
         ghost32 -crc32,action=pverify,src=1:2,crcfile=image_crc.txt

    Ghost32 reports "NTFS Volume Contents Differ" error as well.
     
    However, by removing step 1) from above, the crc check completed successfully.
    After a bit more investigation. Here's the conditions required to get ghost32 crc value to match for NTFS partitions under WinPE 2.0

    1 - Winpe must not know about the target partition prior to the restore operation. Which in your case, means you shouldn't create the partition using diskpart. (Ghost32 will automatically create the partition anyway when restoring)

    2 - The clone command must be run with -nooslayout switch.

     
    Hope that helps,
     
    Cheers
     
    Peter

    Message Edited by Peter Hsu on 04-16-200706:10 PM



  • 6.  RE: ghost32 -crc32 fails consistently in winpe 2.0

    Posted Apr 17, 2007 05:28 PM
    Thank you very much for the post.  Not creating a partition worked great.  I also figured out how to use ghost to create a size appropriate partition, so that not just one partition took up the entire drive space.  After the destination add a comma, then use sze command with immediate partition# no space then = then enter a number in size of megabytes desired followed by the letter m.
     
    Thank you all for your suggestions and help.