我使用OpenBSD已经有一段时间了。但是,我要做的就是从一个发行版转到下一个发行版,始终只是在进行更新。我配置了系统,使其可以作为我的路由器和防火墙,并且可以很好地工作。但是我从不更新软件包。我所要做的只是转到下一个版本。
来自Linux世界,我习惯于每周应用几次更新。但是如何在* BSD上执行此操作?-还是这不是* BSD哲学的一部分?
pkg_add
is 更新OpenBSD pkg_add -uvi
,对吗?
我使用OpenBSD已经有一段时间了。但是,我要做的就是从一个发行版转到下一个发行版,始终只是在进行更新。我配置了系统,使其可以作为我的路由器和防火墙,并且可以很好地工作。但是我从不更新软件包。我所要做的只是转到下一个版本。
来自Linux世界,我习惯于每周应用几次更新。但是如何在* BSD上执行此操作?-还是这不是* BSD哲学的一部分?
pkg_add
is 更新OpenBSD pkg_add -uvi
,对吗?
Answers:
通常,使用OpenBSD时,只有在更新系统时才更新软件包。因此,作为最后一步,升级到最新版本后,您应该执行:
# pkg_add -ui
这将(u)升级您安装的软件包,询问您任何问题(i)在需要时不起作用。
通常,给定发行版的软件包要等到下一个发行版本才会更新(OpenBSD缺少开发人员资源,无法为“当前”版本的软件包提供更新)。如果要更定期地升级软件包,则需要使用端口或升级到新的快照,然后pkg_add -ui
再次运行。
要进一步阅读,请检查:http : //www.openbsd.org/faq/faq15.html
OpenBSD lacks the developer resources for providing updates to packages on versions other than 'current'
这也适用于安全更新吗?因此,如果在我使用的二进制软件包中发现了严重的安全漏洞,我是否必须从稳定端口重新安装它?
-current
。OpenBSD不会为重建软件包-stable
。
各种BSD系统非常清楚地分为“基本系统”和“第三方软件(端口/软件包)”。您分别升级两个。
这假定您已经安装了OpenBSD 6.5或更高版本(有关旧答案,请参阅下文):
基本系统升级为sysupgrade(8)
:
doas sysupgrade
如果您遵循稳定版或发行版分支,它将下载基本系统并将其升级到OpenBSD的下一个“稳定”版本,如果使用快照,则将其升级到最新的“快照”。请注意,sysupgrade
如果您有没有所有基本系统集的自定义安装,则不应使用。
升级基本系统后,您可能需要运行syspatch(8)
(仅是为了使系统从“发布”升级到“稳定”,快照系统不使用syspatch
)。
端口更新为pkg_add(1)
:
doas pkg_add -u
在快照系统上,您可能需要添加该快照-D snap
(请参见手册)。
您还需要在升级之前检查OpenBSD FAQ的相关部分,例如,“ 后续和使用快照之后 ”部分或与升级到最新稳定版本有关的部分。
还有一个名为sysclean
(in sysutils/sysclean
)的端口/程序包,可以帮助您指出基本系统库和其他文件,它们不再是默认安装的一部分。它还会告诉您哪些端口正在使用过时的库。
旧答案,与6.5 之前的 OpenBSD版本有关:
对于OpenBSD,假设您要从一个稳定发行版移至下一个稳定发行版(除非您进行全新安装,否则不支持跳跃发行版),请先阅读要执行的升级的特定常见问题解答。从5.9升级到6.0时,请阅读“ 升级指南:5.9到6.0 ”。
通常,其要点涉及引导您要升级到的发行版的安装介质,然后从菜单中选择“(U)pgrade”。基本系统升级后,即可启动它,并以root用户身份使用来升级所有已安装的软件包pkg_add -u
。
属于稳定OpenBSD发行版的软件包经常更新非常罕见。通常,只有在修复了关键错误时才会发生这种情况。因此,pkg_add -u
每周运行几次可能不会有很多效果(但是请继续这样做,因为这可能会导致严重的问题)。
如果遵循“当前”,情况将大为不同。然后,您将使用在CVS下通过检出的端口树来构建软件包/usr/ports
,您也可能会手动重新构建基本系统(请参阅“ 从源代码构建系统 ”)。如果提供了正确的选项和手动安装的软件包的列表,则可以使用dpb
(中的/usr/ports/infrastructure/bin
)更新已安装的端口。
我正在使用
#!/bin/sh -x
pkg_info -P -q -m | sort -o "$HOME/packages"
/usr/ports/infrastructure/bin/dpb -scuR -P "$HOME/packages"
其次是
$ doas pkg_add -u -D unsigned
$ doas pkg_delete -a
不鼓励新用户使用。
我需要获取更新,因为我安装了bash并不想遭受Shellshock漏洞的困扰,所以我接受了Holu的建议/unix//a/103661/93476并为我打了补丁。
在NetBSD上,通常会升级pkgsrc
到最新版本(仅此而已tar -xvzf pkgsrc-version.tar.gz
)并分别更新已安装的软件。
有关NetBSD / pkgsrc网站的更多信息:
请务必阅读常见问题解答/手册:http : //www.openbsd.org/faq/upgrade58.html
每当您在发行版之间进行发行时,都需要作为最后一步来更新软件包。