The Core Dump

You can’t undo this action

[By Nic Lindh on Friday, 30 September 2011]

Editing the hosts file in Mac OS X 10.7 Lion

If you’re trying to edit your hosts file in Lion, here’s why it’s not working and how to fix it.

I’m posting this in the hope it’ll save somebody else a few minutes of their time.

Apparently Apple has decided to Think Different about the hosts file in Mac OS X Lion. If you want to put in your own entries, they will be politely ignored unless you put them first in the file.

Editing the hosts file allows you to do useful things like preview a site on a production server before flipping the switch on the DNS so you can suss out any errors before the world sees the site, or to access the backend of a CMS on an origin server for updates when the live site is cached by something like Akamai.

To illustrate, here’s the original Mac OS X hosts file, located at /etc/hosts:

\## \# Host Database \# \# localhost is used to configure the loopback interface \# when the system is booting. Do not change this entry. \## 127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost fe80::1%lo0 localhost

If you were to do the standard UNIX thing of appending your own changes at the bottom—which is what you would do if you’ve spent any time around UNIX machines—you’d end up with something like:

\## \# Host Database \# \# localhost is used to configure the loopback interface \# when the system is booting. Do not change this entry. \## 127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost fe80::1%lo0 localhost 192.168.1.15 thecoredump.org

But alas, this configuration will in fact not do anything.

The reason is that Apple has apparently decided you must put your own entries at the top. So you must do this instead:

192.168.1.15 thecoredump.org \## \# Host Database \# \# localhost is used to configure the loopback interface \# when the system is booting. Do not change this entry. \## 127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost fe80::1%lo0 localhost

I don’t know why this is. I wasn’t in that meeting. From my Googling around it seems nobody from the documentation team at Apple were in that meeting either.

So if you want to control your hosts file in Mac OS X Lion, you must put your own entries first and it will work like you expect.

You don’t have to flush the cache or anything. Soon as you save the configuration, it goes to work.

Hope this saves somebody on the Internet some time.

« Why I’m all-in on FiveFingers

 »


Enjoy the ten latest posts!

Book roundup, part 24

Lots of sci-fi in this installment. Includes Retribution, Boomerang, The Collapsing Empire, All Systems Red, and Ninefox Gambit.

Review: Bosch TV series

A longtime Bosch reader looks at the TV series.

Getting started with podcasting

A concise guide to getting started with podcasting, including equipment, editing, mic technique and hosting.

Review: Novels of the Malazan Empire

A worthy inclusion to the Malazan canon and great high fantasy to disappear into in troubled times.

Either America will destroy ignorance or ignorance will destroy the United States

An opinion should be the result of thought, not a substitute for it

Photos from Pacific Beach

The Lindhs visit Pacific Beach and discover a huge bass system and surfers.

Book roundup, part 23

Includes a mea culpa, Hillbilly Elegy, Gulp, The Stars are Legion, and The Kill Society.

Putting new gaskets on the Kamado grill

Nic commits putty knife violence on his grill to replace the gaskets.

Wings of Freedom

Remembering the cost of World War II through airplanes.