Автозагрузка
Alt-U или Команда → Автозагрузка показывает всё, что настроено запускаться само: при загрузке системы, при входе, по расписанию или при каждом запуске оболочки или входе по SSH. Последнее изменение идёт первым, поэтому всё, что недавно добавили или правили, оказывается наверху. Как и монитор процессов, этот экран входит во встроенный плагин «Система». Список занимает активную панель, а другая панель подробно показывает выбранный элемент.
В каждой строке видно, когда файл менялся в последний раз, место и что запускается. На широкой панели добавляются владелец файла и то, на месте ли программа: есть или нет, если указанного пути не существует. На отсутствующую программу стоит взглянуть: любой файл, который кто-то позже положит на её место, запустится с правами этого элемента. Столбец Правила называет правила, с которыми совпал элемент, окрашивая их по уровню, и появляется, как только хотя бы один элемент совпал с правилом. Строка над списком считает элементы и сколько из них совпало с правилами.
Подробности показывают файл и строку, что запускает элемент, программу и где Borg её нашёл, когда
элемент запускается словами самого файла (RunAtLoad, @reboot, расписание или цель systemd), от
имени какого пользователя, владельца файла и точное время изменения. В разделе Правила у каждого
совпадения указано, где оно найдено, в его файле или в его программе, что ищет правило,
когда оно срабатывает на безобидное и откуда правило взято. Элемент, отключённый в собственном
файле, показан приглушённо, а в подробностях сказано
Отключён в собственном файле, поэтому не запускается.
| Клавиша | Действие |
|---|---|
| Enter, Alt-O | Открыть папку файла элемента рядом со списком |
| F3 / F4 | Просмотр / правка файла элемента |
/ |
Фильтр строк; ↑↓ по-прежнему перемещают, Enter оставляет фильтр, Esc сбрасывает его |
| R | Перечитать все места |
| Ctrl-C | Скопировать то, что запускает элемент |
| Alt-W | Развернуть список |
| Esc | Закрыть экран, сохранив фильтр |
Enter или двойной щелчок открывает на другой панели папку файла элемента и ставит курсор на файл, а
список остаётся как был. Tab переключает между списком и файлами, а Esc в списке или Alt-U
возвращает подробности. Фильтр оставляет элементы, в которых есть все
введённые слова: в месте, имени, в том, что запускается, в пути к файлу, во владельце, в
пользователе, от имени которого идёт запуск, во времени запуска, в есть или нет и в
названиях совпавших правил. Поставьте ! перед словом, чтобы исключить то, что оно находит:
root !timer оставит элементы root, кроме таймеров. У каждого места есть ещё короткое имя для
фильтра и для агентов, например launch-daemon, systemd-timer или ssh-authorized-key.
Где ищет Borg
Заголовок раздела «Где ищет Borg»В macOS:
- Агент пользователя:
~/Library/LaunchAgents. - Агент launchd и Демон launchd:
/Library/LaunchAgentsи/Library/LaunchDaemons. - Системный агент и Системный демон:
/System/Library/LaunchAgentsи/System/Library/LaunchDaemons, на запечатанном системном томе. - Задание cron: crontab-файлы в
/usr/lib/cron/tabsи/etc/crontab. - Скрипт periodic: ежедневные, еженедельные и ежемесячные скрипты в
/etc/periodicи/usr/local/etc/periodic.
В Linux:
- Служба и Таймер: юниты systemd в
/etc/systemd/system,/usr/local/lib/systemd/system,/usr/lib/systemd/systemи/lib/systemd/system, а также юниты, на которые их папки.wantsи.requiresссылаются из любого другого места. - Служба пользователя и Таймер пользователя:
/etc/systemd/user,/usr/local/lib/systemd/user,/usr/lib/systemd/user,~/.config/systemd/userи~/.local/share/systemd/user. - Автозапуск: desktop-файлы в
~/.config/autostartи/etc/xdg/autostart. - Задание cron:
/etc/crontab,/etc/cron.dи crontab-файлы в/var/spool/cron/crontabsили/var/spool/cron. - Скрипт cron:
/etc/cron.hourly,/etc/cron.daily,/etc/cron.weeklyи/etc/cron.monthly. - Задание anacron:
/etc/anacrontab. - rc.local:
/etc/rc.local. - Предзагрузка:
/etc/ld.so.preload, библиотеки, которые загружаются в каждую запускаемую программу. - Запуск оболочки: скрипты в
/etc/profile.d, помимо файлов ниже.
В обеих системах Запуск оболочки охватывает файлы запуска zsh, bash и fish в вашей домашней
папке, например ~/.zshrc, ~/.bashrc, ~/.profile и ~/.config/fish/config.fish, и их
общесистемные версии в /etc. Ключ SSH перечисляет каждый ключ из ~/.ssh/authorized_keys и
~/.ssh/authorized_keys2 с его комментарием и с командой, которую ключ навязывает, если она есть.
Borg читает эти места с вашими правами. Место, которое существует, но закрыто для вас, показано
внизу списка как Не удалось прочитать с его путём; чтобы заглянуть внутрь, запустите Borg от
имени администратора. Исключение составляет ваш собственный crontab: если папка crontab-файлов
закрыта для вас, как в macOS, Borg запрашивает его через crontab -l.
Программа, указанная полным путём или через ~/, помечается как нет, если там ничего нет. Имя
без папки ищется в /usr/local/sbin, /usr/local/bin, /usr/sbin, /usr/bin, /sbin и /bin,
где ищут cron и launchd. У относительного пути или имени, которого нет ни в одной из этих папок,
стоит —: элемент может задавать собственный путь поиска.
Правила для элементов автозагрузки
Заголовок раздела «Правила для элементов автозагрузки»Borg проверяет своими правилами и вашими (см. Проверка файлов правилами) первые 1 MiB каждого файла автозагрузки и каждую программу размером до 64 MiB. Программа, которую запускают многие элементы, проверяется один раз. Программы элементов Системный агент и Системный демон не проверяются, потому что запечатанный системный том ничто не меняет, пока работает macOS, и в их подробностях об этом сказано. Если файл правил не компилируется, внизу списка указано, сколько файлов пропущено.
Руководство описывает ветку main · Borg 0.11.0 · 1f6bce6
В последнем выпуске может быть не всё, что здесь описано. Список изменений
Перевод с английского. Будем рады исправлениям. Команды и сочетания клавиш не переводятся.