如何在MacOS(Mac OS X)上編輯主機文件?Mac的hosts文件是一個很小但很重要的文本文檔,可以將主機名映射到指定的IP地址。盡管現(xiàn)代Internet使用各種公共和私有DNS服務(wù)器來映射IP地址,但是hosts文件是覆蓋這些DNS服務(wù)器的便捷方法,可讓您手動將網(wǎng)站地址指向所需的IP地址,或阻止對某個IP地址的訪問。指向一個未使用或內(nèi)部IP地址的站點。
讓我們快速看一下如何在macOS上編輯Mac主機文件。如何使用文本編輯來編輯Mac Hosts文件
第一種方法是使用TextEdit,因為hosts文件是純文本文檔。但是,由于文件位于文件系統(tǒng)的受保護(hù)區(qū)域中,因此無法直接打開文件。相反,我們需要將文件復(fù)制到不受保護(hù)的位置(例如桌面),對其進(jìn)行編輯,然后再復(fù)制回去。
要查找主機文件,請打開“查找器”,您可以通過單擊桌面,屏幕左下方的笑臉查找器或按Command +空格鍵+ Finder來訪問該查找器。然后,請按照下列步驟操作:
選擇轉(zhuǎn)到下拉菜單
然后從菜單中選擇“轉(zhuǎn)到文件夾”
在框中,在框中輸入“ / private / etc / hosts”,然后按“回車”。
將打開一個新的Finder窗口,并且將選擇Mac的hosts文件。單擊并將其拖到“查找器”窗口之外,然后將其拖放到桌面上。
要打開它,只需雙擊,它將在TextEdit(或您選擇的文本編輯器)中顯示文件的內(nèi)容。
1.阻止IP地址
默認(rèn)情況下,/ etc / hosts文件相對簡單。它包含許多描述性文本行,并用井號或數(shù)字(也稱為井號或井號標(biāo)簽)“?!奔右宰⑨?。
任何以#號開頭的行都是注釋,/ etc / hosts文件不會讀取。對于每一行,計算機都會忽略井號后的任何文本,這是在文件中添加注釋和描述的好方法。它還包含localhost和broadcasthost的默認(rèn)IP值。要編輯文件,您將在broadcasthost之后添加自己的行。
除了測試新開發(fā)的網(wǎng)站和虛擬主機遷移之外,編輯主機文件的另一個原因是阻止對特定網(wǎng)站的訪問。
在我們的示例中,我們假設(shè)我們使用的計算機是我們要專門用于工作的設(shè)備,而不是讓自己在我們的工作機上被Facebook分散注意力。
為此,請鍵入您要分配的IP地址,后跟兩個選項卡和主機名。在我們的案例中,我們要阻止Facebook,因此我們會將www.facebook.com映射到0.0.0.0,這將作為無效的IP地址,從而導(dǎo)致錯誤。
現(xiàn)在,每當(dāng)我們嘗試從Mac轉(zhuǎn)到www.facebook.com時,Web瀏覽器將無法加載該頁面,希望能鼓勵我們重新開始工作!
2.重新路由網(wǎng)址
或者,您可以輸入有效站點的IP地址而不是0.0.0.0,這將導(dǎo)致嘗試訪問Facebook的用戶被定向到您選擇的站點。
要確定網(wǎng)站的IP地址,您可以使用macOS隨附的dig命令。要通過終端“挖掘”站點,我們只需打開終端,然后在URL上運行dig命令,然后將返回IP地址作為輸出。
$ dig www.techjunkie.com +short
104.25.27.105
注意:+ short選項使輸出僅保留我們所需的信息,即IP地址。
記下返回的IP地址,并在Mac主機文件映射中使用它。例如,《紐約時報》網(wǎng)站返回的IP地址為170.149.172.130。如果我們在主機文件中將其映射到Facebook,則每當(dāng)使用Mac的某人嘗試訪問Facebook時,他們都會看到《紐約時報》加載。
注意:許多網(wǎng)站不允許您將域名映射到當(dāng)前映射到該站點的IP地址,因此嘗試時會出現(xiàn)安全錯誤。
您可以通過在每一行上輸入新的映射,將所需的條目添加到主機文件中。對hosts文件進(jìn)行所需的更改后,將其保存在桌面上的當(dāng)前位置。
然后,將它從你的桌面恢復(fù)到原來的位置在下降hosts文件/ /私營等。如果您已經(jīng)關(guān)閉指向該目錄的Finder窗口,只需使用上面討論的Finder>轉(zhuǎn)到>轉(zhuǎn)到文件夾命令來重新打開它。
當(dāng)您將主機文件放回其原始位置時,macOS將詢問您如何處理已經(jīng)存在的未修改主機文件。選擇“替換”,然后輸入您的管理用戶密碼以驗證傳輸。
修改后的主機文件現(xiàn)在就位,啟動您的Web瀏覽器以測試更改。
3.刷新您的DNS緩存
在大多數(shù)情況下,新映射應(yīng)立即起作用,但是如果您沒有看到正確的行為,則可能需要刷新DNS緩存,從而迫使瀏覽器從主機文件中讀取以確定映射。
要刷新Mac上的DNS緩存,請打開“終端”并使用以下命令(使用sudo可以以計算機的管理員身份運行此命令):
sudo killall -HUP mDNSResponder
注意:您需要輸入管理員密碼才能執(zhí)行此命令。
要使您的Mac清除DNS緩存,然后通過回顯確認(rèn)來確認(rèn)它已清除緩存,請輸入以下兩個命令,并用分號隔開,如下所示:
sudo killall -HUP mDNSResponder;say DNS cache has been flushed
然后,您的Mac會通過揚聲器說“ DNS緩存已刷新”。
上一節(jié)中的步驟很容易,但是如果要避免復(fù)制hosts文件,則可以使用macOS內(nèi)置的UNIX Nano Text Editor在Terminal中直接對其進(jìn)行編輯。
首先,啟動Terminal,鍵入以下命令,然后按Return鍵。與所有sudo命令一樣,您還需要輸入管理員密碼才能執(zhí)行該命令:
$ sudo nano /private/etc/hosts
現(xiàn)在,您將看到在Nano編輯器或vim或您選擇的其他編輯器中打開的hosts文件。要在Nano中導(dǎo)航和編輯文件,請使用鍵盤上的箭頭鍵。
就像我們上面的TextEdit方法一樣,我們可以隨意添加,編輯或刪除主機名映射。因為我們使用sudo啟動了Nano,所以所有更改都將通過身份驗證并直接保存到原始hosts文件,而無需將其復(fù)制到其主目錄之外。
完成更改后,請按Control-X退出編輯器,按Y進(jìn)行保存,然后按Return覆蓋現(xiàn)有的主機文件。
如前所述,如果您發(fā)現(xiàn)新映射無法正常工作,請確保刷新DNS緩存。
我們的示例提到了在工作環(huán)境中阻止和重定向分散注意力的站點,但是您也可以使用以下步驟來手動阻止對惡意網(wǎng)站的訪問,當(dāng)然也可以阻止其他用途。
如果您犯了一個錯誤并且不確定如何解決它,則可以始終使用上述方法之一輸入以下默認(rèn)信息來恢復(fù)默認(rèn)的主機文件內(nèi)容:
##
# 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
了解如何在macOS上編輯主機文件提供了一種便捷的方法來覆蓋DNS服務(wù)器,并手動將網(wǎng)站地址指向新的IP地址或阻止訪問,并且通過執(zhí)行上述步驟,您可以非??斓赝瓿纱巳蝿?wù)。
如果您是Mac用戶,并且覺得本文有用,則可能需要查看其他TechJunkie教程,包括如何查找Mac的確切CPU模型和 如何在Mac Mojave中刷新DNS。
如何恢復(fù)MacBook Pro的出廠設(shè)置?是時候完全擦拭MacBook Pro并將其恢復(fù)為出廠設(shè)置了嗎?無論您是在線銷售Macbook Pro,將其借...
2021-05-02在學(xué)習(xí)幾個簡單易行的步驟后,其中一些問題可以輕松解決。了解基礎(chǔ)知識可以幫助您延長計算機的使用壽命,并確保它在其整個生...
2021-06-17每個人都應(yīng)該學(xué)習(xí)的計算機的一項重要功能是如何復(fù)制和粘貼。 這是幾乎每臺計算機上都可用的基本功能,一旦您知道如何使用 Mac...
2021-06-17存儲是任何計算機都要考慮的重要因素。無論您的MacBookPro有多少不錯的功能,如果存儲空間不足,都可能導(dǎo)致不必要的問題。有...
2021-06-17早期的計算機最多只能使用幾個小時,而今天的新款MacBookPro可以使用8小時或更長時間,然后您必須將其連接到電源。更長的電池...
2021-06-16