首页/系统/Linux 运维命令速查/场景:用软链切换发布版本(current)
本包目录(613 条)
文件与目录76 条
文本处理77 条网络命令82 条进程与作业69 条磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

场景:用软链切换发布版本(current)

版本目录并存 + current 软链指向线上版本:发布即切换,回滚即改指向,是零停机发布的经典模式。

Linux 运维命令速查系统更新于 2026-10-12
场景current 软链切新版本/回滚
工具ln -sfn / mv -T / readlink
要点先备好新版本目录再切链

常用示例

常用示例
ls -1 /opt/app                  # v20261011 v20261012 ...
ln -sfn /opt/app/v20261012 /opt/app/current
readlink -f /opt/app/current
# 更稳的原子替换:
ln -s /opt/app/v20261012 /opt/app/current.new && mv -T /opt/app/current.new /opt/app/current
回滚:把 current 指回旧版本目录即可;前提是新旧目录都完整保留且服务配置读 current。

易错点

  • ln -sfn 实际是先删后建两步,非原子;读端可能抓到瞬间空窗,高并发服务用 mv -T 替换
  • 切换后部分服务需 reload/重启才重新解析路径,确认应用是否跟随软链

数据来源与参考

  • man 1 ln(GNU coreutils 手册)
  • man 1 mv(GNU coreutils 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