Wie mache ich Änderungen an Mac /etc/hosts dauerhaft?

Auf meinem Mac (unter OS 10.6.8) kann ich meine Hosts-Datei mit sudo vi /etc/hosts bearbeiten, aber Änderungen, die ich vornehme, scheinen nicht durch Neustarts oder möglicherweise durch Erwachen aus dem Schlafmodus bestehen zu bleiben.

Gibt es eine Möglichkeit, diese Änderungen fortzusetzen?

Hier ist eine Beispieländerung, die eine Überschreibung für hinzufügt www.example.com:

$ cat /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

1.2.3.4 www.example.com

Update: Ich verwende auch die Cisco AnyConnect VPN-Software, und das stellte sich als Hinweis heraus. Siehe Daniels Antwort unten.

Update 2013-05-20: Dieses Verhalten wurde von Cisco in AnyConnect v3.0.5080 (oder höher) behoben/geändert, das im Frühjahr 2013 veröffentlicht wurde. Versionshinweise - Suche nach hosts.ac.

Author: BrianC, 2012-01-26

5 answers

Sie verwenden Cisco AnyConnect Software, die /private/etc/hosts mit /private/etc/hosts.ac überschreibt. Bearbeiten Sie stattdessen einfach diese Datei.

 16
Author: Daniel Beck,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-01-26 20:37:05

Ich hatte das gleiche Problem. In meinem Fall verwende ich den F5 VPN Client. Sie sollten /etc/hosts während der Ausführung des VPN-Clients nicht bearbeiten, da diese Änderungen beim Herunterfahren des VPN-Clients gelöscht werden. Um Ihre Änderungen dauerhaft zu machen, bearbeiten Sie die Datei /etc/hosts, bevor Sie Ihren VPN-Client starten.

 16
Author: Tomasz Szymulewski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-04-03 09:42:00

Ich hatte auch dieses Problem mit dem Pulse Secure VPN-Client, der eine Datei /etc/pulse-hosts erstellt.bak, dass Sie auch bearbeiten sollten. Das Bearbeiten von/etc / hosts vor dem Start von Pulse funktioniert ebenfalls.

 3
Author: turiyag,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-08-05 20:18:32

Danke an @Danials Erklärung. Die Verwendung eines Wrapper-Skripts zum Bearbeiten von Hosts, anstatt es direkt zu bearbeiten, würde Ihre Schmerzen erheblich lindern.

#!/bin/sh
ORIG=/etc/hosts
SUCKER=/etc/hosts.ac
sudo vim $ORIG
pid=$!
wait $pid
sudo cp $ORIG $SUCKER
echo "$ORIG copied to $SUCKER"
 1
Author: fwonce,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-07-20 19:25:00

Die meisten VPN-Clients erstellen beim Starten des VPN eine Sicherungsdatei des /etc/Hosts.

Um Ihre Änderungen dauerhaft aufrechtzuerhalten, ändern Sie einfach die Hostdatei ohne VPN-Verbindung.

Sobald Sie das VPN gestartet haben, wird die Sicherungsdatei mit Ihren Änderungen erstellt, und jeder VPN-Client, der die Hostdatei überschreibt, behält Ihre Änderungen weiterhin bei.

Gemeinsamer Name der Sicherungsdatei nach Client:

  • Pulse Secure Client - Puls-hosts.bak
  • Cisco Any Connect - hosts.ac
 0
Author: xxnations,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2020-05-01 15:28:30