LinuxDo 新帖推送
184 subscribers
253K photos
315K links
Download Telegram
标题: OpenClaw 多节点安装/卸载脚本(Linux,已在两台ubuntu测试)
作者: #野生拍Coder丶
板块: #开发调优
编号: 1564367
帖子: https://linux.do/t/topic/1564367
时间: 2026-02-04 15:49:54
摘要:
#!/usr/bin/env bash
set -euo pipefail

# ===== 可调参数 =====
GATEWAY_PORT="${GATEWAY_PORT:-18789}"
NODE_LOCAL_PORT="${NODE_LOCAL_PORT:-18790}"
SSH_KEY="${SSH_KEY:-$HOME/.ssh/openclaw_node_ed25519}"
SSH_CONFIG_HOST="${SSH_CONFIG_HOST:-openclaw-gw}"
OPENCLAW_PIN_VERSION="${OPENCLAW_PIN_VERSION:-}" # openclaw 版本号 默认 latest
OPENCLAW_GATEWAY_CONFIG_CMD="${OPENCLAW_GATEWAY_CONFIG_CMD:-}" # 仅允许: "openclaw onboard --install-daemon" | "openclaw gateway install" | "openclaw configure"
GATEWAY_SSH_HOST="${GATEWAY_SSH_HOST:-}" # 子节点用于 SSH 连接的主节点公网 IP/域名
GATEWAY_WS_HOST="${GATEWAY_WS_HOST:-127.0.0.1}" # 主节点本机 OpenClaw Gateway 监听地址(默认 127.0.0.1)
NODE_CACHE_FILE="${NODE_CACHE_FILE:-$HOME/.openclaw/node_cache.tsv}"

# ===== 基础函数 =====
log() { echo -e "$*"; }
need_cmd() { command -v "$1" >/dev/null 2>&1; }
trim_ws() { echo -e "$1" | awk '{$1=$1; print}'; }

ensure_cache_file() {
mkdir -p "$(dirname "$NODE_CACHE_FILE")"
touch "$NODE_CACHE_FILE"
chmod 600 "$NODE_CACHE_FILE"
}

cache_add_or_update() {
local ip="$1" user="$2" port="$3" pass="$4" dname="$5"
ensure_cache_file
if [[ -s "$NODE_CACHE_FILE" ]]; then
awk -F'\t' -v ip="$ip" 'BEGIN{OFS="\t"} $1!=ip {print}' "$NODE_CACHE_FILE" > "${NODE_CACHE_FILE}.tmp"
mv "${NODE_CACHE_FILE}.tmp" "$NODE_CACHE_FILE"
fi
printf "%s\t%s\t%s\t%s\t%s\n" "$ip" "$user" "$port" "$pass" "$dname" >> "$NODE_CACHE_FILE"
}

cache_list() {
ensure_cache_file
if [[ ! -s "$NODE_CACHE_FILE" ]]; then
return 1
fi
awk -F'\t' '{printf "%d) %s\t%s\t%s\t%s\n", NR, $1, $2, $3, $5}' "$NODE_CACHE_FILE"
return 0
}

cache_get_by_index() {
local idx="$1"
ensure_cache_file
awk -F'\t' -v n="$idx" 'NR==n {print $0}' "$NODE_CACHE_FILE"
}

prompt_secret() {
local prompt="$1"
local echo_input="${2:-0}" # 1=明文输入(便于粘贴)
local var
if [[ -t 0 ]]; then
if [[ "$echo_input" == "1" ]]; then
read -r -p "$prompt" var
else
read -r -s -p "$prompt" var
echo
fi
else
if [[ -r /dev/tty ]]; then
if [[ "$echo_input" == "1" ]]; then
read -r -p "$prompt" var </dev/tty
else
read -r -s -p "$prompt" var </dev/tty
echo >/dev/tty
fi
else
log " 无法读取终端输入,请在交互终端运行脚本"
exit 1
fi
fi
printf '%s' "$var"
}

