Date: Mon, 26 Apr 2021 10:19:08 GMT From: Ryusuke SUZUKI <ryusuke@FreeBSD.org> To: doc-committers@FreeBSD.org, dev-commits-doc-all@FreeBSD.org Subject: git: e35388b00e - main - 2a617095b1 -> 7859bada69 Message-ID: <202104261019.13QAJ8n6073545@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by ryusuke: URL: https://cgit.FreeBSD.org/doc/commit/?id=e35388b00ef000cc0f473b09f11adae268ba9a5b commit e35388b00ef000cc0f473b09f11adae268ba9a5b Author: Ryusuke SUZUKI <ryusuke@FreeBSD.org> AuthorDate: 2021-04-26 10:18:46 +0000 Commit: Ryusuke SUZUKI <ryusuke@FreeBSD.org> CommitDate: 2021-04-26 10:18:46 +0000 2a617095b1 -> 7859bada69 --- .../ja/books/handbook/cutting-edge/_index.adoc | 58 ++++++++++++++++++++-- 1 file changed, 54 insertions(+), 4 deletions(-) diff --git a/documentation/content/ja/books/handbook/cutting-edge/_index.adoc b/documentation/content/ja/books/handbook/cutting-edge/_index.adoc index 5e8fc1a762..492f680317 100644 --- a/documentation/content/ja/books/handbook/cutting-edge/_index.adoc +++ b/documentation/content/ja/books/handbook/cutting-edge/_index.adoc @@ -622,9 +622,10 @@ check /usr/src/UPDATING <.> # make -j4 buildworld <.> # make -j4 kernel <.> # shutdown -r now <.> +# etcupdate -p <.> # cd /usr/src <.> # make installworld <.> -# mergemaster -Ui <.> +# etcupdate -B <.> # shutdown -r now <.> .... @@ -640,11 +641,13 @@ check /usr/src/UPDATING <.> <.> 新しいカーネルを使うため、 システムを再起動してください。 +<.> installworld を行う前に、[.filename]#/etc/# に置かれている設定ファイルのアップデートとマージを行ってください。 + <.> ソースが置かれているディレクトリに移動してください。 <.> world をインストールしてください。 -<.> [.filename]#/etc/# に置かれている設定ファイルをアップデートしたりマージしてください。 +<.> [.filename]#/etc/# に置かれている設定ファイルのアップデートとマージを行ってください。 <.> 新しく構築された world およびカーネルを利用するため、 システムを再起動してください。 ==== @@ -866,11 +869,58 @@ FreeBSD 標準のカーネルは、[.filename]#GENERIC# と呼ばれる _カー アップデートの完了までに、いくつかの最終作業が残されています。 デフォルトから変更した設定ファイルを新しいバージョンのファイルにマージし、古くなったライブラリを見つけて削除した後に、システムを再起動します。 +[[updating-src-completing-merge-etcupdate]] +==== man:etcupdate[8] を用いた設定ファイルのマージ + +man:etcupdate[8] は、[.filename]#/etc/# 以下のファイルのように installworld のプロセスで更新されないファイルをアップデートするツールです。 +このツールは、ローカルにあるファイルに対する変更点を 3-way マージでアップデートします。 +man:mergemaster[8] の対話的なプロンプトと対照的に、このツールはユーザによる操作を最小限になるように設計されています。 + +[NOTE] +==== +一般的に、man:etcupdate[8] は、実行する際に特定の引数を必要としません。 +しかしながら、man:etcupdate[8] を最初に使用した際に、どのようなアップデートが行われたかの健全性をチェックする便利なコマンドがあります。 + +[source,shell] +.... +# etcupdate diff +.... + +このコマンドにより、ユーザは設定の変更を検証できます。 +==== + +man:etcupdate[8] が自動的にファイルをマージできない場合には、 +以下を実行することで、手動の操作により衝突を解決できます。 + +[source,shell] +.... +# etcupdate resolve +.... + +[WARNING] +==== +man:mergemaster[8] から man:etcupdate[8] に移行する際に、 +最初に man:etcupdate[8] を実行すると、不適切に変更点がマージされ、誤った衝突が起こる可能性があります。 +これを避けるには、ソースを更新して新しく buildworld を行う *前に* 以下のステップを行ってください。 + +[source,shell] +.... +# etcupdate bootstrap <.> +# etcupdate diff <.> +.... + +<.> [.filename]#/etc# ファイルを保存するデータベースをブートストラップしてください。 +詳細については、 man:etcupdate[8] を参照してください。 + +<.> ブートストラップ後、差分を確認してください。 +不必要なローカルでの変更点をなくし、将来的なアップデートにおいて、衝突が起きる可能性が低くなるようにしてください。 +==== + [[updating-src-completing-merge-mergemaster]] ==== man:mergemaster[8] を用いた設定ファイルのマージ -man:mergemaster[8] を用いることで、システムの設定ファイルに行われている変更を、 簡単にこれらのファイルの新しいバージョンにマージできます。 - +man:mergemaster[8] を用いることで、システムの設定ファイルに行われている変更を、これらのファイルの新しいバージョンにマージできます。 +man:mergemaster[8] は、設定ファイルのアップデートで推奨されている man:etcupdate[8] の代価のツールです。 `-Ui` オプションを使って man:mergemaster[8] を実行すると、 ユーザが手を加えていないファイルのアップデートおよび新しく追加されたファイルのインストールを自動的に行います。 [source,shell]
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202104261019.13QAJ8n6073545>