OSX Sierra โฮสต์ไฟล์จะถูกละเว้น


19

ด้วยเหตุผลบางอย่างสองวันที่ผ่านมาไฟล์โฮสต์ของฉันเริ่มถูกเพิกเฉย
ฉันใช้ Mac กับ Sierra OSx นี่คือเนื้อหาปัจจุบันของไฟล์ / 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

ส่ง Ping ไปยัง localkur.com

ping: cannot resolve localkur.com: Unknown host

ฉันรีสตาร์ทระบบทำความสะอาดแคชโดยใช้คำสั่งเหล่านี้

sudo killall -HUP mDNSResponder;
sudo discoveryutil mdnsflushcache;
sudo discoveryutil udnsflushcaches;

เปิดไฟล์อีกครั้งในโปรแกรมแก้ไขข้อความที่แตกต่างกัน, vm, ประเสริฐ ฯลฯ
ตรวจสอบอีกครั้งว่าช่องว่างหรือแท็บ (หรือเว้นวรรคสองครั้งหรือแท็บสองครั้ง) - ทดสอบกับความเป็นไปได้ทั้งหมด
ตรวจสอบไฟล์ด้วยคำสั่งนี้

 sudo fs_usage | grep "/etc/hosts"

และได้รับผลลัพธ์นั้นเมื่อรีเฟรชเบราว์เซอร์หรือบันทึกด้วยประเสริฐ

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

ฉันพลาดอะไรไป
เหตุใดไฟล์นี้จึงถูกละเว้น?
จะเปิดใช้งานอีกครั้งได้อย่างไร


บรรทัดที่เช็คอินมีอะไรSystem Preferences > Network > Advanced ... > Proxiesบ้าง มีอะไรพิเศษไหม?
FarazX

ไฟล์อาจเสียหาย / เสียหายจะต้องเป็นไฟล์ ASCII - ทำไมคุณไม่สร้างใหม่
13 ก.ค.

@FarazX มี "การตั้งค่าพร็อกซีบายพาสสำหรับโฮสต์และโดเมนเหล่านี้:" และค่าคือ "* .local, 169.254 / 16"
T1000

@ 13nilux วิธีการสร้างใหม่อย่างถูกต้อง
T1000

ด้วยnano- ย้ายทำไฟล์เก่าไปที่ / etc / oldhosts สร้างไฟล์ใหม่ด้วย nano เติมด้วยค่าของไฟล์เก่าและบันทึกเป็น / etc / hosts
13dimitar

คำตอบ:


12

ไฟล์อาจเสียหาย / เสียหายจะต้องเป็นไฟล์ ASCII คุณควรสร้างใหม่:

  • ย้ายไฟล์เก่าด้วย mv -f /etc/hosts /etc/oldhosts
  • สร้างไฟล์ใหม่ด้วย nano
  • เติมด้วยค่าของไฟล์เก่า
  • บันทึกเป็น /etc/hosts

ที่ควรทำ


1
ขอบคุณนั่นเป็นปัญหาในกรณีของฉัน! ไฟล์นี้ดูปกติทั้งหมด แต่ก็เห็นได้ชัดว่ามีการเข้ารหัสเปลี่ยนแปลงหรืออย่างอื่น มันสามารถมองเห็นได้โดย 'cat / etc / hosts' เนื่องจาก cat ไม่ได้แสดงรายการเนื้อหาทั้งหมดของไฟล์เพียงบรรทัดสุดท้าย ....
T1000

13
ควรตรวจสอบfile -I /etc/hostsผลลัพธ์ก่อน ถ้ามันออกcharset=us-asciiมาคำตอบนี้จะไม่ทำงานสำหรับคุณ
MCCCS

10

ดูการตั้งค่าระบบ -> เครือข่าย

หาก "Location" ที่ใช้งานอยู่ในปัจจุบันมีเซิร์ฟเวอร์ DNS หนึ่งตัวหรือมากกว่านั้นระบบจะสร้างไฟล์ "/etc/resolv.conf" ซึ่งจะแสดงรายชื่อเซิร์ฟเวอร์เหล่านั้นเป็นสถานที่ที่จะไปแก้ไขโดยอ้อม / etc / hosts ทั้งหมด

resolv.conf ถูกสร้างแบบไดนามิกโดยการตั้งค่า "เครือข่าย" และเขียนทับโดยยึดตามฟิลด์ "เซิร์ฟเวอร์ DNS" ของ "ตำแหน่ง" ที่ใช้งานอยู่ในปัจจุบันหรือลบออกหากช่องนั้นว่างเปล่า


