FC2ブログ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

FreeBSDのメンテナンス(2013年1月)

2012年になりました。
あけましておめでとうございます。

自宅や職場にFreeBSD 9.0を入れたパソコンが3台あります。
まず1台分のメンテナンスの備忘録です。

- FreeBSD 9.0から9.1への移行

手順1 (バージョンの確認、freebsd-updateコマンドの確認)
バージョンが9.0 Releaseであることを確認する。
freebsd-updateコマンドが適用するために、中途半端に9.0のStableでないことを確認する。
もし9.0 ReleaseでなければReleaseのソースをCSUP等で入手してmake world...結構面倒)
$ uname -a

freebsd-update コマンド自身を更新する。
# freebsd-update fetch && freebsd-update install

# freebsd-update fetch && freebsd-update install
Looking up update.FreeBSD.org mirrors... 3 mirrors found.
Fetching metadata signature for 9.0-RELEASE from update3.FreeBSD.org... done.
Fetching metadata index... done.
Fetching 1 metadata patches. done.
Applying metadata patches... done.
Fetching 2 metadata files... done.
Inspecting system... done.
Preparing to download files... done.
Fetching 36 patches.....10....20....30... done.
Applying patches... done.

The following files will be updated as part of updating to 9.0-RELEASE-p5:
/boot/kernel/kernel
/boot/kernel/kernel.symbols
/boot/kernel/linux.ko
/boot/kernel/linux.ko.symbols
/lib/libcrypt.so.5
/lib/libcrypto.so.6
/rescue/[
/rescue/atacontrol
/rescue/atmconfig
(中略)
/usr/sbin/rndc-confgen
/var/db/mergemaster.mtree

WARNING: FreeBSD 9.0-RELEASE is approaching its End-of-Life date.
It is strongly recommended that you upgrade to a newer
release within the next 2 months.




手順2 (作業領域 /var の空き容量の確認)
/var/dbに数百MB程度(500MB?)、余裕があるか確認。なければ不要なファイルを削除
$ df

不幸にも?/varがあふれそうなら、/var/db/freebsd-updateの領域を確保する。
(/varを700MBしか作成していないマシンがあるので...)
mkdir /home/freebsd-update && ln -s /home/freebsd-update /var/db/freebsd-update


手順3 (カーネルの更新とユーザーランドの入れ替え)
# freebsd-update upgrade -r 9.1-RELEASE
数十分待って、各種質問に答える。(/varがあふれないことを祈りながら)


# freebsd-update upgrade -r 9.1-RELEASE
Looking up update.FreeBSD.org mirrors... 3 mirrors found.
Fetching metadata signature for 9.0-RELEASE from update4.FreeBSD.org... done.
Fetching metadata index... done.
Fetching 1 metadata patches. done.
Applying metadata patches... done.
Inspecting system... done.

The following components of FreeBSD seem to be installed:
kernel/generic world/base world/doc

The following components of FreeBSD do not seem to be installed:
src/src world/games

Does this look reasonable (y/n)? y

Fetching metadata signature for 9.1-RELEASE from update4.FreeBSD.org... done.
Fetching metadata index... done.
Fetching 1 metadata patches. done.
Applying metadata patches... done.
Fetching 1 metadata files... done.
Inspecting system... done.
Fetching files from 9.0-RELEASE for merging... done.
Preparing to download files... done.
Fetching 9529 patches.....10....20....30....40....50....60....70....80....90....100....110....120....130....140....150....160....170....180....190....200....210....220....230....240....250....260....270....280....290....300....310....320....330....340....350....360....370....380....390....400....410....
(中略)
9290....9300....9310....9320....9330....9340....9350....9360....9370....9380....9390....9400....9410....9420....9430....9440....9450....9460....9470....9480....9490....9500....9510....9520.... done.
Applying patches... done.
Fetching 125 files... done.
Attempting to automatically merge changes in files... done.

The following file could not be merged automatically: /etc/hosts
Press Enter to edit this file in vi and resolve the conflicts
manually...
(後略)



# freebsd-update install && reboot (1回目はカーネルの更新)

再起動後にもう一度
# /usr/sbin/freebsd-update install (2回目はユーザーランドの入れ替え)

# /usr/sbin/freebsd-update install
Installing updates... done.



以上の作業で、FreeBSD 9.1に更新が完了。

freebsd-updateは実施環境により2回または3回実施しますが、
9.0から9.1への更新では2回で完了です。

もし3回目を実行しても

# freebsd-update install
No updates are available to install.
Run '/usr/sbin/freebsd-update fetch' first.




付録 portsnap を使ったportsツリーの更新例

手順4-1 portsツリーの新規作成 (初回のみ実行。以前実施したので、今回は不要)
#portsnap fetch && portsnap extract && portsnap update

手順4-2 portsツリーの更新 (2回目以降、今回はこちら)
# portsnap fetch && portsnap update

手順4-3 パッケージのの更新を確認
# portversion -vL=

手順4-4 パッケージの更新

全部更新する場合。(今回はこちら)
# portupgrade -ar
# portupgrade -ary (-yは全てyesと回答)

一部のみ更新する場合。 (rsyncとapacheとその依存のみ更新)
# portupgrade -r rsync apache




スポンサーサイト
プロフィール

まつばば

Author:まつばば
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。