Что заставляет заметить изменения в /etc/resolver/ в MacOS Sierra

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

Если вы хотите вывести список всех исполняемых программ, содержащихся в пакете, вы можете использовать команду dpkg , в частности ее -L ( - listfiles ) вариант. dpkg - это команда, которая управляет установленными пакетами; Команды apt относятся к пакетам, доступным в дистрибутиве. Чтобы увидеть только исполняемые файлы, предназначенные для использования обычными пользователями, перечислите файлы в разделах / bin и / usr / bin . (См. Стандарт иерархии файловой системы для объяснения каталогов, в которых Linux хранит файлы.)

dpkg -L tor | egrep '^(/usr)?/bin/'

Чтобы также увидеть команды, которые обычно полезны только для системных администраторов (и, следовательно, находятся только в PATH root), включите Также каталоги sbin :

dpkg -L tor | egrep '^(/usr)?/sbin/'

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

6
25.10.2017, 18:26
2 ответа

Мне не удавалось заставить scutil --dnsвернуть ожидаемую запись DNS, пока я не перезагрузил компьютер или принудительно не обновил настройки DNS сетевого устройства, что-то вроде этого:

networksetup -setdnsservers Wi-fi 8.8.8.8

Подробнее об этом исправлении/хаке написано здесь:https://josephharding.github.io/tutorials/2018/06/28/mac-resolver-refresh.html

0
27.01.2020, 20:29

Изменения в существующих файлах в /etc/resolverне замечаются, замечаются только при создании или удалении файлов в этой папке.

Это плагин IPMonitorдля configd, который отслеживает эту папку.
Из исходного кода:

status = notify_monitor_file(notify_token, resolver_directory_path, 0);

Эта функция устанавливает монитор на inodeпути. Таким образом, он получит уведомление только в случае изменения inodeиз /etc/resolver, а не при изменении inodeлюбого файла в этом каталоге.

В UNIX каталог подобен файлу, содержимым которого является таблица, содержащая содержимое каталога. Таким образом, всякий раз, когда вы добавляете или удаляете файл, эта таблица обновляется и, следовательно, inodeтакже обновляется, вызывая уведомление. Если вы редактируете файл в каталоге, inodeкаталога вообще не затрагивается.

Но вы вообще не должны использовать /etc/resolverв macOS, он сохранен только для обратной совместимости. Вместо этого вам следует создать запись DNS в динамическом хранилище, к которому вы можете получить доступ с помощью инструмента scutil. Пожалуйста, ознакомьтесь с моим ответом на эту тему .

3
25.03.2020, 22:39

Теги

Похожие вопросы