Загрузка исходника

This commit is contained in:
2026-05-09 11:49:44 +03:00
commit 87502c55e0
87 changed files with 7700 additions and 0 deletions
+95
View File
@@ -0,0 +1,95 @@
#!/bin/bash
set -e
# Путь к файлу службы
SERVICE_FILE="wyoming-satellite.service"
DEST_PATH="/etc/systemd/system/${SERVICE_FILE}"
# Проверка прав суперпользователя
if [ "$(id -u)" -ne 0 ]; then
echo "Этот скрипт должен быть запущен с правами суперпользователя (sudo)"
exit 1
fi
# Функция для установки службы
install_service() {
echo "Устанавливаю службу Wyoming Satellite..."
# Копируем файл службы
cp "${SERVICE_FILE}" "${DEST_PATH}"
chmod 644 "${DEST_PATH}"
# Делаем скрипт запуска исполняемым
chmod +x "$(pwd)/start_satellite.sh"
# Перезагружаем systemd
systemctl daemon-reload
echo "Служба установлена. Используйте 'sudo systemctl start ${SERVICE_FILE}' для запуска."
}
# Функция для удаления службы
remove_service() {
echo "Удаляю службу Wyoming Satellite..."
# Останавливаем и отключаем службу
systemctl stop "${SERVICE_FILE}" 2>/dev/null || true
systemctl disable "${SERVICE_FILE}" 2>/dev/null || true
# Удаляем файл службы
rm -f "${DEST_PATH}"
# Перезагружаем systemd
systemctl daemon-reload
echo "Служба удалена."
}
# Функция для отображения статуса
show_status() {
echo "Статус службы Wyoming Satellite:"
systemctl status "${SERVICE_FILE}"
}
# Обработка аргументов командной строки
case "$1" in
install)
install_service
;;
remove)
remove_service
;;
status)
show_status
;;
start)
echo "Запускаю службу Wyoming Satellite..."
systemctl start "${SERVICE_FILE}"
;;
stop)
echo "Останавливаю службу Wyoming Satellite..."
systemctl stop "${SERVICE_FILE}"
;;
restart)
echo "Перезапускаю службу Wyoming Satellite..."
systemctl restart "${SERVICE_FILE}"
;;
enable)
echo "Включаю автозапуск службы Wyoming Satellite..."
systemctl enable "${SERVICE_FILE}"
;;
disable)
echo "Отключаю автозапуск службы Wyoming Satellite..."
systemctl disable "${SERVICE_FILE}"
;;
logs)
echo "Журнал службы Wyoming Satellite:"
journalctl -u "${SERVICE_FILE}" -f
;;
*)
echo "Использование: $0 {install|remove|status|start|stop|restart|enable|disable|logs}"
exit 1
;;
esac
exit 0