このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン 最新のリビジョン 両方とも次のリビジョン | ||
os:freebsd:freebsd-update [2017/08/08 14:28] hayashi [リリースアップグレード] |
os:freebsd:freebsd-update [2023/09/05 13:29] hayashi |
||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== FreeBSDのアップグレード ====== | ||
+ | 同じリリース内でセキュリティパッチレベルを上げる。\\ | ||
+ | 6.3-RELEASEからは,「upgrade」オプションで異なるリリースに上がることが可能になった. | ||
+ | ===== セキュリティパッチ ===== | ||
+ | パッチをダウンロード。 | ||
+ | # freebsd-update fetch | ||
+ | |||
+ | アップデートが不要な場合、以下のような表示 | ||
+ | No updates needed to update system...... | ||
+ | | ||
+ | パッチをインストール。 | ||
+ | # freebsd-update install | ||
+ | |||
+ | 確認 | ||
+ | # freebsd-version -ku | ||
+ | 13.2-RELEASE-p2 | ||
+ | 13.2-RELEASE-p2 | ||
+ | # freebsd-version -r | ||
+ | 13.2-RELEASE | ||
+ | |||
+ | 最後に再起動。((カーネル、カーネルモジュールに変更がなければ不要)) | ||
+ | # shutdown -r now | ||
+ | 確認。 | ||
+ | # uname -a | ||
+ | こんな風に表示されます。((後ろにp1がついています)) | ||
+ | FreeBSD hostname 8.2-RELEASE FreeBSD 8.2-RELEASE-p1 #0: Fri Feb 18 02:24:46 UTC 2011… | ||
+ | |||
+ | 10.0からfreebsd-versionというFreeBSDのパッチレベルを教えてくれるコマンドが導入されました\\ | ||
+ | リブート前でも確認できます。 | ||
+ | # freebsd-version | ||
+ | 10.0-RELEASE-p1 | ||
+ | |||
+ | カーネルなら | ||
+ | # freebsd-version -k | ||
+ | 10.0-RELEASE-p1 | ||
+ | |||
+ | ユーザランドなら | ||
+ | # freebsd-version -u | ||
+ | 10.0-RELEASE-p1 | ||
+ | |||
+ | ==== update できない? ==== | ||
+ | |||
+ | unameすると以下のように | ||
+ | # uname -a | ||
+ | FreeBSD ...... 10.2-RELEASE-p9 FreeBSD 10.2-RELEASE-p9 ...... | ||
+ | |||
+ | と表示されるのに、以下のようにupdateは不要と出るケースがある | ||
+ | |||
+ | # freebsd-update fetch | ||
+ | ...... | ||
+ | Preparing to download files... done. | ||
+ | No updates needed to update system to 10.2-RELEASE-p12. | ||
+ | |||
+ | これは、unameで表示されるのがkernelバージョンのため\\ | ||
+ | freebsd-versionで表示するとわかりやすい | ||
+ | # freebsd-version -k | ||
+ | 10.2-RELEASE-p9 | ||
+ | # freebsd-version -u | ||
+ | 10.2-RELEASE-p12 | ||
+ | |||
+ | ==== 自動的に適用させる ==== | ||
+ | === cronで設定 === | ||
+ | |||
+ | 以下の1行を追加 | ||
+ | |||
+ | 0 5 * * * root / | ||
+ | |||
+ | バージョン確認 | ||
+ | |||
+ | freebsd-version -kur | ||
+ | |||
+ | バージョンが変わっていたら再起動 | ||
+ | |||
+ | shutdown -r now | ||
+ | |||
+ | ===== リリースアップグレード ===== | ||
+ | 必要なバイナリなどの取得 | ||
+ | # freebsd-update upgrade -r 8.2-RELEASE | ||
+ | ... | ||
+ | Does this look reasonable (y/n)? y | ||
+ | 設定がコンフリクトしたらエディタが起動するのでよさげに直す。\\ | ||
+ | その他は、 | ||
+ | Does this look reasonable (y/n)? y | ||
+ | ずっとy\\ | ||
+ | |||
+ | 終わったら、カーネルのアップデート | ||
+ | # freebsd-update install | ||
+ | 再起動 | ||
+ | # shutdown -r now | ||
+ | |||
+ | あれやこれやのアップデートをインストール((古い共有ライブラリとオブジェクトファイルを削除)) | ||
+ | # freebsd-update install | ||
+ | |||
+ | バージョン確認 | ||
+ | # freebsd-version | ||
+ | # uname -a | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | パッケージのアップデート | ||
+ | # pkg-static upgrade -f | ||
+ | |||
+ | アプリケーションを再構築するには | ||
+ | |||
+ | # portmaster -af | ||
+ | |||
+ | |||
+ | portsツリーの更新 | ||
+ | # portsnap fetch update && portsdb -u | ||
+ | portsからインストールしたものをアップデート | ||
+ | # portmaster pathto/port | ||
+ | |||
+ | サードパーティーアプリの更新\\ | ||
+ | ただしportsからインストールしたものはpkg lockしてから((lockしたportsをアップグレードする場合、まずunlockしてからなので注意)) | ||
+ | # pkg upgrade -f | ||
+ | |||
+ | |||
+ | 念の為再起動 | ||
+ | # shutdown -r now | ||
+ | |||
+ | ===== JailのUpgrade ===== | ||
+ | |||
+ | # freebsd-update -b /jail/base -r 10.3-RELEASE upgrade | ||
+ | |||
+ | ただし、母艦側が10.3だとエラーなので、unameを環境変数でごまかす | ||
+ | |||
+ | # setenv UNAME_r 10.2-RELEASE | ||
+ | |||
+ | これで、Upgrade、install | ||
+ | # freebsd-update -b /jail/base -r 10.3-RELEASE upgrade | ||
+ | # freebsd-update -b /jail/base install | ||
+ | |||
+ | 環境変数を戻して | ||
+ | |||
+ | # unsetenv UNAME_r 10.3-RELEASE | ||
+ | |||
+ | 再度 | ||
+ | |||
+ | # freebsd-update -b /jail/base install | ||
+ | |||
+ | ===== 作業ファイルの削除 ===== | ||
+ | |||
+ | 作業ファイルが数百MBあるので消しておきます。((これを忘れると/ | ||
+ | |||
+ | # rm -fr / | ||
+ | ===== 7.3以前 ===== | ||
+ | FreeBSD 7.3-RELEASEかそれ以前のFreeBSDからアップグレードする場合には、サードパーティアプリケーションをリビルドする必要があります。 | ||
+ | アップデート後にサードパーティアプリケーションをインストールし、再びfreebsd-updateを実行して、古いライブラリを削除してください。 | ||
+ | |||
+ | ===== 参考 ===== | ||
+ | * [[http:// | ||
+ | * http:// | ||
+ | * **[[https:// |