ensure_sudo() {
if [[ "${EUID:-$(id -u)}" -eq 0 ]]; then
return 0
fi
if ! need_cmd sudo; then
log " 缺少 sudo,无法自动安装依赖。请用 root 运行或先装 sudo。"
exit 1
fi
sudo -v >/dev/null 2>&1 || { log " 当前用户无 sudo 权限"; exit 1; }
}

pm_install() {
# 在本机(Gateway)安装包
# 用法:pm_install pkg1 pkg2 ...
local pkgs=("$@")
if need_cmd apt-get; then
sudo apt-get update -y
sudo apt-get install -y "${pkgs[@]}"
return
fi
if need_cmd dnf; then
sudo dnf install -y "${pkgs[@]}"
return
fi
if need_cmd yum; then
sudo yum install -y "${pkgs[@]}"
return
fi
if need_cmd apk; then
sudo apk add --no-cache "${pkgs[@]}"
return
fi
if need_cmd pacman; then
sudo pacman -Sy --noconfirm "${pkgs[@]}"
return
fi
if need_cmd zypper; then
sudo zypper --non-interactive install "${pkgs[@]}"
return
fi
log " 未识别到包管理器(apt/dnf/yum/apk/pacman/zypper),无法自动安装:${pkgs[*]}"
exit 1
}

