Как отредактировать файл hosts в Linux
Файл hosts в Linux является важным системным файлом, используемым для сопоставления имен хостов с IP-адресами. Этот файл позволяет пользователям определять собственные разрешения доменных имен, что может быть особенно полезно для локальной разработки, тестирования или переопределения DNS запросов для конкретных доменов. В этой статье мы рассмотрим, как редактировать файл hosts в Linux, предоставляя пошаговые инструкции и важные соображения.
Понимание файла Hosts
Файл hosts — это простой текстовый файл, который находится в вашей системе Linux, обычно расположенный по адресу:
/etc/hosts
Когда вы пытаетесь получить доступ к веб-сайту или сервису, используя имя хоста, система сначала проверяет этот файл, прежде чем запрашивать DNS-серверы. Это означает, что вы можете использовать файл hosts для перенаправления доменных имен на конкретные IP-адреса без изменения настроек DNS.
Почему редактировать файл Hosts?
Вы можете захотеть отредактировать файл hosts по нескольким причинам, включая:
- Тестирование новых веб-сайтов: Указать домен на локальный сервер разработки без изменения записей DNS.
- Блокировка веб-сайтов: Перенаправить нежелательные домены на 127.0.0.1 (localhost), чтобы предотвратить доступ.
- Пользовательское разрешение домена: Переопределить настройки DNS для конкретных приложений или сервисов.
Шаги для редактирования файла Hosts в Linux
Шаг 1: Откройте терминал
Чтобы отредактировать файл hosts, вам нужно использовать терминал. Откройте ваше терминальное приложение. Обычно вы можете найти его в меню приложений или нажав Ctrl + Alt + T.
Шаг 2: Создайте резервную копию файла Hosts
Перед внесением каких-либо изменений разумно создать резервную копию текущего файла hosts. Выполните следующую команду:
sudo cp /etc/hosts /etc/hosts.backup
Эта команда создает копию оригинального файла hosts с именем hosts.backup в той же директории.
Шаг 3: Откройте файл Hosts для редактирования
Используйте текстовый редактор, чтобы открыть файл hosts. Вы можете использовать редакторы, такие как nano, vi или gedit. Ниже показано, как это сделать с помощью nano, который удобен для новичков:
sudo nano /etc/hosts
Шаг 4: Отредактируйте файл Hosts
Как только файл hosts открыт в редакторе, вы увидите строки, которые выглядят следующим образом:
127.0.0.1 localhost
Чтобы добавить новое сопоставление имени хоста и IP-адреса, перейдите в конец файла и добавьте новую строку в следующем формате:
IP_address hostname
Например, чтобы указать домен example.local на вашу локальную машину, вы бы добавили:
127.0.0.1 example.local
Чтобы заблокировать веб-сайт, вы можете перенаправить его на localhost:
127.0.0.1 unwanted-website.com
Убедитесь, что каждая запись находится на новой строке, и разделяйте IP-адрес и имя хоста пробелами (пробелами или табуляцией).
Шаг 5: Сохраните изменения и выйдите
Если вы используете nano, сохраните ваши изменения, нажав CTRL + O, затем нажмите Enter для подтверждения. Выйдите из редактора, нажав CTRL + X.
Если вы используете vi, нажмите Esc, введите :wq, а затем нажмите Enter, чтобы сохранить и выйти.
Шаг 6: Проверьте ваши изменения
Чтобы убедиться, что ваши изменения применены, вы можете проверить их, выполнив следующую команду:
cat /etc/hosts
Это отобразит содержимое файла hosts. Вы должны увидеть ваши недавно добавленные записи в списке.
Шаг 7: Протестируйте изменения
Чтобы проверить, разрешается ли имя хоста на желаемый IP-адрес, вы можете использовать команду ping:
ping example.local
Если все настроено правильно, вывод должен показать, что example.local разрешается на 127.0.0.1.
Важные соображения
- Административные привилегии: Редактирование файла hosts требует административных привилегий. Вам нужно использовать sudo для редактирования файла.
- Порядок имеет значение: Система обрабатывает файл hosts сверху вниз. Если есть несколько записей для одного и того же имени хоста, используется первое совпадение.
- Очистка кэша DNS: Если изменения не кажутся действительными, вам может потребоваться очистить кэш DNS. Это может варьироваться в зависимости от дистрибутива и может потребовать перезапуска сетевых служб.
Заключение
Редактирование файла hosts в Linux — это простой процесс, который может помочь вам настроить, как ваша система разрешает имена хостов. Будь то для разработки, тестирования или блокировки нежелательных сайтов, файл hosts предоставляет мощный способ контролировать разрешение имен хостов локально. Следуя шагам, изложенным в этом руководстве, вы можете легко вносить и проверять изменения в файл hosts, улучшая ваш контроль над вашей средой Linux.
