NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.

Forum Discussion

rhpot1991's avatar
Mar 08, 2021
Solved

Enable Bitrot on Files: MV or CP?

So I want to make sure that bitrot protection is enabled on my files, I don't recall if I had it enabled on my shares before files were placed there.  According to the documentation you can create a new copy of the file and this will create CoW data for the new file.  Does moving a file with the mv command do the same thing, or do you need to use the cp command to create another copy?

 

I made a new share, mv'd the files between, then removed the old share.  Do I need to do this again with cp instead or did mv handle my task?

  • You can use "lsattr" to check if a file has CoW enabled or not.

     

    Here my txt file does not have CoW enabled, denoted by the "C" in the end.

    root@Databak:~# lsattr /data/Data-dump/MyFile_NoCoW.txt
    ---------------C /data/Data-dump/MyFile_NoCoW.txt

    Here is what a file looks like, that has CoW enabled.

    root@Databak:~# lsattr /data/Data-dump/MyFile_CoW.txt
    ---------------- /data/Data-dump/MyFile_CoW.txt

    I don't think the "mv" command is enough to trigger CoW on a file that has previously been marked for No CoW - due to reasons that StephenB mentioned. I think you need to re-create the file - i.e. "cp"

     

    But you can check on the files you moved :)

8 Replies

Replies have been turned off for this discussion
  • StephenB's avatar
    StephenB
    Guru - Experienced User

    rhpot1991 wrote:

     

    I made a new share, mv'd the files between, then removed the old share.  Do I need to do this again with cp instead or did mv handle my task?


    I'm not 100% sure, but I think you'll need to do it again with cp.

     

    If you are moving from window file explorer, the move is turned into a copy/delete when you access the shares using normal credentials.  But if you access the full data volume using admin credentials, that doesn't happen - only the metadata is rewritten.

     

    When you mv using ssh on the NAS, it's like that second case.  The mv completes much faster than cp will, but that is because the file data isn't being copied.  The bitrot protection feature depends on BTRFS checksums (plus RAID parity), and if they were turned off when you uploaded the files to the NAS, a "true" mv won't create them.

    • rhpot1991's avatar
      rhpot1991
      Guide

      Everything from SSH, could do it via a network share but that would add network overhead.

       

      MV across shares, takes some time - not instant.

      MV within shares is instant. (note this was done after above, which may have created metadata?)

      CP within a share is taking forever.

       

      Hopefully someone from Netgear can chime in if an initial MV will create the metadata or not.

NETGEAR Academy

Boost your skills with the Netgear Academy - Get trained, certified and stay ahead with the latest Netgear technology! 

Join Us!

ProSupport for Business

Comprehensive support plans for maximum network uptime and business peace of mind.

 

Learn More