Adaway копирование файла hosts не удалось

Обновлено: 04.07.2024

Файл hosts на компьютерах Windows используется для привязки определенных строк имен к определенным IP-адресам для переопределения других методов разрешения имен.

Часто кто-то решает изменить файл hosts и обнаруживает, что эти изменения не вступают в силу или что даже старые записи файла hosts впоследствии игнорируются. Это может произойти из-за множества ошибок, и может быть сложно понять, какая именно.

Когда перед Windows возникает проблема игнорирования файла hosts, какой протокол комплексного устранения неполадок можно использовать?

Этот вопрос имеет дубликаты на SO, такие как игнорирование файла HOSTS

Тем не менее, они, как правило, имеют дело с конкретным случаем, и как только обнаружена ошибка, допущенная ФП, дискуссия заканчивается. Если вы не сделали ту же ошибку, такое обсуждение не очень полезно. Поэтому я подумал, что было бы более полезно иметь общий протокол для решения всех проблем, связанных с хостами, который охватывал бы все случаи.

Также, как кто-то опубликовал в другом месте, не используйте «nslookup» для проверки этого, потому что эта команда игнорирует файл hosts. Скорее используйте «пинг».

Исходя из моего собственного опыта и того, с чем я столкнулся во время Google, вот несколько вещей, которые можно попробовать:

1. Вы проверили, что это работает правильно?

Изменения хостов должны вступить в силу немедленно, но Windows кэширует данные разрешения имен, поэтому в течение некоторого времени могут использоваться старые записи. Откройте командную строку (Windows + R cmd ,, Enter) и введите:

И посмотрите, использует ли он правильный IP. Если да, ваш файл hosts в порядке и проблема в другом месте.

Кроме того, вы можете сбросить кэш NetBios с помощью (откройте консоль как администратор или она не будет работать):

Вы можете проверить текущие данные в кеше DNS:

2. Основы

3. Пробелы

Примеры записей с использованием управляющих изображений Unicode для обозначения управляющих символов. (Не копируйте и не вставляйте их в файл hosts!)

Отдельные байты можно просматривать в Notepad ++ с помощью плагина hex hex editor . Notepad ++ также будет отображать специальные символы (Вид -> Показать символ), чтобы вы могли легко проверить количество и вид пробельных символов.

Если вы скопировали и вставили записи хостов откуда-то, вы можете получить несколько пробелов. В теории хосты поддерживают несколько пробелов, разделяющих два столбца, но это еще одна вещь, которую стоит попробовать, если больше ничего не работает.

Чтобы быть в безопасности, убедитесь, что все строки в вашем хост-файле используют табуляции или пробелы, а не оба.

Наконец, завершите файл пустой строкой.

4. Ключ реестра

Существует раздел реестра, указывающий расположение файла hosts. Предположительно, Windows на самом деле не поддерживает размещение файла hosts в других местах, но вы можете проверить это. Ключ:

Запись должна быть:

5. Разрешения

Иногда возникают проблемы с разрешениями для файла, атрибутами файла и подобными вещами. Чтобы воссоздать файл с разрешениями по умолчанию:

  1. Создайте новый текстовый файл на рабочем столе.
  2. Скопируйте и вставьте содержимое вашего текущего файла hosts в этот файл в Блокноте.
  3. Сохраните новый текстовый файл и переименуйте его в hosts .
  4. Скопируйте ( не перемещайте ) файл в свой %SystemRoot%\System32\drivers\etc каталог и перезапишите старый файл.

Последний пункт важен: копирование работает, перемещение - нет.

Локальная Users учетная запись должна иметь возможность читать файл hosts . Чтобы убедиться (в Windows 7):

  1. Перейдите к %SystemRoot%\System32\drivers\etc в проводнике Windows.
  2. Если вы не видите hosts файл, убедитесь, что вы видите скрытые и системные файлы .
  3. Щелкните правой кнопкой мыши по hosts файлу и выберите Properties из контекстного меню.
  4. В hosts Properties окне нажмите на Security вкладку.
  5. Изучите список имен в Group or user names: поле. Если %COMPUTERNAME%\Users присутствует, нажмите на него, чтобы просмотреть разрешения.
  6. Если Users нет, или присутствует, но не имеет Read разрешения, нажмите Edit. .
  7. Если Users его нет, нажмите Add. , введите Users , нажмите Check Names и нажмите OK или нажмите Enter.
  8. Выберите Users и убедитесь, Read & execute что отмечен в Allow столбце. Нажмите ОК. Если появится Windows Security окно с предупреждением, выберите « Yes Продолжить».
  9. Нажмите OK, чтобы закрыть hosts Properties окно.
  10. Перейдите к разделу 1 этого ответа и следуйте инструкциям, чтобы проверить, работает ли он сейчас.

