Bagaimana cara membuat perubahan pada Mac / etc / hosts permanen?


13

Di Mac saya (menjalankan OS 10.6.8), saya dapat mengedit file host saya sudo vi /etc/hosts, tetapi perubahan yang saya buat tampaknya tidak bertahan melalui restart atau mungkin bangun dari mode tidur.

Apakah ada cara untuk membuat perubahan ini tetap ada?

Berikut ini contoh perubahan menambahkan penggantian untuk 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

Pembaruan: Saya juga menggunakan perangkat lunak Cisco AnyConnect VPN, dan itu ternyata petunjuknya. Lihat jawaban Daniel di bawah ini.

Pembaruan 2013-05-20: Perilaku ini diperbaiki / diubah oleh Cisco di AnyConnect v3.0.5080 (atau lebih tinggi), dirilis pada Spring 2013. Catatan Rilis - cari hosts.ac.



1
@ user606723 /etcadalah tautan simbolis ke /private/etc.
Daniel Beck

Brian, apakah Anda menggunakan perangkat lunak Cisco VPN? Anda punya file /etc/hosts.ac?
Daniel Beck

Bingo! Saya sedang menggunakan Cisco AnyConnect VPN. Saya memperbarui file /etc/hosts.ac dan sekarang tetap ada perubahan. Tolong cantumkan ini sebagai jawaban dan saya akan menerimanya.
BrianC

Jawaban:


16

Anda menggunakan perangkat lunak Cisco AnyConnect, yang akan menimpa /private/etc/hostsdengan /private/etc/hosts.ac. Hanya mengedit yang file bukan.


14

Saya memiliki masalah yang sama. Dalam kasus saya, saya menggunakan klien F5 VPN. Anda tidak boleh mengedit /etc/hostssaat klien VPN sedang berjalan, karena perubahan ini akan dihapus ketika Anda menutup klien VPN. Untuk membuat perubahan Anda permanen, edit /etc/hostsfile sebelum Anda memulai klien VPN Anda.


Bagi saya, sebagai F5 VPN ini sangat berguna.
robert

1

Terima kasih atas penjelasan @ Danial. Menggunakan skrip pembungkus untuk mengedit host daripada mengeditnya secara langsung akan banyak mengurangi rasa sakit Anda.

#!/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

Saya juga punya masalah dengan klien Pulse Secure VPN, yang membuat file /etc/pulse-hosts.bak yang harus Anda edit juga. Mengedit / etc / hosts sebelum meluncurkan Pulse juga berfungsi.


1
Apa gunanya mengedit file cadangan ?
Scott

0

Sebagian besar klien VPN membuat file cadangan dari / etc / host ketika Anda memulai VPN.

Untuk menjaga perubahan Anda secara permanen, cukup ubah file host tanpa koneksi VPN.

Setelah Anda memulai VPN, file cadangan akan dibuat dengan perubahan Anda, dan setiap klien VPN yang menimpa file host akan tetap menyimpan perubahan Anda.

Nama file cadangan umum oleh klien:

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

Ini tampaknya pada dasarnya versi yang lebih verbal dari jawaban yang diterima - dan Anda salah mengeja “Apa saja”.
G-Man Mengatakan 'Reinstate Monica'

Terima kasih ... Jawaban yang diterima menyarankan PERANG untuk memperbarui file cadangan. Jawaban ini adalah untuk memperbarui file host ketika VPN terputus. Solusi ini akan bekerja untuk Klien VPN apa pun
xxnations
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.