System-Installation

將缺少的發行版添加到正在執行的 FreeBSD 的正確方法是什麼?

  • February 11, 2015

我的 FreeBSD 10.0 機器是由託管公司安裝的,他們遺漏了幾個發行版。具體來說:src/src world/doc world/games world/lib32

如何最好地將它們重新添加到組合中,以便像這樣的工具freebsd-update能夠辨識它們的存在?

我最好的猜測:

export BSDINSTALL_DISTDIR=/usr/freebsd-dist
bsdinstall distfetch

export DISTRIBUTIONS="src doc games lib32"
export BSDINSTALL_CHROOT=/
bsdinstall distextract

那是對的嗎?

可能實際上不必使用bsdinstall,但它提供了一定程度的確認。所有這些實際上都在手冊頁中:bsdinstall(8)。我只是讀得不夠仔細。作為記錄:

下載需要 2 個環境變數:DISTRIBUTIONSBSDINSTALL_DISTSITE(BSDINSTALL_DISTDIR是可選的,預設為/usr/freebsd-dist)。中列出的名稱DISTRIBUTIONS必須與實際文件名匹配(例如doc.txz,而不是doc)。BSDINSTALL_DISTSITE是下載地址。amd64URL 具有指定平台和版本(及10.0-RELEASE以下)的副作用。

提取需要再設置 1 個變數:BSDINSTALL_CHROOT. 在這種情況下,/是正確的(典型案例,當引導到 CD 並安裝到新磁碟時,更有可能是/mnt)。

export DISTRIBUTIONS="src.txz doc.txz games.txz lib32.txz"
export BSDINSTALL_DISTDIR=/var/tmp/freebsd-dist
export BSDINSTALL_DISTSITE="http://ftp.freebsd.org/pub/FreeBSD/releases/amd64/10.0-RELEASE"
bsdinstall distfetch

export BSDINSTALL_CHROOT=/
bsdinstall distextract

引用自:https://unix.stackexchange.com/questions/183203