Help about data recovery

Kiwi & Cow

Professional jimmies rustler master of shitposting
kiwifarms.net
Joined
Feb 21, 2018
I have 2 USB sticks, USB A is faulty and contains 58GB worth of youtube videos, USB B is healthy, but its capacity is only 57GB.

I used ddrescue to try to salvage the videos because they're pretty important, a ton of them come directly from my youtube channel (Because fucking youtube deletes them from time to time), but the issue is that I literally can't fit all the videos into USB B.

For context I bought a stick that was adverised to contain 64GB of space for the expressed purpose of saving my 58GB from the other drive, so that was a real nasty surprise when my computer read only 57GB of space was available from USB B with all the remaining 7GB being nonexistent. Also when I plug USB B in my Linux boot it says it's a 62GB storage drive, no idea why, but it would have been perfect where did those 5GB go?

So I decided to do it anyways because USB A has been rotting for over 2 years and I have no idea when it'll be completely bricked, I stopped the operation halfway through with control C just to delete videos extracted from USB A to USB B that are less important to make up space for the remaining videos, but the problem is that Linux won't let me do that. Now USB B is unreadable and I don't know why, I re-entered the code in the terminal and ddrescue resumed as normal, so the healthy stick is still functional, my Linux GUI just can't deal with it for whatever reason.

So now I have several questions:
  1. What will happen once it fills up completely the other USB stick?
  2. Is it actually possible to stop ddrescue to remove videos I don't care about to make up space for when ddrescue is done? How do I do it since the stick becomes unreadable during the operation?
If I can't save my videos on Linux then I'll switch back to Windows and if it works on Windows without a hitch I'll note it down as another issue that is specific to Linux and no other operating system.
 
Last edited:
Also when I plug USB B in my Linux boot it says it's a 62GB storage drive, no idea why, but it would have been perfect where did those 5GB go?
It was probably NTFS formatted, so a massive chunk of the space is taken immediately for the file system overhead (e.g. its Master File Table, which is relatively massive).

Now USB B is unreadable and I don't know why
It's unreadable because it's not actually copying over the files, or at least not in the way that you're expecting. What ddrescue does is it tries to copy the data over block-by-block and byte-by-byte (hence the 'rescue' bit in the name: the program's typical use case is that you've given it a fucked device that'll be throwing read errors left and right, so it's not going to want to assume anything about the structure of the input data and just try to pull as many contiguous pieces over as it can). This means that until the process has 'finished', whether in success or failure, it doesn't know how the output is structured. It doesn't know what the partition table looks like, it doesn't know what the filesystem is, and so on.

So your file explorer is going to think the USB B is unreadable because it literally is: it's just a bunch of bytes until you recreate the partition table/filesystem that tells an OS what the chunks of bytes on it actually mean.

The good news though is that hopefully it sounds like it'll work fine. ddrescue doesn't care that USB B was formatted NTFS, it's going to just be writing bytes over the top of everything trying to recreate USB A byte-by-byte. If the USB is physically 64GB which it sounds like it is (advertisers enjoy using the confusion between gigabytes and gibibytes to pretend that their USB storage is bigger than it is), then it should have enough space to do the full rescue.

So to answer your questions:
1. What will happen once it fills up completely the other USB stick?
Hopefully you'll have a byte-for-byte reconstruction of USB A on USB B (which is the whole point). It will have recreated the partition table and filesystem, so you should be able to use USB B as if it were USB A completely.

2. Is it actually possibly to stop ddrescue to remove videos I don't care about to make up space for when ddrescue is done? How do I do it since the stick becomes unreadable during the operation?
USB B becomes unreadable, right? As explained above, that's because it's not actually copying over files, it's copying over everything as blocks (and often out of order and/or on multiple passes so that it's robust to read errors). You'd have to delete the videos from USB A first and then restart the ddrescue. However if you're able to do that, then why not just copy the videos over the usual way?

ETA:
If I can't save my videos on Linux then I'll switch back to Windows and if it works on Windows without a hitch I'll note it down as another issue that is specific to Linux and no other operating system.
It sounds like you're more familiar with Windows than Linux, so why are you using Linux for this, if you don't mind me asking? Windows has recovery tools for this sort of stuff too, they're both fine operating systems.
 
I have 2 USB sticks, USB A is faulty and contains 58GB worth of youtube videos,
always and i repeat ALWAYS have a raid setup for your porn collection.
If the anal gangbang only exists on one drive it may as well not exist at all
 
  • Like
Reactions: awoo
It sounds like you're more familiar with Windows than Linux, so why are you using Linux for this, if you don't mind me asking? Windows has recovery tools for this sort of stuff too, they're both fine operating systems.
I did try at first back in 2021, but USB A wasn't detected like at all. It was like it literally didn't exist to Windows, no prompt, nothing, so I switched to my Linux distro and the USB stick was actually detected there via Gparted, but the partition was marked as unknown. Maybe third party software could detect the stick on Windows, but I'd rather not meddle with that. FYI USB A wasn't reformatted, it's supposed to be FAT32, so Windows should detect it just fine.
 
  • Like
