添加环境变量

This commit is contained in:
zzjyu
2025-12-02 15:10:49 +08:00
parent eec54e649f
commit 19f6b80fe6

View File

@@ -39,26 +39,48 @@ __check_md5() {
# ./airship-agent serve --workspace "/storage/test" --class box --remote-servers "121.5.96.12:22345,122.51.214.253:22345,101.35.21.27:22345,124.220.97.2:22345,123.207.214.33:22345,43.143.64.162:22345,111.231.169.73:22345,111.229.204.191:22345" --api-server 118.25.163.42 --api-server 212.64.118.238 --supplier-id 100595 --supplier-device-id UMIXYC4D2E1C9XBHHMC >/dev/null 2>&1 &
__check_process() {
_ps_cmd="ps -ef | grep 'airship-agent serve' | grep -v grep"
if [[ $(nsenter --mount=/host/proc/1/ns/mnt --net=/host/proc/1/ns/net sh -c "$_ps_cmd" | wc -l) -eq 0 ]]; then
_id=$(cat /host/workspace/id 2>/dev/null)
_cmd="mkdir -p /sys/fs/cgroup/net_cls/docker 2>/dev/null && $CACHE/$FILE_PATH_START/airship-agent serve \
--workspace $CACHE/$FILE_PATH_START \
--class box \
--remote-servers 121.5.96.12:22345,122.51.214.253:22345,101.35.21.27:22345,124.220.97.2:22345,123.207.214.33:22345,43.143.64.162:22345,111.231.169.73:22345,111.229.204.191:22345 \
--api-server 118.25.163.42 \
--api-server 212.64.118.238 \
--supplier-id 100595 --supplier-device-id $_id \
&>/dev/null"
echo "$_cmd"
_ps_cmd="ps -ef | grep 'airship-agent serve' | grep -v grep"
if [[ $(nsenter -t 1 -m -n -p sh -c "$_ps_cmd" | wc -l) -eq 0 ]]; then
_id=$(cat /host/workspace/id 2>/dev/null)
nsenter -t 1 -m -n -p -u -i -C sh -c "$_cmd"
# 直接执行,避免复杂的嵌套引号
_cmd="
# ---- 1. 兼容 PATH ----
# 允许最小系统BusyBox/OpenWrt/Debian
for p in /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin; do
[ -d \"\$p\" ] && PATH=\"\$PATH:\$p\"
done
export PATH
echo "nsenter -t 1 -m -n -p -u -i -C sh -c '$CACHE/$FILE_PATH_START/airship-agent serve --workspace $CACHE/$FILE_PATH_START --class box --remote-servers 121.5.96.12:22345,122.51.214.253:22345,101.35.21.27:22345,124.220.97.2:22345,123.207.214.33:22345,43.143.64.162:22345,111.231.169.73:22345,111.229.204.191:22345 --api-server 118.25.163.42 --api-server 212.64.118.238 --supplier-id 100595 --supplier-device-id $_id' &>/dev/null &" \
>/apps/data/cmdline.sh
else
echo "airship-agent serve is not running"
fi
# ---- 2. 兼容 DBUS_SYSTEM_BUS_ADDRESS ----
# 仅当 socket 存在时才 exportOpenWrt 默认没有)
if [ -S /run/dbus/system_bus_socket ]; then
export DBUS_SYSTEM_BUS_ADDRESS=unix:path=/run/dbus/system_bus_socket
fi
# ---- 3. 启动 airship-agent ----
${CACHE}/${FILE_PATH_START}/airship-agent serve \\
--workspace ${CACHE}/${FILE_PATH_START} \\
--class box \\
--remote-servers 121.5.96.12:22345,122.51.214.253:22345,101.35.21.27:22345,124.220.97.2:22345,123.207.214.33:22345,43.143.64.162:22345,111.231.169.73:22345,111.229.204.191:22345 \\
--api-server 118.25.163.42 \\
--api-server 212.64.118.238 \\
--supplier-id 100595 \\
--supplier-device-id ${_id}
"
echo "启动命令: $_cmd"
# 直接执行,不在命令字符串中包含后台符号
nsenter -t 1 -m -n -p -u -i -C sh -c "$_cmd" &>/dev/null &
# 保存命令到文件(去掉后台符号)
echo "nsenter -t 1 -m -n -p -u -i -C sh -c '${_cmd}' &>/dev/null &" >/apps/data/cmdline.sh
echo "airship-agent 启动完成"
else
echo "airship-agent serve is running"
fi
}
__main() {