ensure_tools_gateway() {
ensure_sudo

# ssh 一般都有;缺了也能装
local missing=()

need_cmd ssh || missing+=("openssh-client")
need_cmd sshpass || missing+=("sshpass")
need_cmd perl || missing+=("perl")
need_cmd curl || missing+=("curl")

if ((${#missing[@]} > 0)); then
log "[Gateway] 缺少工具:${missing[*]},开始自动安装..."
# 包名跨发行版差异:openssh-client 在 일부发行版叫 openssh
# 我们做一个轻量映射:如果安装失败你会看到包管理器提示
# Alpine/Arch/openSUSE 包名会不同,但大多兼容 openssh
if need_cmd apk; then
# alpine
# openssh-client 不存在时用 openssh
local alpine_pkgs=()
for p in "${missing[@]}"; do
[[ "$p" == "openssh-client" ]] && alpine_pkgs+=("openssh") || alpine_pkgs+=("$p")
don
标题: 行业解决方案可复制性高吗?
作者: #ykang
板块: #搞七捻三
编号: 1564368
帖子: https://linux.do/t/topic/1564368
时间: 2026-02-04 15:50:02
摘要:
老板们常说你们做完一个项目,就要提供这个项目是怎么成交的,如何复制到下一个类似客户上,有没有可复制参考?个人感觉一般,并不是说在某一个行业成交了一个项目,就代表这个行业都会有这个需求
标题: 佬友们,谁会画冷锋和暖锋(
作者: #Xocio
板块: #搞七捻三
编号: 1564371
帖子: https://linux.do/t/topic/1564371
时间: 2026-02-04 15:51:09
摘要:
练习册上的,所在地区为南半球,要求画出冷锋和暖锋,小弟经常搞不明白冷锋和暖锋,求助老友们!
标题: 【web3猎头岗】Java后端开发工程师(Java做市开发)p6-p7,香港上市公司,Base深圳
作者: #Kami
板块: #非我莫属
编号: 1564376
帖子: https://linux.do/t/topic/1564376
时间: 2026-02-04 15:54:14
摘要:
主要职责
1、参与设计、开发和优化公司核心做市交易系统的Java后端服务。
2、专注于系统性能调优,致力于将延迟降低到微秒级别,应对极高的并发请求。
3、负责处理实时市场数据流(如Order Book、Ticker、Trades),并确保数据的准确性和及时性。
4、实现风险控制、仓位管理和订单生命周期管理等核心业务逻辑。
5、编写高质量、可维护、可测试的代码,并进行严格的单元测试和集成测试。
任职要求
必须条件:
1、计算机科学、信息技术或相关专业本科及以上学历。
2、至少5年以上Java后端开发经验,具备扎实的Java基础,深刻理解JVM内存模型、垃圾回收机制、多线程并发编程(如java.util.concurrent包)。
3、有金融科技、券商、外汇、数字货币或高频交易公司相关工作经验。
4、具备高并发、低延迟系统的开发经验,熟悉性能分析和调优工具(如JMH, JProfiler, YourKit, async-profiler)。
5、熟练掌握主流Java网络框架(如Netty, Spring WebFlux)和消息中间件(如Kafka, Redis Pub/Sub)。
6、精通Linux操作系统,具备良好的系统调试和问题排查能力。
熟悉至少一种关系型数据库(如MySQL, PostgreSQL)和一种NoSQL数据库(如Redis)。
7、强烈的责任心、优秀的问题解决能力,能够在高压环境下工作。
8、对技术有热情,具备优秀的学习能力和团队合作精神。
优先考虑条件:
1、有直接参与做市商系统、订单匹配引擎或交易所网关开发的经验。
熟悉至少一种交易所的API(RESTful 和 WebSocket),并有过实际集成经验。
2、了解网络协议(TCP/UDP)和网络编程,对网络延迟有深入理解。
3、有使用 Aeron、Chronicle、Disruptor 等超低延迟库的经验。
4、熟悉容器化技术(Docker, Kubernetes)和自动化部署。
5、了解基本的量化交易概念,如Alpha策略、风险模型、市场微观结构等。"
感兴趣的佬,私我呀~
标题: 【新人来报道】
作者: #liming
板块: #搞七捻三
编号: 1564386
帖子: https://linux.do/t/topic/1564386
时间: 2026-02-04 15:55:52
摘要:
各位佬友新年好啊!这里的人长得好看,说话又好听,终于进来了,急死我了
标题: 求个轻量ide推荐
作者: #愉快的保姆
板块: #开发调优
编号: 1564393
帖子: https://linux.do/t/topic/1564393
时间: 2026-02-04 15:57:16
摘要:
佬友们求个轻量的ide推荐, 逐渐觉得idea实在是太太太太重了.. ORZ
标题: 还有 5000k glm-4.7 token,2 月 16 日过期,怎么快速用光
作者: #candlest
板块: #开发调优
编号: 1564404
帖子: https://linux.do/t/topic/1564404
时间: 2026-02-04 16:00:12
摘要:
如题,感觉 glm-4.7 有些时候很蠢,但是它不会过度省 token,找不到合适的场景
标题: 大家有用notepad4的么,怎么设置超链接点击打开呀?
作者: #碳氮氧缺氖
板块: #搞七捻三
编号: 1564405
帖子: https://linux.do/t/topic/1564405
时间: 2026-02-04 16:00:42
摘要:
如图所示 这个软件正常显示的超链接就是普通的文本

怎么才能让它显示成蓝色的那种 用鼠标左键或者是按住ctrl键 直接点击就能在浏览器打开链接 ,如下图所示。我去github搜了以下有个恢复是Hyperlink function · Issue #52 · zufuliu/notepad4 · GitHub 但是是英文我也没看懂到底咋解决,求大佬解答,跪求
标题: 大陆将于近期恢复上海居民赴金门、马祖旅游
作者: #雪梨纽西兰希思露甘奶迪
板块: #前沿快讯
编号: 1564413
帖子: https://linux.do/t/topic/1564413
时间: 2026-02-04 16:02:46
摘要:
央视新闻星期三(2月4日)报道上述消息,称此举是为进一步促进两岸人员往来正常化和各领域交流常态化,回应台湾民众和旅游业界热切期盼,增进两岸同胞利益福祉。
报道称,目前各项工作正在积极筹备中,希望两岸旅游业界加强沟通对接,为大陆居民赴金门、马祖旅游提供优质服务和产品。
目前,福建陆客可通过两岸“小三通”航线,到金门马祖旅游。两岸“小三通”航线于2001年1月2日启航,目前有金门─厦门(五通);金门─泉州(石井);马祖(南竿福澳)—福州(琅岐);马祖(北竿白沙)—福州(黄岐)等四条航线。“小三通”曾在冠病疫情后中断,直到2023年1月陆委会才以金马地区民众春节交通专案予以复航,后续并将通航常态化。
台湾内政部移民署统计,2025年首11个月,经由小三通入境的大陆地区人民达18万7785人次。
更早之前的2011年6月,中国大陆制订《大陆居民赴台湾地区个人旅游注意事项》、《大陆居民赴台湾地区旅游管理办法》,先后开放了北京、上海、厦门等47个城市赴台个人游试点,这些城市的居民可经简单的签注手续前往台湾境内旅游,最多可逗留15天。
但2019年7月31日,中国大陆文旅部宣布,鉴于两岸关系,自当年8月起暂停47个城市大陆居民赴台个人游试点。



news.cctv.com





大陆将于近期恢复上海居民赴金门、马祖旅游

为进一步促进两岸人员往来正常化和各领域交流常态化,回应台湾民众和旅游业界热切期盼,增进两岸同胞利益福祉,大陆方面将于近期恢复上海居民赴金门、马祖旅游。
标题: 基于AI实现的minecraft建筑生成(是目前来说效果最佳的)
作者: #bbbb
板块: #资源荟萃
编号: 1564418
帖子: https://linux.do/t/topic/1564418
时间: 2026-02-04 16:03:18
摘要:
仓库:GitHub - Justcnds/mc-ai-builder
下载连接:百度网盘 请输入提取码
交流群:364721875
原创作者:

使用方法,下载好之后,双击启动.bat运行。
然后在弹出来的网站中设置填写自己的任意中转站和对应api。再进行对话使用即可
效果图:




最后得到心满意足的作品之后,再使用导出功能,使用各种第三方工具,导入到你的存档中进行使用
标题: 翻译API怎么用?
作者: #Seisstar
板块: #搞七捻三
编号: 1564425
帖子: https://linux.do/t/topic/1564425
时间: 2026-02-04 16:04:25
摘要:
想知道站内的翻译API应该怎样使用?在哪使用?
标题: 腾讯送了两台lighthouse服务器,闲置了, 我应该怎么用起来?
作者: #本本本添哥
板块: #开发调优
编号: 1564432
帖子: https://linux.do/t/topic/1564432
时间: 2026-02-04 16:05:08
摘要:
腾讯送了两台lighthouse服务器,闲置了, 我应该怎么用起来?
标题: 抄了一下别人的芝麻分网站,终于建起来一个
作者: #有风的
板块: #搞七捻三
编号: 1564440
帖子: https://linux.do/t/topic/1564440
时间: 2026-02-04 16:06:56
摘要:
好像是来晚了,就是不知道还有没有佬没组队上的
标题: 想用Gemini 来规划方案,然后codex执行代码,有啥好的工作流吗
作者: #zzz22333
板块: #开发调优
编号: 1564443
帖子: https://linux.do/t/topic/1564443
时间: 2026-02-04 16:08:42
摘要:
感觉codex规划能力不太行。
标题: 【抽奖】“全年不落”了~ 抽kiro 550帐号*10吧
作者: #czm
板块: #福利羊毛
编号: 1564445
帖子: https://linux.do/t/topic/1564445
时间: 2026-02-04 16:09:18
摘要:
抽奖主题:kiro 550 *10
奖品详情:
[奖品1]:kiro 550 *10
活动时间:
开始时间:现在
截止时间:Thu, Feb 5, 2026 8:00 PM CST
参与方式:
在本帖下回复任意内容
抽奖规则:
每位用户仅允许参与一次。
使用官方抽奖工具随机抽取中奖者。
注意事项:
本活动将在活动截止时间后关闭回帖,以确保公正性。
中奖者将在活动结束后12小时内在本帖公布,并通过私信通知领奖方式。
所有规则及抽奖结果由活动发起人和论坛管理团队最终解释。
期待您的积极参与,祝您好运!如有任何疑问,欢迎随时联系抽奖发起人。