¿Cómo hacer cambios permanentes en Mac / etc / hosts?


13

En mi Mac (con OS 10.6.8), puedo editar mi archivo de hosts sudo vi /etc/hosts, pero los cambios que realizo no parecen persistir durante los reinicios o posiblemente despertando del modo de suspensión.

¿Hay alguna manera de hacer que estos cambios persistan?

Aquí hay un cambio de muestra que agrega una anulación para 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

Actualización: también estoy usando el software Cisco AnyConnect VPN, y resultó ser la pista. Vea la respuesta de Daniel a continuación.

Actualización 2013-05-20: Cisco corrigió / modificó este comportamiento en AnyConnect v3.0.5080 (o superior), lanzado en la primavera de 2013. Notas de la versión : busque hosts.ac.



1
@ user606723 /etces un enlace simbólico a /private/etc.
Daniel Beck

Brian, ¿estás usando el software Cisco VPN? ¿Tienes el archivo /etc/hosts.ac?
Daniel Beck

¡Bingo! Estoy cara a cara con Cisco AnyConnect VPN. Actualicé el archivo /etc/hosts.ac y ahora persiste los cambios. Por favor, ponga esto como respuesta y lo aceptaré.
BrianC

Respuestas:


16

Está utilizando el software Cisco AnyConnect, que se sobrescribirá /private/etc/hostscon /private/etc/hosts.ac. Simplemente edite ese archivo en su lugar.


14

He tenido el mismo problema. En mi caso estoy usando el cliente F5 VPN. No debe editar /etc/hostsmientras se ejecuta el cliente VPN, porque estos cambios se borrarán cuando cierre el cliente VPN. Para que sus cambios sean permanentes, edite el /etc/hostsarchivo antes de iniciar su cliente VPN.


Para mí, como F5 VPN, esto fue muy útil.
robert

1

Gracias a la explicación de @ Danial. El uso de un script de envoltura para editar hosts en lugar de editarlo directamente aliviaría mucho su dolor.

#!/bin/sh
ORIG=/etc/hosts
SUCKER=/etc/hosts.ac
sudo vim $ORIG
pid=$!
wait $pid
sudo cp $ORIG $SUCKER
echo "$ORIG copied to $SUCKER"

0

También tuve este problema con el cliente Pulse Secure VPN, que crea un archivo /etc/pulse-hosts.bak que también debe editar. Editar / etc / hosts antes de iniciar Pulse también funciona.


1
¿De qué sirve editar un archivo de copia de seguridad ?
Scott

0

La mayoría del cliente VPN crea un archivo de copia de seguridad de / etc / host cuando inicia la VPN.

Para mantener sus cambios de forma permanente, simplemente cambie el archivo host sin una conexión VPN.

Una vez que inicie la VPN, el archivo de copia de seguridad se creará con sus cambios y cualquier cliente VPN que anule el archivo host aún mantendrá sus cambios.

Nombre de archivo de respaldo común por cliente:

  • Pulse Secure Client - pulse-hosts.bak
  • Cisco Any Connect - hosts.ac

Esto parece ser básicamente una versión más detallada de la respuesta aceptada, y usted escribió incorrectamente "Cualquiera".
G-Man dice 'reinstalar a Mónica' el

Gracias ... La respuesta aceptada sugiere una WAR para actualizar el archivo de copia de seguridad. Esta respuesta es actualizar el archivo host mientras la VPN está desconectada. Esta solución funcionará para cualquier cliente VPN
xxnations
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.