6. Кодировка

Файл hosts должен быть закодирован в ANSI или UTF-8 без спецификации. Вы можете сделать это с помощью File -> Save As.

7. Прокси

Если у вас настроен прокси, он может обойти файл hosts. Решение состоит в том, чтобы не использовать прокси-сервер или настроить его так, чтобы он этого не делал.

Чтобы проверить, зайдите в Internet Explorer -> Свойства обозревателя -> Подключения -> Настройки локальной сети. Если все пусто и установлен флажок «Автоматически определять настройки», прокси не используется.

Если вы используете прокси-сервер для доступа в Интернет и, следовательно, не хотите его отключать, вы можете добавить исключения, перейдя в Internet Explorer -> Свойства обозревателя -> Подключения -> Параметры локальной сети -> Прокси-сервер / Дополнительно. Затем добавьте исключения в текстовое поле «Исключения». Например localhost;127.0.0.1;*.dev

8. DNS-адрес

(Это также может решить проблемы с прокси.)

Перейдите к свойствам сетевых подключений, затем настройкам TCP / IP и измените первый DNS-сервер на 127.0.0.1 (localhost). Второй, вероятно, должен быть вашим действительным IP-адресом DNS.

Это не обязательно для работы файла hosts , но в вашем случае это может помочь, если что-то настроено странно.

Не уверен, что это поможет, но я использую версию ядра 3.18.14-11104523. Я загружаю блочные файлы через Wi-Fi (работает нормально) и, самое главное, на этом конкретном телефоне он работал нормально, когда работал под управлением Android 6.0.

Самый полезный комментарий

Извините, что комментирую такую ​​старую ветку, но поскольку она все еще помечена как открытая, я скажу, что исправление @thany также сработало для меня. Если вы используете корень Magisk, вам необходимо включить бессистемные хосты в настройках Magisk Manager.

Все 12 Комментарий

Что в настройках установлено в файле target hosts?

Он установлен на /system/etc/hosts

Но! Я нашел возможное решение. Я не смог полностью это проверить. Я использую Magisk для управления корневым каталогом, и у него есть опция «бессистемные хосты». Я включил это, и теперь Adaway, похоже, работает. По крайней мере, никаких ошибок.

Я говорю «появляется», потому что отсутствие ошибок не всегда означает, что он работает идеально;)
Я еще не встречал рекламы, так что, может быть, у нас все хорошо.

Может быть, добавить это в какую-нибудь документацию? Я не уверен на 100%, что означает «бессистемные хосты», но если он что-то исправляет, с таким же успехом можно упомянуть об этом.

Не уверен, что я сделал, но я загрузил apk с F-droid на свой телефон, и после установки обновление моих хостов сработало.

Чувак, у меня была такая же проблема, просто скачайте последнюю версию с f-droid, предыдущие версии не будут работать .

Извините, что комментирую такую ​​старую ветку, но поскольку она все еще помечена как открытая, я скажу, что исправление @thany также сработало для меня. Если вы используете корень Magisk, вам необходимо включить бессистемные хосты в настройках Magisk Manager.

@Vankog хорошее предложение от @heubergen ,

Я считаю, что большинству людей предлагается перейти с SuperSU на Magisk сейчас, чтобы получить больше функций и упростить процесс обновления, поэтому эта проблема будет возникать чаще.

Наверно нет такого человека который любит рекламу, а в бесплатных приложениях Android ее очень много. В данной статье вы научитесь как удалить рекламу с приложений android с помощью Hosts файла и как это работает.

Даже если вам не надоедает реклама приложений на Android, то все же рекомендуется ее убрать по причине что она увеличивает расход энергии батареи, то есть смартфон или планшет на ОС Android быстрей сядет и плюс экономите траффик так как реклама грузится с сети Интернет.

Для того чтобы заблокировать показ рекламы прежде всего необходимо получить Root права на Android устройства раздел как получить root.

Инструкция удалить рекламу Android

Вариант 1

удалить рекламу android

удалить рекламу android

2. Выберите меню и нажмите Go

удалить рекламу android

3. Скачайте файл hosts.zip4. C ZIP архива извлеките файл HOSTS

