# Barn 0.9.3：安全扩容、按节点应用与中断恢复

> 新增只调整资源的虚拟机扩容、独立节点选择、灵活路径与共享目录、中断生命周期恢复，以及镜像目录 revision 2026102802。

---

LLMS 索引： [llms.txt](/zh/llms.txt)

---

**发布日期：2026-10-31。** Barn 0.x 版本继续使用 GitHub 预发布频道。最新版本请参见 **[Barn 1.1.0](../1.1.0/)**。

Barn 0.9.3 聚焦于更安全的本地实验环境变更：新增只调整资源的虚拟机扩容，支持按节点独立收敛，接受清单与共享目录的普通用户路径形式，并让中断的生命周期操作可以安全恢复。

[安装 Barn](/zh/docs/start/installation/) · [下载 0.9.3](https://github.com/pgsty/barn/releases/tag/v0.9.3) · [源码发布说明](https://github.com/pgsty/barn/blob/v0.9.3/.github/releases/0.9.3.md)

## 变更 {#changes}

- 修改 `vm_cpu` 或 `vm_mem` 后执行 `barn resize [node...]`。QEMU 预留容量且后端支持时会热插拔增加的资源；减少资源或不支持热插拔时会自动停机再启动，同时保留虚拟机身份、磁盘和 SSH 密钥。镜像、磁盘、网络或共享目录变更请使用 `barn recreate`。
- 使用选择器运行 `plan`、`up`、`reload`、`recreate` 或 `resize` 时，未选择节点会保留已应用定义。地址、别名、控制节点和部署级设置的冲突会在节点停机或删除前检查。
- `barn init [模板] --image` 与 `barn setup [模板] --image` 可以在生成模板中选择镜像别名、频道或版本，不会下载镜像，也不会改写已有清单。
- 在适用场景下，`BARN_HOME`、本地仓库、目录导出、清单、导入镜像与共享源支持相对路径、`~/` 和目录符号链接。相对清单的共享源以清单真实文件目录为基准，并支持空格、Unicode、重叠目录及调用者可读但不归其所有的目录。
- `--parallel` 与 `--timeout` 接受任意正值。声明了大小的本地镜像和目录产物可以超过 8 GiB；按摘要索引的导入、边界读取、注册表大小检查和缓存校验共同保护镜像存储。`barn mac logs --lines` 接受任意正行数。
- 内置签名目录 revision 为 `2026102802`，包含 9 个发行版系列、17 个架构产物；默认仍是宿主架构的 `u24:stable`。
- Linux 与 macOS 的生命周期、持久盘和替换操作中断后会留下日志状态供安全恢复；信号终止会产生结构化的 `cancelled` 结果。`barn mac up --no-wait` 在虚拟机进程启动后返回；若首次启动仍在初始化，请再次执行 `barn mac up NAME` 后再使用 SSH 或 exec。

## 升级 {#upgrade}

下载安装器时请显式选择 **0.9.3**，或升级 Homebrew 配方 / Linux 软件包。已有虚拟机磁盘和配置仍保存在 `~/.barn`，升级无需重建虚拟机。

```bash
curl -fLO https://github.com/pgsty/barn/releases/download/v0.9.3/install.sh
BARN_VERSION=0.9.3 bash install.sh
```

需要从仓库激活当前签名目录时执行 `barn update`；流水线需要跨目录更新保持镜像不变时，请使用 `vm_image: family@version` 固定版本。替换原生组件前请先停止 macOS 虚拟机。详见 [Linux 快速上手](/zh/docs/start/tutorial/)与 [Mac 指南](/zh/docs/start/macos/)。
