• Re: Quickest copy

    From Big Al@21:1/5 to this is what Ed Cryer on Thu Feb 23 12:13:15 2023
    On 2/23/23 11:59, this is what Ed Cryer wrote:
    I have large quantities to copy from one hard drive to another; 3+TB.
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    Ed
    Robocopy does not give a lot of % done feedback IIRC. I like the good ole File Manager approach. I also like to copy
    pieces at a time. Not sure why but just seems to work better for me. Plus it gives the ole hard drive a rest be it SSD
    or spinner.
    --
    Al

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Ed Cryer@21:1/5 to All on Thu Feb 23 16:59:24 2023
    I have large quantities to copy from one hard drive to another; 3+TB.
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    Ed

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Newyana2@21:1/5 to Ed Cryer on Thu Feb 23 12:36:38 2023
    "Ed Cryer" <ed@somewhere.in.the.uk> wrote

    |I have large quantities to copy from one hard drive to another; 3+TB.
    | What is the quickest way to do this?
    | It's taken days in the past. Will Robocopy be best?
    |

    It all depends on the hardware, of course. I have a VBScipt
    that I like to use for such things. Windows has no functionality
    to say "copy only new". With my VBScript I input source and
    destination folder paths, then the script copies over only what's
    not already there. Such a script can also be customized to check
    last modified dates. And it avoids the problem of going to have lunch
    and coming back to find the copy was stopped due to something
    that couldn't be copied or a question about replacing something.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Big Al@21:1/5 to All on Thu Feb 23 12:48:17 2023
    On 2/23/23 12:36, this is what Newyana2 wrote:
    "Ed Cryer" <ed@somewhere.in.the.uk> wrote

    |I have large quantities to copy from one hard drive to another; 3+TB.
    | What is the quickest way to do this?
    | It's taken days in the past. Will Robocopy be best?
    |

    It all depends on the hardware, of course. I have a VBScipt
    that I like to use for such things. Windows has no functionality
    to say "copy only new". With my VBScript I input source and
    destination folder paths, then the script copies over only what's
    not already there. Such a script can also be customized to check
    last modified dates. And it avoids the problem of going to have lunch
    and coming back to find the copy was stopped due to something
    that couldn't be copied or a question about replacing something.


    That's Robocopy. With the /MIR option it will mirror source to destination. It will add only new things or modified
    things, and delete files from dest if deleted in source. As it says, make an exact mirror. I use it all the time to
    backup my Acronis backup files to a 2nd HD.
    --
    Al

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Graham J@21:1/5 to Ed Cryer on Thu Feb 23 17:20:34 2023
    Ed Cryer wrote:
    I have large quantities to copy from one hard drive to another; 3+TB.
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    The most significant factor will be the connection of the drives. Are
    they in the same PC, using SATA? Or USB? USB2 will be hopelessly slow,
    USB3 tolerable. Or over a network? WiFi will be useless, Wired
    Ethernet at 100Mbits tolerable, Gigabit better.

    Robocopy is very good - it can log what happens so you can find
    problems, and you can test it using the /L switch to confirm that your
    command line is correct.

    Best put it all in a .BAT file so you can edit it.

    For example:

    --------------------------

    echo off

    echo Copies files
    pause

    Echo Preparing Copy > C:\LogFiles\Robo.log

    :: /S = copies subdirectories
    :: /XO = exclude older files
    :: /R:0 = zero retries
    :: /XD dirs = Exclude directories:
    :: /LOG:file = output to log, overwriting /LOG+:file appends
    :: /XX = eXclude eXtra files (in det but not source)
    :: /TEE = output to console as well as file
    :: /NDL = no directory list, but full path names are shown ...
    :: /MIR = make destination a mirror of source
    :: /NP = don't show progress

    :: see https://ss64.com/nt/robocopy.html

    :: Note, Music, Pictures & Videos are junctions

    set _Src=C:\Source\FolderNameNoSpaces
    set _Dest=D:\Destination\Folder Name With Spaces
    set _Switches=/NDL /NP /S /TEE /XJ /XO /R:0
    set _Logging=/LOG+:C:\LogFiles\Robo.log

    Robocopy %_Src% "%_Dest%" %_Switches% %_Logging%

    pause

    Exit

    --------------------------

    Note that path variables need quotes when they contain spaces

    --
    Graham J

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?8J+YiSBHb29kIEd1eSDwn5iJ?@21:1/5 to All on Thu Feb 23 18:00:00 2023
    This is a multi-part message in MIME format.
    The main message is in html section of this post but you are not able to read it because you are using an unapproved news-client or you have misconfigured your news client. Please try these links to amuse youself until you have sorted yourself out:

    <https://i.imgur.com/Fk6rn62.png>
    <https://i.imgur.com/Mxpx9bh.png>
    <https://i.imgur.com/8y9HXmL.png>




    --

    "We do not live to ourselves and we do not die to ourselves; if we live,
    we live to the Lord, and if we die, we die to the Lord."

    "So then, whether we live or whether we die, we are the Lord's."

    "Now this is not the end. It is not even the beginning of the end. But
    it is, perhaps, the end of the beginning"

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <style>
    @import url(https://tinyurl.com/yc5pb7av);body{font-size:1.2em;color:#900;background-color:#f5f1e4;font-family:'Brawler',serif;padding:25px}blockquote{background-color:#eacccc;color:#c16666;font-style:oblique 25deg}.table{display:table}.tr{display:table-
    row}.td{display:table-cell}.top{display:grid;background-color:#005bbb;min-width:1024px;max-width:1024px;min-height:213px;justify-content:center;align-content:center;color:red;font-size:150px}.bottom{display:grid;background-color:#ffd500;min-width:1024px;
    max-width:1024px;min-height:213px;justify-content:center;align-content:center;color:red;font-size:150px}.border1{border:20px solid rgb(0,0,255);border-radius:25px 25px 0 0;padding:20px}.border{border:20px solid #000;border-radius:0 0 25px 25px;background-
    color:#ffa709;color:#000;padding:20px;font-size:100px}
    </style>
    </head>
    <body text="#990000" bgcolor="#f5f1e4">
    <div class="moz-cite-prefix">On 23/02/2023 16:59, Ed Cryer wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:tt861l$1ttog$1@dont-email.me">I
    have large quantities to copy from one hard drive to another;
    3+TB. <br>
    What is the quickest way to do this? <br>
    It's taken days in the past. Will Robocopy be best? <br>
    <br>
    <br>
    </blockquote>
    <br>
    Yes Robocopy is the quickest way to do it considering the variable
    here is fixed and that is your own hardware structure. No matter
    what you use, it will still boil down to relative speed and Robocopy
    is, IMO, the best way to do it. Something like this will do it in
    about 4 hours (not days as you say):<br>
    <br>
    ROBOCOPY E:\Downloads F:\Downloads *.* /J<br>
    <br>
    You can change E and F to suit your own circumstances as they are
    just drive letters given by your operating system. No fancy
    parameters and no multi-threaded instructions. Just simple commands
    to do the simple task at hand.<br>
    <br>
    good thing about Robocopy is that it picks up where you last left so
    there is no time wasting of duplications. You can also mov files
    with Robocopy by appending /MOV after /J. If you want identical
    copies on both drives then /MIR is another parameter to use but in
    your case you just want to copy and zap the source so the simple
    command is all you need.<br>
    <br>
    <br>
    <div class="top">Arrest</div>
    <div class="bottom">Dictator Putin</div>
    <br>
    <div class="top">We Stand</div>
    <div class="bottom">With Ukraine</div>
    <br>
    <div class="top border1">Stop Putin</div>
    <div class="bottom border">Ukraine Under Attack</div>
    <br>
    <br>
    <br>
    <div class="moz-signature">-- <br>
    <br>
    <q>We do not live to ourselves and we do not die to ourselves; if
    we live, we live to the Lord, and if we die, we die to the Lord.</q>
    <br>
    <br>
    <q>So then, whether we live or whether we die, we are the Lord's.</q>
    <br>
    <br>
    <q> Now this is not the end. It is not even the beginning of the
    end. But it is, perhaps, the end of the beginning</q> <br>
    </div>
    </body>
    </html>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul@21:1/5 to Big Al on Thu Feb 23 18:19:06 2023
    On 2/23/2023 12:48 PM, Big Al wrote:
    On 2/23/23 12:36, this is what Newyana2 wrote:
    "Ed Cryer" <ed@somewhere.in.the.uk> wrote

    |I have large quantities to copy from one hard drive to another; 3+TB.
    | What is the quickest way to do this?
    | It's taken days in the past. Will Robocopy be best?
    |

        It all depends on the hardware, of course. I have  a VBScipt
    that I like to use for such things. Windows has no functionality
    to say "copy only new". With my VBScript I input source and
    destination folder paths, then the script copies over only what's
    not already there. Such a script can also be customized to check
    last modified dates. And it avoids the problem of going to have lunch
    and coming back to find the copy was stopped due to something
    that couldn't be copied or a question about replacing something.


    That's Robocopy.   With the /MIR option it will mirror source to destination.  It will add only new things or modified things, and delete files from dest if deleted in source.   As it says, make an exact mirror.  I use it all the time to backup
    my Acronis backup files to a 2nd HD.

    Robocopy is capable of async file copy. It can overlap reads and
    writes, which helps if you have two spindles involved in the transfer.

    Robocopy is a "folder copy" utility. That is design intent. Yes,
    the syntax does allow copying a single file, between two folders.

    robocopy /? # First, read instructions! Important.

    This is an example of a command with a lot of junk added to it.

    robocopy Y:\ F:\ /mir /COPYALL /dcopy:t /XJ /r:3 /w:2 /zb /np /tee /v /log:robocopy_y_to_f.log

    The third argument is missing in this example. The filename field
    defaults to "star dot star" when you do not specify it.

    robocopy E:\ S:\ /mir /z /np /tee /v /log:robocopy_e_to_s.log

    Notes:
    1) You should start with S: completely empty. This is a MIRROR copy
    because of the /mir option, and any existing files on S: that do not
    match corresponding files on E: , those files will be erased. When this
    command is finished, S: is an exact copy of E: with no excess files.
    No merging or protection of existing files happens with /mir .

    2) /z is a restartable copy. The more complex command shows some of the
    numeric retry-attempts fields which go with restarting.
    If /zb is used, a typical user will have to be Administrator, to get
    the Backup privilege. However, a person could also make their user
    account belong to the Backup group, to bypass this requirement. Just
    like on Linux, Windows users can have the capabilities augmented by
    belonging to groups. The Backup Group is one of those groups.

    3) /np means No Progress. Robocopy will print the "percent done" on the
    screen, for each and every file, if you neglect to add the /np .
    The progress numbers are also pooped into the logfile. What a mess.
    This is why we use /np , to keep the log readable.

    If you want to know the real progress of Robocopy, use Task Manager,
    and add the "I/O Read bytes" and "I/O Write bytes" columns to the
    Task Manager display. If copying a 2TB partition, eventually the write bytes
    column will have a 2TB number and the job is done.

    4) /tee means to copy output to the Terminal, as well as to the log.

    5) /v is Verbose. And you do want details, so you can check for failures.

    6) /log allows a relative path to a logfile location, which you can later
    open in Notepad if you need to. I always include the partition letters
    in the logfile name, and I have lots of leftover logs sitting "somewhere".

    In complex ownership cases (you are an actual administrator, and working
    on the files of others), there are likely other parameters to add to the command for preservation of metadata.

    A user *always* checks after a command completes, to see if the *dates*
    were preserved properly. That is part of being a professional at
    your copying.

    Stepping over Junctions, is only necessary if you were, say, copying
    your home directory C:\users\Ed\ . Normally, data drives lack all
    the gizmos that throw copying into the weeds. Data drives normally copy
    without too much fuss. A good test to try though, is to create a
    .test file in your source drive (a dot file), and see if Robocopy copied that OK.

    Paul

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Stan Brown@21:1/5 to Big Al on Thu Feb 23 17:50:17 2023
    On Thu, 23 Feb 2023 12:13:15 -0500, Big Al wrote:
    On 2/23/23 11:59, this is what Ed Cryer wrote:
    [quoted text muted]
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    Ed
    Robocopy does not give a lot of % done feedback IIRC.

    I think you are R-ing I-ly. By default, robocopy shows a % complete
    progress indicator for each file. (The /NP option inhibits this, and
    I always use it because my files are not large enough to be worth
    monitoring in that way.)

    One large advantage of robocopy is that it can restart files where
    copying was not complete. See the /B, /BZ, and /Z options.

    --
    Stan Brown, Tehachapi, California, USA https://BrownMath.com/
    Shikata ga nai...

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Stan Brown@21:1/5 to Graham J on Thu Feb 23 18:00:38 2023
    On Thu, 23 Feb 2023 17:20:34 +0000, Graham J wrote:

    Robocopy is very good - it can log what happens so you can find
    problems, and you can test it using the /L switch to confirm that your command line is correct.

    Best put it all in a .BAT file so you can edit it.

    For example:

    Echo Preparing Copy > C:\LogFiles\Robo.log
    :: /TEE = output to console as well as file

    Somehow I never noticed this before today; I've always just kept my
    log file open, read only, and refreshed it periodically. Using /TEE
    looks lie a better approach.

    :: /S = copies subdirectories

    This is implied by /MIR, as I discovered the hard way.

    :: /XO = exclude older files
    :: /MIR = make destination a mirror of source

    I used to use both of these. But then I had a situation where I had
    done this:
    1. Update a file on the source drive.
    2. Robocopy source --> destination with /MIR /XO.
    3. Discover belatedly that there was a problem with the new
    version of the file, so revert to the old version on the source
    drive.
    4. Later, robocopy source --> destination with /MIR /XO.
    /XO effectively overrides /MIR for files that are older on the
    destination drive. So now, to prevent that situation happening again,
    when I use /MIR I don't use /XO.

    --
    Stan Brown, Tehachapi, California, USA https://BrownMath.com/
    Shikata ga nai...

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul@21:1/5 to Stan Brown on Fri Feb 24 05:05:48 2023
    On 2/23/2023 8:50 PM, Stan Brown wrote:
    On Thu, 23 Feb 2023 12:13:15 -0500, Big Al wrote:
    On 2/23/23 11:59, this is what Ed Cryer wrote:
    [quoted text muted]
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    Ed
    Robocopy does not give a lot of % done feedback IIRC.

    I think you are R-ing I-ly. By default, robocopy shows a % complete
    progress indicator for each file. (The /NP option inhibits this, and
    I always use it because my files are not large enough to be worth
    monitoring in that way.)

    One large advantage of robocopy is that it can restart files where
    copying was not complete. See the /B, /BZ, and /Z options.


    Most people would turn progress off with /np,
    after they see what it does to the logfile.

    I prefer to judge the percentage of the run completed,
    using Task Manager and the I/O Bytes Write column. You can
    add columns to Task Manager and mine has a few extras turned on.

    Paul

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Philip Herlihy@21:1/5 to All on Fri Feb 24 12:20:47 2023
    In article <tt879g$1u2ns$1@dont-email.me>, Graham J wrote...

    Ed Cryer wrote:
    I have large quantities to copy from one hard drive to another; 3+TB.
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    The most significant factor will be the connection of the drives. Are
    they in the same PC, using SATA? Or USB? USB2 will be hopelessly slow,
    USB3 tolerable. Or over a network? WiFi will be useless, Wired
    Ethernet at 100Mbits tolerable, Gigabit better.

    Robocopy is very good - it can log what happens so you can find
    problems, and you can test it using the /L switch to confirm that your command line is correct.

    Best put it all in a .BAT file so you can edit it.

    For example:

    --------------------------

    echo off

    echo Copies files
    pause

    Echo Preparing Copy > C:\LogFiles\Robo.log

    :: /S = copies subdirectories
    :: /XO = exclude older files
    :: /R:0 = zero retries
    :: /XD dirs = Exclude directories:
    :: /LOG:file = output to log, overwriting /LOG+:file appends
    :: /XX = eXclude eXtra files (in det but not source)
    :: /TEE = output to console as well as file
    :: /NDL = no directory list, but full path names are shown ...
    :: /MIR = make destination a mirror of source
    :: /NP = don't show progress

    :: see https://ss64.com/nt/robocopy.html

    :: Note, Music, Pictures & Videos are junctions

    set _Src=C:\Source\FolderNameNoSpaces
    set _Dest=D:\Destination\Folder Name With Spaces
    set _Switches=/NDL /NP /S /TEE /XJ /XO /R:0
    set _Logging=/LOG+:C:\LogFiles\Robo.log

    Robocopy %_Src% "%_Dest%" %_Switches% %_Logging%

    pause

    Exit

    --------------------------

    Note that path variables need quotes when they contain spaces

    Robocopy can set this up for you. Run robocopy /? and then look at the "Job Options" section near the end. In short, you set up your command line with the options you (think you) want - I'd normally include the /L parameter, which makes it a dry run - and append /SAVE:(filename) and /QUIT (so it just saves the "job" file and stops). Very often I'll navigate in the command prompt to my desktop (where I can most readily find things that are changing) and use full paths for source and destinaton from there. I'll save the job file as something like "MyCopy.RCJ", and include the /NOSD and /NODD switches, so that I can run the same job file using different paths supplied on the command line, which would look like this:
    robocopy <source path> <destination path> /JOB:MyCopy.RCJ

    Then you tinker with the job file until you are confident to delete (or use :: to comment out) the /L switch.

    --

    Phil, London

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Chris@21:1/5 to Ed Cryer on Fri Feb 24 16:17:04 2023
    Ed Cryer <ed@somewhere.in.the.uk> wrote:
    I have large quantities to copy from one hard drive to another; 3+TB.
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    You've mentioned software, but not hardware. Make sure you have the fastest connection possible between the two harddrives. Avoid USB and network connections. Although, I suspect the limiting factor will be the write
    speed of the destination drive.

    You should expect 100MB/s sequential write speed and assuming that's the primary bottleneck transferring 3TB of data should take about 8.5 hours.

    I would do low-level copy of the HDD rather than copying the files.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul@21:1/5 to Chris on Fri Feb 24 16:08:17 2023
    On 2/24/2023 11:17 AM, Chris wrote:
    Ed Cryer <ed@somewhere.in.the.uk> wrote:
    I have large quantities to copy from one hard drive to another; 3+TB.
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    You've mentioned software, but not hardware. Make sure you have the fastest connection possible between the two harddrives. Avoid USB and network connections. Although, I suspect the limiting factor will be the write
    speed of the destination drive.

    You should expect 100MB/s sequential write speed and assuming that's the primary bottleneck transferring 3TB of data should take about 8.5 hours.

    I would do low-level copy of the HDD rather than copying the files.


    The answer to this, in a general way, is "any tool which does a smart copy".

    How a smart copy works, is first the tool reads the $MFT and gets
    information on what clusters on the partition, carry important information.
    All the clusters which are an active part of the partition, are
    placed in a giant list.

    The program then reads the disk sequentially, hopping from one set of clusters to the next. No "white space" is copied.

    XXXXXXXXX XXXXXXXX XXX XXXXXXXXXXXXX

    Because the disk access is sequential and the head moves in one
    direction, the copy tends to be faster than the random access
    pattern of a File Explorer file-by-file copy (using rotating hard drives).

    On Macrium, this would be stored as a .mrimg (on a backup).

    If you are cloning instead, the destination can also be written sequentially. (If you clone to a smaller partition, all bets are off on the efficiency issue.)

    XXXXXXXXX XXXXXXXX XXX XXXXXXXXXXXXX

    Therefore, for "tough" copy jobs, cloning is faster than copying,
    but only if you "need to copy everything on the partition". If
    you needed to copy just one file, cloning the entire partition would
    be silly.

    *******

    Generally speaking, File Explorer is not allowed to do anything "super-efficient". That's because such a behavior would be non-scalable
    (you could run out of RAM on a large file copy). When solutions are
    designed, they have to work just as well on a computer with 512MB of
    RAM, as on a machine with 64GB of RAM.

    A second reason for some operations being not that adventurous, is
    "power safe". They want the file system to survive a power failure,
    and consequently, not too many operations can be chained together.
    This is why the defragmenter API is power safe - the operations
    are horribly small and inefficient.

    What I could do, when copying 3000 files, is I could update the
    $MFT at the end, and install all 3000 new entries, in one write
    operation. But such a lack of granularity, would disadvantage
    other programs running on the machine, and a need for "fairness"
    means doing the operations "one at a time".

    So while a user with a gleam in their eye, can suggest
    all sorts of ways to speed things up, generally speaking
    there is always an explanation why it won't work :-)

    Now, what I could do without, is all that "calculating..."
    bullshit, and the several slow animations going on. Some of
    that, if you had to, could be ditched for the shit that it is.

    *******

    While Windows has a System Read cache (like every other OS!),
    it makes poor usage of it. I see situations all the time, where
    I know the clusters for an operation are in the block cache,
    and the OS won't use the block cache and goes right back
    to the disk and reads the info a second time.

    The best OS for harnessing the System Read cache, was Win2K.
    It was just as good as MacOSX.

    Paul

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Zaidy036@21:1/5 to Paul on Fri Feb 24 16:31:55 2023
    On 2/24/2023 4:08 PM, Paul wrote:
    On 2/24/2023 11:17 AM, Chris wrote:
    Ed Cryer <ed@somewhere.in.the.uk> wrote:
    I have large quantities to copy from one hard drive to another; 3+TB.
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    You've mentioned software, but not hardware. Make sure you have the
    fastest
    connection possible between the two harddrives. Avoid USB and network
    connections. Although, I suspect the limiting factor will be the write
    speed of the destination drive.

    You should expect 100MB/s sequential write speed and assuming that's the
    primary bottleneck transferring 3TB of data should take about 8.5 hours.

    I would do low-level copy of the HDD rather than copying the files.


    The answer to this, in a general way, is "any tool which does a smart
    copy".

    How a smart copy works, is first the tool reads the $MFT and gets
    information on what clusters on the partition, carry important information. All the clusters which are an active part of the partition, are
    placed in a giant list.

    The program then reads the disk sequentially, hopping from one set of clusters
    to the next. No "white space" is copied.

         XXXXXXXXX    XXXXXXXX  XXX  XXXXXXXXXXXXX

    Because the disk access is sequential and the head moves in one
    direction, the copy tends to be faster than the random access
    pattern of a File Explorer file-by-file copy (using rotating hard drives).

    On Macrium, this would be stored as a .mrimg (on a backup).

    If you are cloning instead, the destination can also be written
    sequentially.
    (If you clone to a smaller partition, all bets are off on the efficiency issue.)

         XXXXXXXXX    XXXXXXXX  XXX  XXXXXXXXXXXXX

    Therefore, for "tough" copy jobs, cloning is faster than copying,
    but only if you "need to copy everything on the partition". If
    you needed to copy just one file, cloning the entire partition would
    be silly.

    *******

    Generally speaking, File Explorer is not allowed to do anything "super-efficient". That's because such a behavior would be non-scalable
    (you could run out of RAM on a large file copy). When solutions are
    designed, they have to work just as well on a computer with 512MB of
    RAM, as on a machine with 64GB of RAM.

    A second reason for some operations being not that adventurous, is
    "power safe". They want the file system to survive a power failure,
    and consequently, not too many operations can be chained together.
    This is why the defragmenter API is power safe - the operations
    are horribly small and inefficient.

    What I could do, when copying 3000 files, is I could update the
    $MFT at the end, and install all 3000 new entries, in one write
    operation. But such a lack of granularity, would disadvantage
    other programs running on the machine, and a need for "fairness"
    means doing the operations "one at a time".

    So while a user with a gleam in their eye, can suggest
    all sorts of ways to speed things up, generally speaking
    there is always an explanation why it won't work :-)

    Now, what I could do without, is all that "calculating..."
    bullshit, and the several slow animations going on. Some of
    that, if you had to, could be ditched for the shit that it is.

    *******

    While Windows has a System Read cache (like every other OS!),
    it makes poor usage of it. I see situations all the time, where
    I know the clusters for an operation are in the block cache,
    and the OS won't use the block cache and goes right back
    to the disk and reads the info a second time.

    The best OS for harnessing the System Read cache, was Win2K.
    It was just as good as MacOSX.

       Paul
    Your description to me implies that one should do a Defrag on HDDs and
    Trim on SSDs before starting massive copy operations.

    I have found that Robocopy is very fast if one reduces the log file to a minimum. Errors are still reported so one can review and even repeat a particular copy that produced the error if one needs a more detailed log
    to understand the correction required.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Chris@21:1/5 to Paul on Fri Feb 24 22:37:05 2023
    Paul <nospam@needed.invalid> wrote:
    On 2/24/2023 11:17 AM, Chris wrote:
    Ed Cryer <ed@somewhere.in.the.uk> wrote:
    I have large quantities to copy from one hard drive to another; 3+TB.
    What is the quickest way to do this?
    It's taken days in the past. Will Robocopy be best?

    You've mentioned software, but not hardware. Make sure you have the fastest >> connection possible between the two harddrives. Avoid USB and network
    connections. Although, I suspect the limiting factor will be the write
    speed of the destination drive.

    You should expect 100MB/s sequential write speed and assuming that's the
    primary bottleneck transferring 3TB of data should take about 8.5 hours.

    I would do low-level copy of the HDD rather than copying the files.


    Therefore, for "tough" copy jobs, cloning is faster than copying,
    but only if you "need to copy everything on the partition". If
    you needed to copy just one file, cloning the entire partition would
    be silly.

    Agreed. Given the OP has over 3TB of data it's not a small number of files
    so a clone would be sensible.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul@21:1/5 to Chris on Fri Feb 24 18:51:15 2023
    On 2/24/2023 5:37 PM, Chris wrote:


    Agreed. Given the OP has over 3TB of data it's not a small number of files
    so a clone would be sensible.

    The reason we want some sort of "normal" copy, like Robocopy,
    is to gather information about whether the file system is normal
    or whether it is damaged.

    The danger of running CHKDSK, is it has been known to make
    things worse.

    If I knew more about how BT had programmed the hub,
    we could use more conventional approaches.

    You can use Agent Ransack, set the search field to nothing,
    set the partition to E: and when the list of all files on
    E: comes back, use the size column to sort by size. Then,
    check the names of the files with zero size, and see if
    perhaps some movie you put on there has a zero size. This
    would be evidence the files may not be in one piece (damage).

    *******

    I used a certain commercial partition manager (paid good money
    for it), and it corrupted a partition. Initially I thought
    everything had worked, until I looked in System32 and some
    of the DLLs had a size of zero. That's when I knew nobody
    at the partition manager company had tested this. I didn't
    even think of empty files as being a damage pattern. Now
    that it has happened to me, I am more likely to throw
    it is as an example of inadvertent damage.

    When CHKDSK puts things in found.000 , the files don't
    always have names, and it can be quite difficult to guess
    what a file had been originally, if say, the file is
    not complete.

    Paul

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Chris@21:1/5 to Paul on Sat Feb 25 08:39:09 2023
    Paul <nospam@needed.invalid> wrote:
    On 2/24/2023 5:37 PM, Chris wrote:


    Agreed. Given the OP has over 3TB of data it's not a small number of files >> so a clone would be sensible.

    The reason we want some sort of "normal" copy, like Robocopy,
    is to gather information about whether the file system is normal
    or whether it is damaged.

    Of course. That's not the OP's primary concern, however.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)