- Merge the following from the English version:
r41766 -> r41772 head/ja_JP.eucJP/books/handbook/cutting-edge/chapter.xml
This commit is contained in:
parent
28f74308d0
commit
130a7aebf5
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=41778
1 changed files with 114 additions and 108 deletions
|
@ -3,7 +3,7 @@
|
|||
The FreeBSD Documentation Project
|
||||
The FreeBSD Japanese Documentation Project
|
||||
|
||||
Original revision: r41766
|
||||
Original revision: r41772
|
||||
$FreeBSD$
|
||||
-->
|
||||
|
||||
|
@ -2696,6 +2696,73 @@ Script done, …</screen>
|
|||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="make-delete-old">
|
||||
<sect2info>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<firstname>Anton</firstname>
|
||||
<surname>Shterenlikht</surname>
|
||||
<contrib>ベースとなったノートの提供: </contrib>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</sect2info>
|
||||
<title>使われなくなったファイル、ディレクトリ、ライブラリの削除</title>
|
||||
|
||||
<indexterm>
|
||||
<primary>Deleting obsolete files, directories and libraries</primary>
|
||||
</indexterm>
|
||||
|
||||
<para>&os; の開発サイクルにおいて、
|
||||
ファイルやシステムの一部が使われなくなることがあります。
|
||||
それらの機能が別の場所で実装されたり、
|
||||
ライブラリのバージョン番号が変わったり、
|
||||
システムから完全に削除されることがあるためです。
|
||||
システムのアップデート時に削除が必要になるのは、
|
||||
古いファイル、ライブラリそしてディレクトリです。
|
||||
これらのファイルを削除することで、
|
||||
記憶媒体やバックアップ媒体において不必要な容量を占めている古いファイルが、
|
||||
システム上に散乱することがなくなります。
|
||||
また、古いライブラリのセキュリティや安定性に問題があると、
|
||||
ライブラリを新しくしてシステムを安定な状態にし、
|
||||
古いライブラリによりシステムがクラッシュすることを防がなければなりません。
|
||||
使われなくなったファイル、ディレクトリ、ライブラリは
|
||||
<filename>/usr/src/ObsoleteFiles.inc</filename>
|
||||
にまとめられています。以下の手順により、
|
||||
アップグレードの過程でこれらのファイルを削除できます。</para>
|
||||
|
||||
<para><xref linkend="canonical-build"/>
|
||||
で説明した方法でシステムを構築してください。
|
||||
<command>make <maketarget>installworld</maketarget></command>
|
||||
と、その後の <command>mergemaster</command> が無事に終わったら、
|
||||
以下の方法で使われなくなったファイルやライブラリを確認してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd /usr/src</userinput>
|
||||
&prompt.root; <userinput>make check-old</userinput></screen>
|
||||
|
||||
<para>見つかった古いファイルは、以下のコマンドで削除できます。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>make delete-old</userinput></screen>
|
||||
|
||||
<tip>
|
||||
<para>その他のターゲットについては
|
||||
<filename>/usr/src/Makefile</filename> をご覧ください。</para>
|
||||
</tip>
|
||||
|
||||
<para>使われなくなったファイルを削除する際、
|
||||
ファイルごとに確認が求められます。
|
||||
確認を省略し、自動的にファイルを削除するには、
|
||||
以下のように <makevar>BATCH_DELETE_OLD_FILES</makevar>
|
||||
を設定してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>make -DBATCH_DELETE_OLD_FILES delete-old</userinput></screen>
|
||||
|
||||
<para><command>yes</command>
|
||||
をコマンドへパイプでつなげても省略できます。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>yes|make delete-old</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="updating-upgrading-rebooting">
|
||||
<title>再起動</title>
|
||||
|
||||
|
@ -2703,7 +2770,53 @@ Script done, …</screen>
|
|||
&man.shutdown.8; を実行してシステムを再起動してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>shutdown -r now</userinput></screen>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>使われなくなったライブラリの削除</title>
|
||||
|
||||
<warning>
|
||||
<title>Warning</title>
|
||||
|
||||
<para>使われなくなったファイルを削除すると、
|
||||
削除したファイルに依存していたアプリケーションは壊れてしまいます。
|
||||
特に、古いライブラリを削除する場合に起こり得ます。
|
||||
通常、<command>make
|
||||
<maketarget>delete-old-libs</maketarget></command>
|
||||
を実行する前に、
|
||||
これらの古いライブラリを使っているプログラム、ports、
|
||||
ライブラリを再構築する必要があります。</para>
|
||||
</warning>
|
||||
|
||||
<para>共有ライブラリをチェックするユーティリティとして、
|
||||
Ports Collection の <filename
|
||||
role="package">sysutils/libchk</filename> や <filename
|
||||
role="package">sysutils/bsdadminscripts</filename>
|
||||
を利用できます。</para>
|
||||
|
||||
<para>使われなくなった共有ライブラリは、
|
||||
新しいライブラリと競合し、以下のようなメッセージを表示することがあります。</para>
|
||||
|
||||
<screen>/usr/bin/ld: warning: libz.so.4, needed by /usr/local/lib/libtiff.so, may conflict with libz.so.5
|
||||
/usr/bin/ld: warning: librpcsvc.so.4, needed by /usr/local/lib/libXext.so, may conflict with librpcsvc.so.5</screen>
|
||||
|
||||
<para>この問題を解決するには、
|
||||
まずライブラリがどの port によってインストールされたかを調べて下さい。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg_info -W /usr/local/lib/libtiff.so</userinput>
|
||||
/usr/local/lib/libtiff.so was installed by package tiff-3.9.4
|
||||
&prompt.root; <userinput>pkg_info -W /usr/local/lib/libXext.so</userinput>
|
||||
/usr/local/lib/libXext.so was installed by package libXext-1.1.1,1</screen>
|
||||
|
||||
<para>見つかった port をアンインストールし、
|
||||
再構築、再インストールしてください。
|
||||
この過程は <filename role="package">ports-mgmt/portmaster</filename>
|
||||
で自動化できます。
|
||||
すべての ports が再構築され、
|
||||
古いライブラリがどこにも使われていないことを確認したら、
|
||||
以下のコマンドで古いライブラリを削除してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>make delete-old-libs</userinput></screen>
|
||||
<para>ここまで来れば、&os; システムのアップグレードは成功です。
|
||||
おめでとうございます。</para>
|
||||
|
||||
|
@ -2989,113 +3102,6 @@ Building everything..
|
|||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="make-delete-old">
|
||||
<sect1info>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<firstname>Anton</firstname>
|
||||
<surname>Shterenlikht</surname>
|
||||
<contrib>ベースとなったノートの提供: </contrib>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</sect1info>
|
||||
<title>使われなくなったファイル、ディレクトリ、ライブラリの削除</title>
|
||||
<indexterm>
|
||||
<primary>Deleting obsolete files, directories and libraries</primary>
|
||||
</indexterm>
|
||||
|
||||
<para>&os; の開発サイクルにおいて、
|
||||
ファイルやシステムの一部が使われなくなることがあります。
|
||||
それらの機能が別の場所で実装されたり、
|
||||
ライブラリのバージョン番号が変わったり、
|
||||
システムから完全に削除されることがあるためです。
|
||||
システムのアップデート時に削除が必要になるのは、
|
||||
古いファイル、ライブラリそしてディレクトリです。
|
||||
これらのファイルを削除することで、
|
||||
記憶媒体やバックアップ媒体において不必要な容量を占めている古いファイルが、
|
||||
システム上に散乱することがなくなります。
|
||||
また、古いライブラリのセキュリティや安定性に問題があると、
|
||||
ライブラリを新しくしてシステムを安定な状態にし、
|
||||
古いライブラリによりシステムがクラッシュすることを防がなければなりません。
|
||||
使われなくなったファイル、ディレクトリ、ライブラリは
|
||||
<filename>/usr/src/ObsoleteFiles.inc</filename>
|
||||
にまとめられています。以下の手順により、
|
||||
アップグレードの過程でこれらのファイルを削除できます。</para>
|
||||
|
||||
<para><xref linkend="canonical-build"/>
|
||||
で説明した方法でシステムを構築してください。
|
||||
<command>make <maketarget>installworld</maketarget></command>
|
||||
と、その後の <command>mergemaster</command> が無事に終わったら、
|
||||
以下の方法で使われなくなったファイルやライブラリを確認してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd /usr/src</userinput>
|
||||
&prompt.root; <userinput>make check-old</userinput></screen>
|
||||
|
||||
<para>見つかった古いファイルは、以下のコマンドで削除できます。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>make delete-old</userinput></screen>
|
||||
|
||||
<tip>
|
||||
<para>その他のターゲットについては <filename>/usr/src/Makefile</filename>
|
||||
をご覧ください。</para>
|
||||
</tip>
|
||||
|
||||
<para>使われなくなったファイルを削除する際、ファイルごとに確認が求められます。
|
||||
確認を省略し、自動的にファイルを削除するには、
|
||||
以下のように <makevar>BATCH_DELETE_OLD_FILES</makevar>
|
||||
を設定してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>make -DBATCH_DELETE_OLD_FILES delete-old</userinput></screen>
|
||||
|
||||
<para><command>yes</command>
|
||||
をコマンドへパイプでつなげても省略できます。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>yes|make delete-old</userinput></screen>
|
||||
|
||||
<warning>
|
||||
<title>Warning</title>
|
||||
|
||||
<para>使われなくなったファイルを削除すると、
|
||||
削除したファイルに依存していたアプリケーションは壊れてしまいます。
|
||||
特に、古いライブラリを削除する場合に起こり得ます。
|
||||
通常、<command>make
|
||||
<maketarget>delete-old-libs</maketarget></command>
|
||||
を実行する前に、
|
||||
これらの古いライブラリを使っているプログラム、ports、
|
||||
ライブラリを再構築する必要があります。</para>
|
||||
</warning>
|
||||
|
||||
<para>共有ライブラリをチェックするユーティリティとして、
|
||||
Ports Collection の <filename
|
||||
role="package">sysutils/libchk</filename> や <filename
|
||||
role="package">sysutils/bsdadminscripts</filename>
|
||||
を利用できます。</para>
|
||||
|
||||
<para>使われなくなった共有ライブラリは、
|
||||
新しいライブラリと競合し、以下のようなメッセージを表示することがあります。</para>
|
||||
|
||||
<screen>/usr/bin/ld: warning: libz.so.4, needed by /usr/local/lib/libtiff.so, may conflict with libz.so.5
|
||||
/usr/bin/ld: warning: librpcsvc.so.4, needed by /usr/local/lib/libXext.so, may conflict with librpcsvc.so.5</screen>
|
||||
|
||||
<para>この問題を解決するには、
|
||||
まずライブラリがどの port によってインストールされたかを調べて下さい。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg_info -W /usr/local/lib/libtiff.so</userinput>
|
||||
/usr/local/lib/libtiff.so was installed by package tiff-3.9.4
|
||||
&prompt.root; <userinput>pkg_info -W /usr/local/lib/libXext.so</userinput>
|
||||
/usr/local/lib/libXext.so was installed by package libXext-1.1.1,1</screen>
|
||||
|
||||
<para>見つかった port をアンインストールし、
|
||||
再構築、再インストールしてください。
|
||||
この過程は <filename role="package">ports-mgmt/portmaster</filename>
|
||||
で自動化できます。
|
||||
すべての ports が再構築され、
|
||||
古いライブラリがどこにも使われていないことを確認したら、
|
||||
以下のコマンドで古いライブラリを削除してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>make delete-old-libs</userinput></screen>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="small-lan">
|
||||
<sect1info>
|
||||
<authorgroup>
|
||||
|
|
Loading…
Reference in a new issue