Repository navigation
autoinstall
Режим auto позволяет установить и обновить XKeen без единого вопроса: подходит для скриптов, ssh-однострочников и запуска без терминала (TTY).
- Быстрый старт
- Команды
- Параметры
-i auto - Что происходит на каждом шаге
- Выбор версий ядер
- Установка конкретной версии
- Обновление XKeen
- Планировщик (cron)
- Автозагрузка
- Обработка ошибок и код возврата
- Примеры
- Автонастройка после установки
- Ограничения
xkeen -i autoЭта команда установит:
| Компонент | Значение по умолчанию |
|---|---|
| Ядра проксирования | Xray и Mihomo, последние доступные версии (включая pre-release) |
| Геобазы | все: GeoSite и GeoIP (Re:filter, v2fly, Zkeen) |
| GeoIPSET | установка списков |
| Планировщик | задача обновления геофайлов по понедельникам в случайное время с 00:00 до 05:59 |
| Автозагрузка | XKeen добавляется в автозагрузку |
| Команда | Действие |
|---|---|
xkeen -i auto [параметры] |
Полная установка XKeen без вопросов |
xkeen -ux auto |
Установка или обновление ядра Xray до последней версии без вопросов |
xkeen -um auto |
Установка или обновление ядра Mihomo до последней версии без вопросов |
xkeen -uk auto |
Проверка и установка обновления XKeen без вопросов |
xkeen -ux vX.Y.Z |
Установка указанной версии Xray без вопросов |
xkeen -um vX.Y.Z |
Установка указанной версии Mihomo без вопросов |
Слово auto должно идти сразу после ключа: xkeen -i auto -toff работает, xkeen -i -toff auto — нет.
Ключ -toff (отключение таймаута при медленной загрузке с GitHub) можно комбинировать с любой из команд.
Параметры задаются в формате ключ=значение, без дефисов, в любом порядке. Всё, что не указано, берётся из значений по умолчанию.
| Параметр | Значения | По умолчанию | Описание |
|---|---|---|---|
cores |
xray, mihomo, all, none
|
all |
Какие ядра проксирования установить |
geo |
on, off
|
on |
Установить и обновить геобазы GeoSite и GeoIP |
geoipset |
on, off
|
on |
Установить списки GeoIPSET |
cron |
on, off
|
on |
Создать задачу планировщика для обновления геофайлов |
autostart |
on, off
|
on |
Добавить XKeen в автозагрузку |
xray |
vX.Y.Z |
последняя | Установить указанную версию Xray |
mihomo |
vX.Y.Z |
последняя | Установить указанную версию Mihomo |
Important
Параметры проверяются до начала установки. Неверное значение или слово без = (например, cores=sing-box или cores xray) останавливает запуск с сообщением об ошибке, пока система ещё не изменена.
-
cores=none— ядра не ставятся. Если в системе нет ни одного установленного ядра, установка завершится ошибкой: XKeen без ядра не работает. -
geo=off— новые геобазы не устанавливаются. Уже установленные остаются на месте, их автообновление не затрагивается. -
autostart— если параметр указан явно, он имеет приоритет. Если не указан, а в системе ранее было отключено автозапуска (start_auto="off"), прежний выбор сохраняется, как и при интерактивной установке.
| Шаг | Поведение в авто-режиме |
|---|---|
| Проверка прошивки | Установка на KeeneticOS младше 4 отменяется |
| Установка во внутреннюю память | Предупреждение выводится, установка продолжается |
| Свободное место | Если места недостаточно, установка соответствующего ядра отменяется без вопросов |
| Выбор ядер | Согласно параметру cores
|
| Загрузка и установка ядер | Последняя доступная версия, см. Выбор версий ядер |
| Геобазы | Как пункт «1» интерактивного меню: отсутствующие устанавливаются, установленные обновляются |
| GeoIPSET | Устанавливается или пропускается согласно geoipset
|
| Планировщик | См. Планировщик (cron) |
| Автозагрузка | Согласно autostart
|
В авто-режиме выбирается самая новая доступная версия ядра, включая pre-release.
Список релизов запрашивается через GitHub API, а при его недоступности — через jsDelivr. Из списка отбираются только теги вида vX.Y.Z (префикс v необязателен), после чего берётся первый, самый новый.
| Тег | Попадает в список |
|---|---|
v26.7.28 |
да (в том числе если релиз помечен как pre-release) |
v1.19.26-rc.1, v1.19.26-beta
|
нет (суффикс в теге) |
Prerelease-Alpha |
нет (плавающий тег, не является версией) |
Note
Тот же фильтр применяется и в интерактивных меню выбора версии -ux, -um и -i. Конкретную версию, которой нет в списке, по-прежнему можно указать вручную через пункт «9. Ручной ввод версии».
Вместо последней версии можно указать нужную. Префикс v необязателен: 26.7.28 и v26.7.28 равнозначны.
При полной установке — параметрами xray= и mihomo=:
xkeen -i auto xray=v26.7.28 # Xray указанной версии, Mihomo последней
xkeen -i auto xray=v26.7.28 mihomo=v1.19.26 # обе версии заданы
xkeen -i auto cores=xray xray=v26.7.28 # только Xray, указанной версииПри установке или обновлении одного ядра — версией вторым параметром:
xkeen -ux v26.7.28
xkeen -um v1.19.26Такая команда работает без вопросов, как и auto, но вместо последней версии ставит указанную. Это удобно и для понижения версии.
- Формат версии: строго три числа через точку,
X.Y.ZилиvX.Y.Z(26.7.28,v1.19.26). Суффиксы (-rc.1,-betaи т.п.),latest,1.19и пустое значение отклоняются до начала установки. - Указанная версия не проверяется по списку релизов: если её нет среди последних релизов в списке (например, более старая), она всё равно будет загружена. Если такой версии на GitHub нет, загрузка завершится ошибкой.
- Если указана версия ядра, которое не будет устанавливаться, запуск отклоняется. Например,
cores=mihomo xray=v26.7.28— ошибка. - Параметры
xray=иmihomo=относятся к установке ядра с нуля. Чтобы сменить версию уже установленного ядра, используйте-ux vX.Y.Zили-um vX.Y.Z. - Контрольная сумма скачанного файла проверяется так же, как и для последней версии.
xkeen -uk # спросит: «Проверить и установить обновления XKeen?» (1. Да / 0. Нет)
xkeen -uk auto # без вопросовБез auto перед проверкой выводится запрос. Ответ «Нет» завершает команду без каких-либо действий. Если запуск идёт без терминала (cron, ssh без -t), вопрос трактуется как «Нет», то есть xkeen -uk в планировщике ничего не обновит: для задач по расписанию используйте xkeen -uk auto.
С auto выполняется весь цикл обновления: проверка версии, резервная копия, загрузка, установка и регистрация новой версии. Если обновлений нет, команда сообщает об этом и завершается.
Если новая версия XKeen добавляет возможности, которым нужна дополнительная настройка, то в авто-режиме действует консервативный сценарий: списки GeoIPSET устанавливаются (так же, как при запуске без терминала), а задачи планировщика не создаются без вашего согласия.
При cron=on создаётся задача обновления геофайлов и GeoIPSET:
- день: понедельник;
- время: случайное с 00:00 до 05:59 (минуты и часы выбираются случайно при каждой установке);
- ранее созданная задача обновления геофайлов XKeen заменяется новой, остальные задачи планировщика не затрагиваются.
Случайное время нужно, чтобы множество устройств не обращалось к серверам обновлений одновременно.
При cron=off настройка автообновления пропускается, существующие задачи не изменяются.
-
autostart=on— XKeen запускается вместе с роутером; -
autostart=off— автозапуск XKeen выключается; - параметр не указан — автозапуск XKeen включается, кроме случая, когда пользователь ранее сам его отключил (
start_auto="off"): тогда прежнее решение сохраняется.
Авто-режим не задаёт вопросов, поэтому любые сбои обрабатываются автоматически:
| Ситуация | Результат |
|---|---|
| Неверные параметры | Ошибка до начала установки, код возврата 1
|
| Прошивка младше KeeneticOS 4 | Установка отменена, код возврата 1
|
| Не удалось получить список релизов | Ошибка с рекомендацией OffLine-установки, код возврата 1
|
| Указанной версии ядра нет на GitHub | Загрузка завершается ошибкой, код возврата 1
|
| Не удалось загрузить или установить одно из ядер | Остальные компоненты продолжают ставиться, в конце выводится список неустановленных, код возврата 1
|
| Ни одно ядро не установлено | Установка прервана, код возврата 1
|
| Всё прошло успешно | Код возврата 0
|
Это позволяет использовать результат в скриптах:
if xkeen -i auto; then
echo "XKeen установлен"
else
echo "Установка завершилась с ошибкой" >&2
fiПолная установка с настройками по умолчанию:
xkeen -i autoТолько Mihomo, остальное по умолчанию:
xkeen -i auto cores=mihomoТолько Xray, без задачи планировщика, остальное по умолчанию:
xkeen -i auto cores=xray cron=offОба ядра Xray и Mihomo, без GeoIPSET, планировщика и автозагрузки:
xkeen -i auto geoipset=off cron=off autostart=offКонкретные версии обоих ядер:
xkeen -i auto xray=v26.7.28 mihomo=v1.19.26Только Xray, указанной версии:
xkeen -i auto cores=xray xray=v26.7.28Установка с настройками по умолчанию и отключённым таймаутом при медленном соединении с GitHub:
xkeen -i auto -toffЗапуск по ssh без терминала:
ssh root@192.168.1.1 "xkeen -i auto"Обновление ядер до последних версий:
xkeen -ux auto
xkeen -um autoУстановка ядра Xray версии 26.7.28:
xkeen -ux v26.7.28Задание в /opt/var/spool/cron/crontabs/root, проверяющее выход новых версий Xray и устанавливающее их по средам в 3:30
30 3 * * 3 /opt/sbin/xkeen -ux autoОбновление XKeen по расписанию аналогично предыдущему пункту (запись в crontab):
55 4 * * 2 /opt/sbin/xkeen -uk autoПример:
xkeen -i auto -cbk off -ipv6 off -fd on -d 60Эта команда выполнит автоустановку XKeen с настройками по умолчанию, а так же отключит резервное копирование компонентов при обновлении, отключит IPv6, включит контроль файловых дескрипторов и установит задержку автозапуска 60 секунд.
Следующие параметры поддерживают значение on/off в командной строке и не требуют указывать знак = перед значением:
-auto
-fd
-ipv6
-dns
-pr
-extmsg
-startvb
-cbk
-aghfix
-dscp
- Режим
autoне поддерживается для OffLine-установки (-io). - Режим
autoне спрашивает подтверждений: перед запуском убедитесь, что выбранные параметры соответствуют вашим ожиданиям. - На устройствах с малым объёмом свободного места установка ядра может быть отменена; сообщение об этом выводится в консоль, а код возврата будет
1.
Навигация
- Главная
- FAQ - Часто задаваемые вопросы и ответы
- Отличия форка XKeen от оригинала
- Таблица совместимости роутеров
- Режимы работы XKeen
- Порядок установки
- Автоматическая установка
- Описание установочного скрипта
- Конфигурационный файл xkeen.json
- Описание настроек некоторых возможностей
- DNS-over-VLESS
- Маршрутизация по DSCP-меткам
- Известные проблемы