OrangePi3588Media/scripts/systemd/status.sh
2026-02-25 12:37:08 +08:00

82 lines
2.5 KiB
Bash

#!/bin/bash
# RK3588 Media Server & Agent 状态查看脚本
GREEN='\033[0;32m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'
echo -e "${BLUE}========== RK3588 Media Server 状态 ==========${NC}"
echo ""
# 显示系统信息
echo -e "${YELLOW}[系统信息]${NC}"
echo " 时间: $(date '+%Y-%m-%d %H:%M:%S')"
echo " 运行时间: $(uptime -p 2>/dev/null || uptime | awk -F',' '{print $1}')"
echo ""
# NPU 负载
echo -e "${YELLOW}[NPU 负载]${NC}"
if [ -f /sys/kernel/debug/rknpu/load ]; then
cat /sys/kernel/debug/rknpu/load | while read line; do
echo " $line"
done
else
echo " NPU 信息不可用"
fi
echo ""
# Media Server 状态
echo -e "${YELLOW}[Media Server]${NC}"
if systemctl is-active --quiet media-server 2>/dev/null; then
echo -e " 状态: ${GREEN}● 运行中${NC}"
PID=$(systemctl show --property=MainPID --value media-server 2>/dev/null)
echo " PID: $PID"
# 资源使用
if [ -n "$PID" ] && [ "$PID" != "0" ]; then
CPU_MEM=$(ps -p $PID -o %cpu,%mem --no-headers 2>/dev/null || echo "N/A")
echo " CPU/MEM: $CPU_MEM"
fi
# 端口监听
echo " 端口监听:"
ss -tlnp 2>/dev/null | grep -E "(9000|8554|8555)" | head -3 | while read line; do
echo " $line"
done
else
echo -e " 状态: ${RED}○ 停止${NC}"
echo " 最后错误:"
journalctl -u media-server --no-pager -n 3 2>/dev/null | tail -3 | sed 's/^/ /'
fi
echo ""
# Agent 状态(如果安装了)
if systemctl list-unit-files | grep -q rk3588-agent; then
echo -e "${YELLOW}[RK3588 Agent]${NC}"
if systemctl is-active --quiet rk3588-agent 2>/dev/null; then
echo -e " 状态: ${GREEN}● 运行中${NC}"
PID=$(systemctl show --property=MainPID --value rk3588-agent 2>/dev/null)
if [ -n "$PID" ] && [ "$PID" != "0" ]; then
CPU_MEM=$(ps -p $PID -o %cpu,%mem --no-headers 2>/dev/null || echo "N/A")
echo " CPU/MEM: $CPU_MEM"
fi
else
echo -e " 状态: ${RED}○ 停止${NC}"
fi
echo ""
fi
# 日志摘要
echo -e "${YELLOW}[最近日志 - Media Server]${NC}"
journalctl -u media-server --no-pager -n 5 2>/dev/null | tail -5 || echo " 无日志"
echo ""
# 操作提示
echo -e "${YELLOW}[管理命令]${NC}"
echo " 重启服务: sudo systemctl restart media-server"
echo " 查看日志: sudo journalctl -u media-server -f"
echo " 查看NPU: sudo watch -n 1 cat /sys/kernel/debug/rknpu/load"
echo " 编辑配置: sudo nano /opt/rk3588-media-server/etc/media-server.json"