удалить рекламу android

5. Переименуйте файл HOSTS в hosts (это важно, так как в android Hosts, hOsts и hosts это разные файлы)6. Скачайте и установите приложение Root Browser с Google Play.

7. Скопируйте файл hosts в корень карты памяти смартфона или планшета на Android.

8. Зайдите в приложение Root Browser.

9. Скопируйте файл hosts с карты памяти и переместите его в папку /system/etc согласившись на замену файла

10. Перезагрузите устройство и забудьте о рекламе в приложениях.

Обновленная информация!

Для достижения лучшего успеха в блокировки рекламы, скопируйте содержимое различных файлов hosts в один файл и после этого отправьте все на Android!

Вариант 2

Скачайте и установите приложение Adaway. Данное приложение, выполняет тоже самое, что и первый способ, то есть вносит в файл /etc/host списки URL адресов для блокировки рекламы.

Для тех кто хочет знать больше как это работает

Данный файл hosts есть во всех современных операционных системах будь то Windows или Linux куда относится Android. В данном файле находятся адреса сайтов которые перенаправляются на внутренний адрес 127.0.0.1. Если вы хотите добавить определенный сайт чтобы он блокировался то напишите по примеру:

Если вы раньше устанавливали или у вас уже установлено приложение которое блокирует рекламу, можете смело удалить его и воспользоваться данным способом, так как это приложение работает по тому же принципу.

Скажу даже больше. Adguard - не просто блокировщик рекламы, а полноценный брандмауэр. С нами вы сможете взять под полный контроль все приложения на вашем устройстве, разрешить или запретить доступ в сеть целиком, к какому-то конкретному серверу, да даже и просто к какому-то файлу! Но давайте обо всём по порядку.

История блокировки рекламы на Android

Первые блокировщики для Android появились в районе 2011 года. Поначалу это были Adblock Plus для Android и Adaway.
На данный момент первый практически заброшен, второй продолжает кое-как развиваться, но развиваться, по сути, особо некуда - скоро я объясню, почему.

В последующие годы по блокировке рекламы на Android было нанесено несколько сильных ударов:

В 2013 году появляется Android KitKat, а вместе с ним приходит и запрет смены настроек прокси без наличия Root-доступа. Это де-факто убило Adblock Plus для Android. На долгое время использование блокировщиков рекламы было ограничено только рутированными устройствами.

Приблизительно в то же самое время произошло изгнание блокировщиков из Google Play. Google утвердили новую политику для приложений, добавляемых в Play Store, фактически поставив блокировщики рекламы "вне закона".

По той же причине в ноябре 2014 года из Play Store была удалена самая первая версия Adguard для Android, спустя всего 5 дней после своего официального выхода.

Затем постепенно начали появляться браузеры с встроенной функцией блокировки рекламы, но это уже отдельная история, и о ней мы расскажем во второй части статьи.

В чем разница между Adguard и AdAway?

AdAway - это, на самом деле, прекрасный и очень простой способ заблокировать домены рекламных сетей. Что может быть проще? Вы просто говорите системе, что рекламный домен расположен в недоступном для нее месте, так что все попытки добраться до него заканчиваются неудачей. AdAway делает это с помощью специального файла, который называется “hosts” - многие, наверняка, знают о нём. В этом файле хранится список соответствий между именем сервера и адресом, по которому система должна к нему обращаться.

Такой способ, несомненно, обладает своими плюсами:

Простота. Всё, что нужно - заменить содержимое одного файла. Проще просто некуда.

Легкость. Всё, что должно делать приложение - время от времени обновлять содержимое файла hosts. Фактически, всю работу за него делает сама система.

Но и без минусов, конечно, тоже не обходится:

Отсутствие гибкости. Вы не можете никак управлять блокировкой доменов, уж если он заблокирован - этого никак не изменить. Почему это важно? Иногда блокировка сервера рекламной сети может сломать функциональность того или иного приложения, и вы ничего не сможете с этим поделать.

Грубость блокировки. Представьте, что реклама грузится не с сервера рекламной сети, а с сервера, который используется и в других целях тоже. Что делать? А ведь это совсем не какой-то уникальный случай. Примером может послужить мобильная рекламная сеть Facebook (пусть вас не смущает название - эта рекламная сеть используется тысячами разных приложений). Если вы хотите избавиться от такой рекламы при помощи файла hosts, придётся забыть и об использовании приложений самого Facebook.