การแก้ไขปัญหาสำหรับฉัน ขอขอบคุณที่โพสต์โซลูชันนี้
PhilR

1
ระบบของฉันใช้ DHCP เพื่อรับตัวแก้ไข DNS และมีไฟล์ /etc/resolv.conf ฉันจะแทนที่การสืบค้น DNS ปกติเพื่อปิดกั้น popunders ได้อย่างไร ความตั้งใจของฉันคือการเพิ่มบรรทัดไปยัง / etc / hosts
jetset

คุณวางแผนที่จะแยกแยะความแตกต่างระหว่างการสืบค้น DNS ที่ถูกต้องและตัว popunders อย่างไร ดูเหมือนว่าอาจเป็นปัญหาระดับเบราว์เซอร์ อาจให้บริการที่ดีกว่าโดยโซลูชันเบราว์เซอร์เช่น "Privacy Badger" หรือ "uBlock Origin" ใช่หรือไม่
BenL

1
ดังนั้นทางออกคืออะไร? การลบ DNS ที่ระบุไว้ในแท็บ DNS
multigoodverse

ในกรณีของฉันฉันไม่สามารถลบ DNS (ฉันใช้ pi-hole) แต่ต้องการให้บางแบล็คโฮลด์ก่อนที่พวกเขาจะถูกส่งไปยัง pi-hole DNS เพื่อแก้ไข ด้วยเหตุผลบางอย่างการมี127.0.0.1 example.com/ etc / hosts ไม่ทำงานและส่งการสืบค้น DNS ไปยัง pi-hole ซึ่งได้รับการแก้ไขแล้วในเบราว์เซอร์ แต่การเปลี่ยน 127.0.0.1 เป็น 0.0.0.0 ทำให้รายการของฉันอ่าน0.0.0.0 example.comใน / etc / hosts แทน .
Conor

2

นี่เป็นหัวข้อเก่าแน่นอน แต่ฉันกำลังเผชิญปัญหาเดียวกันในวันนี้และฉันพบวิธีแก้ปัญหา ออกจากที่นี่ในกรณีที่มีคนต้องการมัน

sudo dscacheutil -flushcache

การล้างแคช DNS ทำเคล็ดลับในกรณีของฉัน


1

ตรวจสอบให้แน่ใจว่ารายการชื่อโฮสต์ของคุณไม่เกิน 20 ชื่อ ฉันมักจะเป็นเว็บไซต์ที่ชอบใส่โฆษณาในหน้าของคุณดังนั้นฉันกำหนด FQDN จากป๊อปอัพเป็นนามแฝงของ localhost เมื่อเร็ว ๆ นี้ฉันพบว่าไฟล์โฮสต์ของฉันไม่ทำงาน ดูเหมือนว่าขีด จำกัด คือ 20 โฮสต์ ... ตัวอย่าง:

127.0.0.4 www.slutroulette.com static.exoclick.com www.gameskwala.com www.thefreecamsecret.com www.slutroulette.com cdn1.adexpert.com cdn2.adexpert.com cdn3.adexpert.com Abdn com www.abine.com e1.static.hoptopboy.com.rncdn1.com gameinvite.24trk.com main.exoclick.com 0427d7.se syndication.exoclick.com 0427d7.se gamingruff.com www.gamingruff.com mackeeperapp.zeobit ดอทคอม 
127.0.0.5 ads.adplxmd.com mackeeperapp3.mackeeper.com onclickads.net onclick.net fundownloads108.com pussl10.com rumleague.com kitsfilesdll.com pussl8.com nowsetup.enterworldofupgrading.review .com www.hitcpm.com www.ibtimes.co.uk mysagagame.com

0

/ etc / hosts ต้องมีการสิ้นสุดบรรทัดแบบ unix

ในกรณีของฉันฉันใช้ Sublime และบันทึก / etc / hosts ด้วยสไตล์ Mac OS ที่เป็นค่าเริ่มต้น มันเป็นสาเหตุของปัญหา

โซลูชันมาจากที่นี่: https://stackoverflow.com/a/42265844/1331420


-1

สามารถใช้ TAB แทน SPACE ได้ เป็นในกรณีของฉัน แก้ไขมันอย่างดี!


2
คุณสามารถอธิบายเพิ่มเติมเกี่ยวกับเรื่องนี้อีกเล็กน้อยได้ไหม?
โตโต้

-1

สำหรับฉันแล้วปัญหาคือการวางรายละเอียดการล้างแคช ฯลฯ ไม่ทำงาน

การลบรายการต้นฉบับและพิมพ์ทุกอย่างด้วยตนเองจากนั้นทำงานครั้งที่ 1!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.