Como fazer alterações no Mac / etc / hosts permanentes?

8

No meu Mac (executando o OS 10.6.8), posso editar meu arquivo de hosts com sudo vi /etc/hosts , mas as alterações que faço parecem não persistir durante as reinicializações ou possivelmente despertando do modo de suspensão.

Existe alguma maneira de fazer essas alterações persistirem?

Esta é uma alteração de amostra que adiciona uma substituição 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

Atualização: Também estou usando o software Cisco AnyConnect VPN, e isso acabou sendo a pista. Veja a resposta de Daniel abaixo.

Atualização 2013-05-20: Esse comportamento foi corrigido / alterado pela Cisco em AnyConnect v3.0.5080 (ou superior), lançado na Primavera de 2013. Notas de versão - pesquise hosts.ac .

    
por BrianC 26.01.2012 / 18:49

4 respostas

13

Você está usando o software Cisco AnyConnect, que sobrescreve /private/etc/hosts com /private/etc/hosts.ac . Basta editar o arquivo .

    
por 26.01.2012 / 21:37
6

Eu tive o mesmo problema. No meu caso, estou usando o cliente VPN F5. Você não deve editar /etc/hosts enquanto o cliente VPN estiver em execução, porque essas alterações serão apagadas quando você desligar o cliente VPN. Para tornar suas alterações permanentes, edite o arquivo /etc/hosts antes de iniciar o seu cliente VPN.

    
por 20.02.2017 / 12:18
1

Graças à explicação do @ Danial. Usar um script de wrapper para editar os hosts em vez de editá-los diretamente diminuiria muito a sua dor.

#!/bin/sh
ORIG=/etc/hosts
SUCKER=/etc/hosts.ac
sudo vim $ORIG
pid=$!
wait $pid
sudo cp $ORIG $SUCKER
echo "$ORIG copied to $SUCKER"
    
por 13.05.2013 / 11:45
0

Eu também tive esse problema com o cliente Pulse Secure VPN, que faz um arquivo /etc/pulse-hosts.bak que você deve editar também. Editar / etc / hosts antes de iniciar o Pulse também funciona.

    
por 05.08.2018 / 22:18