跳转至

HANDOFF — Synopsys VCS + Verdi 安装工程(synopsys_install_20260926)

1. 这份文件怎么用

交接快照,SessionStart Hook 注入;每次会话开始读它即可接手(项目根指针见 ../docs/HANDOFF.md)。事实档位:【已确认】=有实测证据;【未验证】;【待决策】。 历史过程(安装实施、两次失败排障、本次重装前回滚与代码修复)在本工程 SOP.md, 本文件只记「现在」。

2. 当前状态与在做什么

2026-09-26 16:43–16:44 已按用户决策把已装的三棵树全量删除,当前无安装内容,等待重装。 删除动作【已确认】:rollback --force(3 树 69G)+ cleanup --force(12 个合成 EST + scratch/installer),均 RC=0;cleanup 复跑 skipped RC=0(幂等)。下载介质与 3 个隔离卷 一律未动,随时可从介质重装。

  • 删除后实测【已确认】:/data/nfs/tools/synopsys/ 已清空(batch_installer 回执 .installer/ 与 3 个空产品目录一并删除,回执先备份入 backup/);drift RC=1 (仅 tree=pending,其余 media/installer/quarantine/perms 等 done);六台客户端 /tools/synopsys 条目数=0。
  • 同轮修复 MediaCleaner.targets() 重复目标缺陷(verdi 与 verdi_supp 同源介质目录, 同一合成 EST 被推导两次 → 第二次 unlink 报 FileNotFoundError);修复前代码备份 backup/utils/snps_install.py.bak.20260926-164513。
  • 未涉及 server 侧 exports / fstab / modulefile 的任何改动;工具从未启动过(license 未就绪)。

3. 未完成事项(按优先级)

# 事项 下一步 在哪拾起
0 【待办】重装 VCS+Verdi 用户发起后按序:precheck → install(重建解包 Installer / 合成 EST / cfg)→ verify → drift;预期 verify 14 项全 PASS、install 首跑 success 本工程 SOP.md 第 5、6 章
1 【待决策】license 后补 SCL v2025.03 介质已到位(../scl_v2025.03-installer_v5.9/,含 FLEXID9);待用户提供 license 文件与 server 规划 → 装 SCL、起 SCL server(FlexLM/systemd)、再补 modulefile 的 SNPSLMD_LICENSE_FILE;就绪前不验证 vcs/verdi 启动 本工程 install 子命令模式可复用(SCL 走同一 target_root)
2 【待决策】modulefile 本次用户决策「不动」;要用 module load synopsys 时走 slurm_ins 工程 module_env.families(红线:不手改 /opt/modulefiles/*);lsf 三台(.25-.27)无 Lmod 仍未决 slurm_ins 工程;Cadence HANDOFF 待办 #0 同题
3 【待决策】损坏卷是否重下 aarch64×2、vcs_docs 卷损坏(linux64 不依赖);若要 aarch64/docs 支持,从 EFT 重下后移回原路径、从 quarantine 清单删对应行 backup/README.md 台账
4 SCL 安装范围 用户已决「本次只装 VCS+Verdi」;SCL 随 #1 处理 同 #1

4. 红线与命令速查

  • 红线:Installer sha256 来源锁定无跳过开关(--force 无效);介质 cksum 不符且不在 隔离清单=BLOCK 无开关;安装连续失败 2 次红线终止(清零须人工写明理由入 logs/install_failures.json);不手改 /opt/modulefiles/*;不动 fstab/exports; 半装态必须先 rollback --force 再装;SCL/license 就绪前不验证工具启动。
  • 高危(需 --force,先 --dry-run):rollback 删安装树、cleanup 删可再生中间产物; 两者均有实机推导安全门(推导失败拒绝执行,无开关)。
  • 速查(工程根下):
.venv/bin/python main.py precheck       # 只读门禁(当前 RC=0)
.venv/bin/python main.py install        # 重装入口【变更】:当前无树,将是真实执行(约 630s 级)
.venv/bin/python main.py verify         # 只读验收(当前树缺失)
.venv/bin/python main.py drift          # 漂移(当前 RC=1,仅 tree=pending)
.venv/bin/python main.py rollback --force   # 【高危】删安装树(当前无树可删)
.venv/bin/python main.py cleanup --force    # 【高危】删可再生中间产物(当前无目标)
# 重装后客户端可见性抽查(任一台)
ssh root@192.168.31.18 'ls /tools/synopsys/vcs/X-2025.06-SP1/bin/vcs'   # 可见即通

5. 文档地图

文件 管什么
SOP.md(工程根) 变更档案:八章 + 排障附录(含重装前回滚执行记录、cleanup 缺陷修复)
config/synopsys_install.yaml 配置真源:六台 nodes、介质+sha256、quarantine 清单、树路径、ldd_anchors、阈值
backup/README.md 备份与隔离台账(3 个损坏卷 + 1 份代码备份)
reports/ precheck/plan/verify/drift 报告(最近 drift 证据 20260926-164456)
../docs/HANDOFF.md(项目根) 注入指针(指向本文件)

来源:/home/rain/Documents/eda_tools_ins/Synopsys/synopsys_install_20260926/docs/HANDOFF.md | 最后更新:2026-09-26 16:46(由 build/sync.py 同步,请勿在站点侧修改)