远程升级 FreeBSD 系统备忘

| 1 Comment | No TrackBacks |

最近两次失败记录的教训。

首先是联编 world 和 kernel (make buildworld buildkernel),这个没啥可说的。假定 / 是 UFS(即,可使用 nextboot),且配置了 watchdog,则操作步骤为:

  1. make installkernel KODIR=/boot/kernel.new; nextboot -k kernel.new 【令系统尝试一次新内核启动;若失败,则下次仍会启动旧内核】
  2. shutdown -r now
  3. mergemaster -p 【建议做这步操作,可以避免选错】
  4. make installkernel installworld 【此处再做一遍installkernel;如果不做,可能导致系统从旧内核启动并导致失败】
  5. mergemaster -Ui
  6. yes | make delete-old 【删去不需要的文件和库;不要make delete-old-libs,因为可能导致某些新程序无法运行】
  7. portmaster -BDavf 【重新联编所有 package】
  8. yes | make delete-old-libs 【此时删除旧 .so 库应该是安全的了】
  9. shutdown -r now,测试

当然,更简单的方法是先接好IPMI。

No TrackBacks

TrackBack URL: https://blog.delphij.net/mt/mt-tb.cgi/1877

1 Comment

赞大师的总结!我之前被make delete-old-libs坑过一次⋯⋯ :D

Leave a comment

Monthly Archives

Pages

OpenID accepted here Learn more about OpenID
Powered by Movable Type 5.2.3