When running

rsync -Paz /home/sbird "/run/media/sbird/My Passport/sbird"

As told by someone, I run into a ran out of storage error midway. Why is this? My disk usage is about 385 GiB for my home folder, and there is at least 800 GiB of space in the external SSD (which already has stuff like photos and documents). Does rsync make doubly copies of it or something? That would be kind of silly. Or is it some other issue?

Note that the SSD is from a reputable brand (Western Digital) so it is unlikely that it is reporting a fake amount of storage.

  • olosta@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    10 hours ago

    Maybe you have hard links or sparse files in your source directory. Try with -H for hard links first. You can try with --sparse but I think hard links are more likely.

    • sbird@sopuli.xyzOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      8 hours ago

      Using -H throws an error as symlinks aren’t supported in exFAT it seems.

      • [object Object]@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        8 hours ago

        By the way, do you have lots of torrents downloaded or large virtual machines installed? Both torrent clients and virtual machine managers use ‘sparse files’ to save space until you actually download the whole torrent or write a lot to the VM’s disk. Those files would be copied at full size to exFAT.

        If you have folders with such content, you can use e.g. Double Commander to check the actual used size of those folders (with ctrl-L in Doublecmd). Idk which terminal utils might give you those numbers in place, but aforementioned ncdu can calculate them and present as a tree.

        • sbird@sopuli.xyzOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          7 hours ago

          using du -hsc returns 384G with /home/sbird, and 150G inside the external SSD (when it does not have any of the files transferred with rsync)

          • [object Object]@lemmy.world
            link
            fedilink
            arrow-up
            1
            ·
            7 hours ago

            Well, that’s not what I meant. If you have directories with torrents or VMs, du might report different size for those directories on the source and target disks. Then it might’ve meant that those are the culprits.

            With just the source disk, you can check du -hsc dirname versus du -hsc --apparent-size dirname to check if the disk space used is much smaller than the ‘apparent size’, which would mean there are sparse files in the directory, i.e. not fully written to disk. rsync would copy those files to full ‘apparent size’.

            As mentioned elsewhere, btrfs might also save space on the source disk by not writing duplicate files multiple times — but idk if du would report that, since it’s specific to btrfs internals.

    • [object Object]@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      8 hours ago

      For a typical user, hard links would be mostly employed by git for its internal structures, and it’s difficult to accumulate over 300 GB of git repos.

      Sparse files would actually be more believable, since they’re used by both torrent clients and virtual machines.