How can I replace all selected object's mesh? With a linked duplicate object I can edit the mesh and have the change show up on all the duplicates. Can I completely replace the mesh of every duplicate instead, and in an easy and repeatable manner?

To be specific, I would like to create a chain out of a duplicated chain link, and I want to manually create each LOD mesh of said chain link. I would then like to replace the chain link mesh of all duplicates to make different LODs of the composite chain.

Note that the array modifier is not flexible enough for my purposes.
You can change the mesh assigned to an object in the data tab:

In order to change more objects you could use python:
import bpy

# the name of the mesh to copy to all selected objects
mesh = bpy.data.meshes[&quot;Cube&quot;]

for o in bpy.data.objects:
    if o.select:
        o.data = mesh

For 2.8+
Python: Selecting object by name in 2.8
if o.select_get():
    o.data = mesh