How does harddrive failure work when there's multiple partitions?
My laptop's HDD is failing, it shows a bunch of signs such as slow file manipulation and clicking sounds. The Linux btrfs partition keeps going into read-only mode to prevent further damage, makes sense, but the windows partition is working fine (for now).
Shouldn't harddrive failure be evident on all partitions?
BTRFS is smart enough to check for file errors in some situations under normal operations (I forget which, it's been a while). When it finds issues, it puts it in read only to try and prevent things from going off of potentially corrupt data.
NTFS, which is what Windows usually uses, is a very "dumb" file system. It is merely a record of what files exist where, so if data corrupts, it will only throw NTFS off if it's in the file index it stores itself. If it's in the middle of your file, NTFS doesn't know and doesn't care and will just give you the wonky data.
Windows seemingly continuing to work is just a consequence of the "dumb" file system. It will take some critical file getting corrupted before Windows or some program will just crash. At least BTRFS is trying to tell you things are looking amiss and you should definitely back up anything important.
I forget the exact differences from NTFS, but it's similarly "dumb", as in it's just a ledger of files and locations, and doesn't do any checksum/validating. Only BTRFS and ZFS do on a file system level as far as I remember, but there are plenty of oddballs, especially counting networked storage stuff.
It depends on the exact nature of the failure. Controller errors are usually a complete failure. Media failure (magnetic spots on the disk or failed cells in ssd) are often sporadic and only impact data stored in those spots.
Regardless, drives rarely give you any warning. Look at any warning as a gift and get everything off and replace it ASAP.
Yup. I would try to stop using it if at all possible. As soon as you can, dump a full disk image to some other storage. Tools like ddrescue can be useful as they will try to re-read failed sectors to get a more complete image.
Once you have the data (or at least as much is available) to a reliable medium then you can start sorting through it and discarding or saving individual bits.
If the disc is failing, it’s failing and needs to be replaced. Any in between state or partial functionality will be for a very limited time, where complete failure will strike you when most inconvenient.
Other comments address this well, but for completeness sake, you can see different failure modes on different partitions because the software that manages those filesystems is different. Very careful designs will be quick to sound the alarm, whereas dumb designs will keep on working just fine until something critical is corrupted and it fails in spectacular fashion.
its a configuration thing... sounds like maybe linux has detected the SMART errors and acted accordingly on its managed partition. windows is not making the same choice.
With the clicking etc it sounds like a mechanical failure?! A harddrive has several disks "platter"s stacked inside and multiple heads inside. They don't necessarily all fail at the same time. Also sometimes there are just small areas affected that become inaccessible due to various reasons. They'll probably grow at some point and you're bound to loose more data. But if it's an area of several consequtive blocks, it'll show when you're accessing those. And if your partitions and data are arranged serially, the next one might be physically stored where everything is still fine.