Yes there is an easy(ish) way. You did not include any software-specific knowledge, but I am arbitrarily going to infer ESRI ArcGIS as the toolset of choice (today).
Use a Spatial Overlay to UNION the roads with the easements. This will create a new roads featureclass that includes a new column containing the ObjectID of the easement which it falls in.
Once that is complete, edit that featureclass by deleting all roads where the new column value is not null -- ie all the roads that are within any easement.
What's left? the roads not contained within any easement.
If a road is overlapped by an easement -- it is partially inside but extends for a portion on either side, then you have a slightly different problem with at least 2 easy(ish) solutions:
A) Split (Intersect) all the roads where they cross into any easement, then only remove portions of the roads where they are internal to any easement, or
B) Union the roads with the easements (as before) but choose 'overlap' rather than 'contains'; then roads which have even a portion of their geometry touching even a portion of any easement will get a new easement ObjectID value in that new column. -- then delete those in the editing step.
NOTE that many software packages implement this exact process as some tool like 'erase' as commented above. Also Note, of course, that this could be automated by Python, Modelbuilder, or other APIs if you need to do this over and over again, or need to do it in a Web context.