I distinctly remember a side-by-side comparison from a book where there are two nails submerged in water, in two beakers: one nail had a layer of oil on top of the water, and that nail didn't rust; the other did.
It seems that oiling iron/steel products is supposed to prevent them from rusting: http://www.justanswer.com/home-improvement/0n1r2-does-olive-oil-prevent-rust.html https://outdoors.stackexchange.com/questions/1404/can-oiling-keep-tools-from-rusting
The explanation given, I think, is that the oil somehow prevents oxygen from reacting with the metal.
Can't help but wonder why. Oxygen is a non-polar molecule, so it should actually dissolve better in oils (which are also non-polar) than in water (which is highly polar) and therefore allow more oxygen molecules to contact the iron (metal) surface in some sort of equilibrium.
Let's say that the conductivity of water and its ability to form electrochemical chains between metals is irrelevant in this thought experiment (i.e., a nail submerged in water in a glass). From what I understand, the other key item that has an effect on the formation of rust in water is that the oxygen molecules have better contact with the iron surface.
This is supported by data: the concentration of oxygen in air is far higher than that in water. We know from experience, though, that wet iron rusts way quicker than dry iron does.
If I am reading it correctly, the same data shows higher oxygen concentrations in non-polar solvents than in water.
Here is the data: http://www.nist.gov/data/PDFfiles/jpcrd219.pdf
Please correct me if I am reading it wrong.
My question is:
How does oiling prevent rust?
Edit: For the sake of clarity, let's say we use deionized water in a vacuum, drop in the nail, then put some oil (let's say it's caprylic acid) on it, and expose it to standard conditions.