Согласно всему я читал, это должно быть в /etc
, но это не. Я действительно читал в некотором старом сообщении, что можно просто создать тот, поскольку это - текстовый файл. (Извините, я не могу больше находить сообщение.) я не уверен, должен ли я попробовать это, т.е. создавать файл или установку dhcpcd
или что-то еще. В этой точке я спросил бы, чем продолжил бы один.
Фон, я пытался установить hostsblock
, который привел меня устанавливать dnsmasq
, который привел меня к dhcpcd
, и здесь. dnsmask страница Arch Wiki (ссылка ниже) говорит dhcpcd.conf
файл используется для защиты /etc/resolv.conf
против перезаписи dhcpd
путем добавления строки nohook resolv.conf
к нему.
Я знаю это dnsmasq
установлен потому что journalctl -u dnsmasq.service
сообщает следующее (последняя строка вывода):
Started dnsmasq - A lightweight DHCP and caching DNS server.
dhcpcd
НЕ установлен. Я не знаю, могу ли я просто попытаться установить его, не повреждая что-то, и если я сделал ошибки (см. ниже), как ОТМЕНИТЬ шаги, которые я сделал. dnsmasq
Страница справочника не упоминает dhcpcd
.
От чего я сделал до сих пор, ~/path/hostsblock/hostsblock-master/
: Выполненный sudo sh install.sh
начинать устанавливать "hostsblock".
Y
добавить (username) ALL = (hostsblock) NOPASSWD: q/hostsblock,q/hostsblock-urlcheck
к sudoers: Y
я должен включить и/или запустить hostsblock сервис?
Ничего не сделайте (значение по умолчанию)
2
Это было, возможно, ошибкой:
Job for hostsblock.service failed because the control process exited with error code. See "systemctl status hostsblock.service" and "journalctl -xe" for details.
-e hostsblock is now installed. Check out the configuration file under /hostsblock.conf.
By default, hostsblock does not directly write to /etc/hosts or manipulate your dnsmasq daemon.
To make it do so, see the instructions included in /hostsblock.conf.
Таким образом, как предложено выше я сделал:
systemctl status hostsblock.service
Никакая очевидная авария, таким образом, я продолжал.
От ~/path/hostsblock-master/
Я сделал следующее:
sudo install -Dm755 src/hostsblock.sh /usr/bin/hostsblock
sudo install -Dm644 conf/hostsblock.conf /var/lib/hostsblock/hostsblock.conf
sudo install -Dm644 conf/black.list /var/lib/hostsblock/black.list
sudo install -Dm644 conf/white.list /var/lib/hostsblock/white.list
sudo install -Dm644 conf/hosts.head /var/lib/hostsblock/hosts.head
sudo install -Dm644 systemd/hostsblock.service /usr/lib/systemd/system/hostsblock.service
sudo install -Dm644 systemd/hostsblock.timer /usr/lib/systemd/system/hostsblock.timer
Это было моей ошибкой. Это было частью "Для Любых Других (Твердый Путь)", и я уже сделал "Для Других Дистрибутивов Linux (Простой способ)" в файле Hostsblock README.md. Это не должна быть проблема, потому что я проверил install.sh сценарий, и те же строки там, но с "$DESTDIR"
замена /usr/bin
, "$HOMEDIR"
замена /var/lib
, и "$systemd_dir"
замена /var/lib/hostsblock
.
Затем я сделал
sudo systemctl enable --now hostsblock.timer
В этой точке говорит README.md:
Использовать
hostsblock
вместе сdnsmasq
, настроитьdnsmasq
как демон кэширования DNS. См. руководство Вашего распределения. Поскольку ArchLinux читают следующее: раздел Wiki.
Я также отредактировал /etc/dnsmasq.conf
добавить следующее: listen-address=127.0.0.1
.
Я затем перешел к редактированию /etc/resolv.conf
добавить строку nameserver 127.0.0.1
но это уже было там.
Таким образом, здесь я... Извините, я не думал, что мое сообщение собиралось быть этим долго.
Моя машина находится позади маршрутизатора, но вот именно. Это не сервер, просто рабочий стол с Xubuntu 16.04 на нем. Нет ничего иного на LAN, даже принтер больше.
Таким образом а именно, прямо сейчас, я пытаюсь "настроить 'dnsmasq' как демон кэширования DNS" согласно документу Hostblock README.md. После большого исследования я закончил с двумя источниками, за которыми я следую, сравнивая их, в то время как я продвигаюсь:
Первый - для Arch, таким образом, я не уверен, относится ли он к Xubuntu, и второй стар. Существует также, конечно, dhcpcd страница справочника, но это не полезно за исключением подтверждения, что dhcpcd.conf, как предполагается, находится в/etc/. Это не находится на моей машине. Существует/etc/dhcp каталог, но никакой "dhcpcd.conf" в нем.
Заранее спасибо за любой совет или комментарий.
P.S. (см. комментарий № 2) После установки "dhcpcd" я завершил шаги от hostsblock README.md:
включенный следующие строки hostsblock.conf
:
postprocess() {
sudo systemctl reload dnsmasq.service
}
добавленный следующая строка к sudoers
файл:
hostsblock ВСЕ = (корневой) NOPASSWD:/usr/bin/cp
hostsblock ALL = (root) NOPASSWD: /usr/bin/systemctl reload dnsmasq.service
добавленный следующая строка к hostsblock.conf
:
some-user ALL = (hostsblock) NOPASSWD: /usr/bin/hostsblock,/usr/bin/hostsblock-urlcheck
добавленный следующая строка к dnsmasq.conf
:
addn-hosts=/var/lib/hostsblock/hosts.block
"dnsmasq" также, по-видимому, нужна следующая строка в dhclient.conf
(см. Примечание ниже), чтобы вынудить "dhclient" посмотреть 127.0.0.1, прежде чем это посмотрит в другом месте:
prepend domain-name-servers 127.0.0.1;
Примечание: dhclient.conf
находится в /etc/dhcp
в моей системе. Несколько веб-документов указывают на другие дистрибутивы Linux, где это также найдено в /etc
(Дуга) и в /etc/dhcp3
(серверы, более старые).
добавленный "dnsmasq" "hostsblock" группе, согласно документации в hostsblock.conf
(пример 1: "dnsmasq под systemd"):
$ sudo gpasswd -a dnsmasq hostsblock
dhcpcd.conf
не был в его месте, потому что "dhcpcd" никогда не устанавливался, т.е. Я не устанавливал его, и он не включен в мою установку Xubuntu 16.04, который я не был уверен в том, когда я записал вопрос.
Я предполагаю, что мог иметь и должен иметь, установил его прежде, чем начать установку "hostsblock" и "dnsmasq". Если бы я сделал так проблему, то не произошел бы. Я просто не знал, что заранее и не видел его нигде в моем исследовании, и испытывающий недостаток в опыте, я был, возможно, слишком осторожен. Теперь я знаю, что "dhcpcd" и "dnsmasq" и установлены, и я думаю настроенный правильно.
К сожалению, я еще не в конце моих перемещений, пока я не проверил, что "hostsblock" функционирует, как предназначено, но я хотел быть максимально конкретным с моим вопросом и не включать слишком много.