Reactions: Knight of the Rope
but USB A wasn't detected like at all. It was like it literally didn't exist to Windows, no prompt, nothing
Sounds like the partition table might be corrupted or something then. I've found that if Windows can't figure out what the partitions are supposed to be then it just gives up immediately on trying to read the device (hilariously it'll still recognize it as a mounted USB in Device Manager, but it won't even bother trying to read it further).

Best of luck with the ddrescue, but it actually does sound like it's started to bit-rot pretty badly from the sounds of it. (Are you using a log file for ddrescue? You might need multiple passes perhaps.)
 
  • Like
Reactions: Kiwi & Cow
I guess this isn't to the point, but why are you transferring to another flash drive if this is being used for long term storage and they're failing out on you?

I've said this before on here but if you're looking for long term cold storage just use a USB to HDD cable, get a disk drive, and store the stuff on there.

I have no idea how storage mediums and degradation works overall, but what I do know is that if you aren't using an HDD consistently it'll last for an almost indeterminate amount of time. I've always used USB drives for short term storage and transfer, it seems a little silly to just push the problem off into the future by doing the same thing again.

The only downside I could see is that you can get 64GB sticks for significantly cheaper than you can get hard drives, but ultimately you're talking about ~$55 for the cable and a 1tb drive combined, so unless you're real broke I couldn't see not going with that option for long term storage.
 
What will happen once it fills up completely the other USB stick?

It's impossible to know for certain, but some theoretical physicists predict that it could create a black hole that would immediately destroy all matter in the known universe. Do you *really* want to take that risk? Just drive your cheap ass to Best Buy and get a bigger stick.
 
Well, I learned something today. RE: GB vs. GiB
_
Here's hoping you get that data recovered OP.
 
  • Feels
Reactions: Kiwi & Cow
It's impossible to know for certain, but some theoretical physicists predict that it could create a black hole that would immediately destroy all matter in the known universe. Do you *really* want to take that risk? Just drive your cheap ass to Best Buy and get a bigger stick.
You're an idiot if you think we're going to risk destroying the entire universe just so you can have a bigger stick. Get your shit together and figure out another way to get what you want.
 
  • Feels
Reactions: Kiwi & Cow
Why are you trying to immediately copy from one USB to another if space is an issue? Is it because you're using live Linux media instead of a standard installation? This is something that immediately stuck out to me and what I would personally try to remedy first. Why make your life harder for seemingly no reason?

Dump ddrescue output on your computer first, run whatever file recovery software you want in the resulting image (going off what you said about the drive not showing up in Windows, which is a sign of corruption) and only then copy the recovered, intact videos onto the second USB.

In case you are using Linux off a USB stick, you'd first need to do the ritual of making Windows NTFS drives read-writeable. On 10, this means rebooting instead of shutting down (something to do with their "fastboot" shit), on 7 there's a setting for disabling its super sheshul optimized boot. Next, simply mount the drive before running ddrescue and point it there. Most live ISOs should come with ntfs-3g preinstalled.

It sounds like you're more familiar with Windows than Linux, so why are you using Linux for this, if you don't mind me asking? Windows has recovery tools for this sort of stuff too, they're both fine operating systems.
For USB drives that still get recognized but are already in a fragile state, you'd want to prevent extra reads whenever possible. Once Windows recognizes it, programs like Windows Defender will happily start doing just that without your input. Not the case here, but something that Linux might have an upper hand in.
 
I got an error "No space left on device". :stress:
Damn. Are you able to do the thing that @Frail Snail suggested and redirect the ddrescue output to an img file on your computer's local storage? That sounds like it might be your best bet if USB B is smaller than USB A after all.

And the reason I asked about the log file earlier is that if you're using one (and I'd recommend it at this point from the sounds of it), then ddrescue keeps track of the error sectors it finds during the rescue so that if you do have to do multiple goes-through, it won't redo the successful copies and it will instead focus on the error parts. That will make the data rescue quicker on the subsequent attempts, and also minimizes the number of reads so that the chance of recovering everything is improved.
 
  • Informative
  • Like
Reactions: awoo and Kiwi & Cow
Always copy onto a larger disk to avoid these problems. I believe ddrescue disk images can technically compress null blocks but I wouldn't count on it.
ddrescue copies the drive block by block and tries to minimize touching blocks to avoid any further corruption. (I believe you need to use a logfile if you plan on stopping and continuing progress. It is NOT just an error log as @Knight of the Rope says) Once you have a disk image you can use a program like testdisk or photorec (both by Christophe GRENIER. throw him a few bucks if it works) to try to see what filesystem the drive was formatted as if you don't know. if it's a flash drive you didn't format, probably NTFS or FAT. On linux probably ext4 by default.
 
Back