#!/bin/bash # Script cài đặt LiteRT-LM systemd service cho Linux echo "========================================" echo " Cài đặt LiteRT-LM Service" echo "========================================" echo # Lấy thông tin user và đường dẫn hiện tại CURRENT_USER=$(whoami) CURRENT_DIR=$(pwd) PYTHON_PATH=$(which python3) # Kiểm tra quyền sudo if [ "$EUID" -ne 0 ]; then echo "[ERROR] Vui lòng chạy script với sudo:" echo " sudo bash install_service.sh" exit 1 fi # Tạo file config model mặc định nếu chưa có if [ ! -f "service_config.txt" ]; then echo "1" > service_config.txt chown $SUDO_USER:$SUDO_USER service_config.txt echo "[✓] Đã tạo service_config.txt với model mặc định: 1" fi # Tạo file service từ template echo "[1/4] Tạo file systemd service..." cat > /tmp/litert-lm.service << EOF [Unit] Description=LiteRT-LM Server Service After=network.target [Service] Type=simple User=$SUDO_USER WorkingDirectory=$CURRENT_DIR Environment="PATH=/usr/bin:/usr/local/bin:$HOME/.local/bin" ExecStart=$PYTHON_PATH $CURRENT_DIR/server.py StandardInput=file:$CURRENT_DIR/service_config.txt Restart=always RestartSec=10 [Install] WantedBy=multi-user.target EOF # Copy file service vào systemd echo "[2/4] Cài đặt service vào systemd..." cp /tmp/litert-lm.service /etc/systemd/system/litert-lm.service chmod 644 /etc/systemd/system/litert-lm.service # Reload systemd echo "[3/4] Reload systemd daemon..." systemctl daemon-reload # Enable và start service echo "[4/4] Kích hoạt và khởi động service..." systemctl enable litert-lm.service systemctl start litert-lm.service echo echo "========================================" echo " Cài đặt thành công!" echo "========================================" echo echo "Service đã được cài đặt và khởi động." echo "Server sẽ tự động chạy khi khởi động hệ thống." echo echo "Các lệnh quản lý:" echo " - Xem trạng thái: sudo systemctl status litert-lm" echo " - Dừng service: sudo systemctl stop litert-lm" echo " - Khởi động service: sudo systemctl start litert-lm" echo " - Khởi động lại: sudo systemctl restart litert-lm" echo " - Xem logs: sudo journalctl -u litert-lm -f" echo " - Gỡ cài đặt: sudo bash uninstall_service.sh" echo echo "Server đang chạy tại: http://localhost:8000" echo # Hiển thị trạng thái systemctl status litert-lm.service --no-pager