Ограниченность такого подхода. Не всю рекламу можно просто заблокировать. Например для того, чтобы избавиться от поисковой рекламы Google, вам не обойтись без так называемых косметических правил, которые “скрывают” объявления.

Adguard, в свою очередь, это полноценный “фильтр”, который пропускает через себя трафик приложений и решает, что с ним делать, основываясь на наборе специальных правил. Вы можете положиться на фильтры, которые составляем мы, или же использовать популярные сторонние фильтры, такие как EasyList. Вы даже можете сами создавать правила фильтрации, синтаксис правил очень подробно описан в нашей базе знаний.

Почему мы выбрали именно этот способ?

Очень просто - потому что мы не готовы смириться с ограничениями, накладываемыми простым и грубым подходом блокировщиков, основанных на hosts-файлах. Мы верим, что у пользователя должен быть неограниченный контроль над своими данными и своим устройством, и это касается не только блокировки рекламы.

Ниже я покажу на примерах, с какими именно недостатками и ограничениями более простого подхода к блокировке мы не готовы мириться.

Пропущенная реклама

Как известно, лучше один раз увидеть, чем сто раз услышать. Поэтому мы собрали несколько примеров, ярко иллюстрирующих разницу между блокировкой рекламы при помощи hosts-блокировщика и Adguard.

Пример 1: реклама, которую нельзя заблокировать без косметических правил фильтрации;
  • Слева: пример, когда контекстная реклама совершенно нерелевантна запросу.
  • Справа: пример, когда Google не знает правильного ответа на заданный вопрос :).

Adguard или AdAway

Пример 2: реклама, которая загружается с того же самого веб-сайта;
  • Слева: сервер рекламной сети заблокирован, но изначальный рекламный скрипт грузится с того же сайта, который вы просматриваете, так что приличный кусок страницы отдан под пустое баннерное место. Дополнительно, обратите внимание на социальный виджет, отбирающий еще процентов 5-10 экрана.
  • Справа: страница, обработанная Adguard, позволяет вам сосредоточиться на контенте.

Adguard или AdAway

Пример 3: реклама от рекламной сети Facebook;
  • Слева: рекламное объявление от сети Facebook. С обычным hosts-блокировщиком блокировка этой сети заблокирует также и сам Facebook.
  • Справа: реклама заблокирована Adguard, и вы можете без проблем поделиться этим фактом с друзьями в Facebook.

Adguard или AdAway

Испорченный внешний вид сайтов

В случае hosts-блокировщиков нередко случается, что реклама заблокирована, но при этом читаемость сайта сильно нарушена - остаются пустые места и "остатки" от рекламы. Adguard с помощью косметических правил позволяет избавиться от них.

Пример 1: "остатки" от заблокированной рекламы;

Adguard или AdAway

Пример 2: пустое место после блокировки рекламы;

Adguard или AdAway

Анти-блокировщики

В этом году борьба с блокировщиками рекламы выходит на новый виток. Пользователи узнают новые, доселе неизвестные термины: Ad Reinsertion, Ad Recovery; некоторые сайты экспериментируют с ограничением доступа или функциональности пользователям, которые блокируют рекламу. Грубый подход hosts-блокировщиков не позволяет сделать с этим ровным счётом ничего.

Пример 1: сайт ограничивает доступ к своему контенту;


Испорченная функциональность

Другой бич hosts-блокировщиков - "поломанные" элементы. Например, видеоплееры - одна из частых жертв.

Пример 1: на сайте не работает видеоплеер;

Adguard или AdAway

Пример 2: на сайте не работает плеер и не грузится контент;

Adguard или AdAway

Делаем выводы

К слову, Adguard, помимо прочего, позволяет вам использовать его в самых разных режимах, в том числе и в режиме DNS-блокировщика - а это практически то же самое, что делает AdAway. Тем не менее, несмотря на все сложности, в качестве основного режима мы выбрали именно режим полноценного "фильтра". Это наша принципильная позиция - именно пользователь должен решать, что и как фильтровать, а что нет. Hosts-блокировщики, к сожалению, не предоставляют такой возможности.

Надеюсь, эта статья прояснила наши мотивы и наглядно продемонстрировала разницу в подходах Adguard и других приложений на рынке мобильных блокировщиков. На некоторые из вопросов, которые могли у вас возникунть, ответы даст следующая часть этой статьи. Либо же задавайте их в комментариях, и я или кто-то другой из нашей команды обязательно на них ответит.

Читайте также: