The Core Dump

A strong conviction that something must be done is the parent of many bad measures

[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 27

Includes Hollywood Dead, Tales from the Loop, Things from the Flood, The Court of Broken Knives, and Port of Shadows.

To see what is in front of one’s nose needs a constant struggle

“Cancel everything. You’re going into emergency surgery today”

Nic has a retinal tear and has his vision is saved by a laser.

Book roundup, part 26

Includes The Storm Before the Storm, White Trash, Calypso, Tell the Machine Goodnight, Prince of Fools, and Provenance.

Renewing the nerd card: Installing Ubiquiti UniFi in the house

The Internet tells Nic to install Ubiquiti gear in his house, so he does, and now he has thoughts.

The greater the ignorance the greater the dogmatism

Working in the pod mines

What I wish I’d known when I started podcasting.

It is impossible for a person to begin to learn what he already thinks he knows

Smell the Foam Finger

Nic starts a new podcast about—gasp!—American sports.

Book roundup, part 25

Mostly excellent non-fiction in this installment. Includes Fantasyland, The Miracle of Dunkirk, Das Reich, The Undoing Project, Waiting for the Punch, Vacationland and Points of Impact.