
어떤 이유로 이틀 전부터 내 호스트 파일이 무시되기 시작했습니다.
저는 Sierra OSx와 함께 Mac을 사용하고 있습니다. 이것은 /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 localhostage
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
127.0.0.1 localkur.com
localkur.com을 핑하면 반환됩니다.
ping: cannot resolve localkur.com: Unknown host
시스템을 다시 시작하고 다음 명령을 사용하여 캐시를 정리했습니다.
sudo killall -HUP mDNSResponder;
sudo discoveryutil mdnsflushcache;
sudo discoveryutil udnsflushcaches;
vm, sublime 등의 다른 텍스트 편집 프로그램에서 파일을 다시 엽니다.
공백 또는 탭(또는 이중 공백 또는 이중 탭)인지 다시 확인하여 모든 가능성을 테스트했습니다.
또한 이 명령을 사용하여 파일을 모니터링합니다.
sudo fs_usage | grep "/etc/hosts"
브라우저를 새로 고치거나 Sublime으로 저장할 때 그 결과를 얻었습니다.
12:23:35 open private/etc/hosts 0.000019 Google Chrom
12:23:36 open private/etc/hosts 0.000019 Google Chrom
12:23:41 stat64 /private/etc/hosts 0.000022 Sublime Text
12:23:43 stat64 /private/etc/hosts 0.000019 Sublime Text
12:23:45 stat64 /private/etc/hosts 0.000019 Sublime Text
12:23:45 open /private/etc/hosts 0.000019 Sublime Text
내가 무엇을 놓치고 있나요?
이 파일은 왜 무시됩니까?
다시 활성화하는 방법은 무엇입니까?
답변1
파일이 손상되었을 수 있습니다. ASCII 파일이어야 합니다. 다시 생성해야 합니다.
- 이전 파일을 다음과 같이 이동하세요.
mv -f /etc/hosts /etc/oldhosts
- 다음을 사용하여 새 파일을 만듭니다.
nano
- 이전 파일의 값으로 채웁니다.
- 다른 이름으로 저장
/etc/hosts
그렇게 해야 합니다.
답변2
시스템 환경설정 -> 네트워크를 살펴보세요.
현재 활성 "위치"에 하나 이상의 DNS 서버가 나열되어 있는 경우 시스템은 /etc/hosts를 완전히 우회하여 해결을 위한 장소로 해당 이름 서버를 나열하는 "/etc/resolv.conf" 파일을 생성합니다.
resolv.conf는 "네트워크" 기본 설정에 의해 동적으로 생성되며 현재 활성화된 "위치"의 "DNS 서버" 필드를 기반으로 덮어쓰거나 해당 필드가 비어 있는 경우 제거됩니다.
답변3
이것은 확실히 오래된 스레드이지만 오늘도 같은 문제에 직면했고 해결책을 찾았습니다. 다른 사람이 필요할 경우를 대비해 여기에 남겨두세요.
sudo dscacheutil -flushcache
내 경우에는 DNS 캐시를 플러시하는 것이 트릭이었습니다.
답변4
SPACE 대신 TAB을 사용할 수도 있습니다. 내 경우에는 그랬다. 잘 고쳐졌어요!