web-dev-qa-db-ja.com

/ etc / hostsがLionでリセットされる

ローカルマシンでWeb開発を行うために、/etc/hostsファイルは、VirtualHostsを介してApacheがサービスを提供している127.0.0.1を指すホストを定義します。これはうまくいきますが、Lionが私の/ etc/hostsファイルを頻繁にリセットしているようです。

他の誰かがこれを経験しましたか?これを起こさないようにする方法はありますか?

Snow Leopardではこの問題は一度もありませんでした。

22
Jimmy Z

/ etc/hostsファイルをリセットしているものを発見しました。これは、Cisco AnyConnect VPNクライアントです。組織のVPNに接続すると、hostsファイルがデフォルトにリセットされていました。私はめったにVPNに接続しないので、問題が断続的に見えるようになりました。

シスコのAnyConnect VPNクライアントを使用する場合は、hostsファイルが次の内容にリセットされることに注意してください。/etc/hosts.ac

この問題を解決するには、/etc/hostsファイルと/etc/hosts.acファイルの両方でホストを変更します。

MacWorldからヒントを得ました。

37
Jimmy Z

ディレクトリサービス(Tiger以前のNetInfo)には、独自の静的ホストマップがあり、/etc/hostsの前にアドレスリゾルバーによって使用されます。これらは、Directory Utilityまたはdsclを介して操作できます。

dscl localhost -create /Local/Default/Hosts/www.myhost1.com IPAddress 127.0.0.1
dscl localhost -create /Local/Default/Hosts/www.myhost2.com IPAddress 127.0.0.1
dscl localhost -create /Local/Default/Hosts/www.myhost3.com IPAddress 127.0.0.1
dscl localhost -create /Local/Default/Hosts/www.myhost4.com IPAddress 127.0.0.1
2
ephemient

私はLionでこの動作を見たことがなく、カスタムの/ etc/hostsを持っています。

ファイル全体が元に戻っていますか、それとも127.0.0.1のような一般的なエントリの最初の数行ですか?

特定のオペレーティングシステムアクションが上位のいくつかの「標準」/ etc/Host行を再適用する可能性があるので、それらを編集する代わりに、行を追加してみます...

鉱山はこのように見え、魔法のように変わったことはありません:

 ## 
#ホストデータベース
#
#localhostは、システムの起動時にループバックインターフェイスを構成するために使用されます
#。このエントリは変更しないでください。
 ## 
 127.0.0.1 localhost 
 255.255.255.255 broadcasthost 
 :: 1 localhost 
 fe80 :: 1% lo0 localhost 
 
#一部のWebリクエストをローカルにルーティングします
 127.0.0.1 www.myhost1.com 
 127.0.0.1 www.myhost2.com 
 127.0 .0.1 www.myhost3.com 
 127.0.0.1 www.myhost4.com 
1
spkane

私はジミーZと同じ問題を目の当たりにしました。特に私が多数のカスタムホストを持っているので、本当にイライラします。 3回目か4回目になって初めて、再起動後に必ず発生することに気づきました。

私はようやくホストファイルを削除して再作成することを提案する this ブログの投稿を偶然見つけました。私は提案に従い、再起動し、起動前の状態で/ etc/hostsを見つけて安心しました。これが私がやったことの要約です。

cat /etc/hosts | pbcopy 
Sudo rm /etc/hosts{,.ac}
Sudo touch /etc/hosts
Sudo su root -c 'pbpaste > /etc/hosts'
1
Jeff Poulton