Honestly I have to ask are you a troll? You understand how insurance works right? Basically your hedging a long term bet that and event you are insuring against won't take place.
Lets take life insurance for example, its very cheap on say 20 year olds, who are active, non-smokers. Because overall a 20 year old, active, non-smoker has a much lower chance of dropping dead over night then say a 80 year old active, non-smoker. Its pretty simple stats honestly.
Insuring a HDD for 20+ years is the equivalent of buying a 350 year life insurance policy for a human. Statically its pretty safe to say that policy will payout.
If you buy a policy that will statically pay out, it means the policy total needs to be collected before the event will likely take place, therefore result in a net profit for the provider.
:.:.:
Example
So you take out a 30 year protection policy on a 2TB hard drive, this policy will pay 50 million dollars. 80% of Hard Drives fail in 4 years, which means as an insurer you need to collect AT LEAST 80% of the policy pay out by year 4 of the devices life cycle. This means you'll expect payments of ~1.041 million a month (at least). For the insurer to break even on your policy over an infinite amount of hard drives (which they're likely using a finite model), so a lot more.
Now you take a 30 year tape drive, for 50 million dollars. 1% of drives fail after 30 years. This means you can collect the total 50 million from at least 100 different contracts, meaning within 30 years each policy will only collect ~5 millions dollars in payments (13k montly payments)
The former seems completely idiotic to both the insurance agency AND the business asking for it. I don't know what your point is.
:.:.:
TL;DR: For insurance to work (profitably for both parties) you can't have the certainty of the event occurring within the policies term.