I have a 128 GB Micro SD Card that I formatted as ext4 and used in a Chromebook for an Ubuntu Chroot Environment. I used it for quite some time that way. At some point, I either deleted everything off of it or formatted it using the Chromebook's simple formatting system.
After this, I stuck it in a GoPro Hero Session, and found that the GoPro didn't care to format the disk and could immediately write pictures and videos. No problem.
I went on a trip, took lots of photos and video, and then suddenly the GoPro was having trouble reading the disk. It was still able to record video and pictures (I assume) as I could turn on the recording mode and it didn't report any problems. From what I could tell, 128 GB is too much for this GoPro Session.
When I plug this into a computer (Chromebook, Mac OSX, Ubuntu) I either get an error (Chromebook & OSX) or I have the disk mount, but no viewable file structure when I open it with a file explorer. Totally empty.
If I right click, and click Properties (on Ubuntu), I get a report that the disk is formatted ext3/ext4, 128 GB and has 45.1 GB used, 71.9 GB free space. gparted is reporting the same thing.
I was able to successfully recover all 6 GB of photos using photorec. I didn't recover any videos, though.
I've used ddrescue to duplicate the disk to an image that I can work with. When I mount the image file, it behaves exactly the same way as the disk does (expected).
ddrescue output:
rescued: 125829 MB,
errsize: 0 B,
current rate: 12648 kB/sipos: 125829 MB,
errors: 0,
average rate: 19079 kB/sopos: 125829 MB,
time since last successful read: 0 sFinished
I ran a pass on the .IMG file with foremost -v -q -t mp4 -d but it finished with 0 files returned.
At this point, it doesn't actually seem to me that there has been either data loss or corruption. I'm not sure what actually is going on, but suspect that something has gone awry with the file system- being ext3/ext4 in a GoPro rather than FAT32 or exFAT.
EDIT: I just used Disk Usage Analyzer and found all of the largest files that photorec recovered. Among them are many large .bz2 files, with files in them with no extension that are timestamped for the time I would have recorded the footage. I can open them and view this information with an archive manager, but am unable to extract them.
EDIT 2: I tried running fsck and checked in /lost+found. All of my Linux files were there, but no videos, and not even the pictures that I had previously recovered with photorec.
I also tried to mount the image as exfat using sudo mount -o loop -t exfat SD_Card.img ~/mountpoint but it fails to mount.
FUSE exfat 1.2.8
ERROR: exFAT file system is not found.