はい、そんな説明を昔にjp.freebsd.orgのどこかで読んでそのまま指定しています。確か、普通のインテルCPUで"4"が一番多くの人にとって最適値だというような説明があったと思います。今はあまり気にしなくてもいいのかな?
大体、CSVUPでソースを常に最新に保ちつつ一ヶ月に一度くらいの頻度でmakeworldしています。特にsingle user modeに落ちずに、というかリモートでmakeworldしているので落ちれない、毎回思い切ってやってます。4.3-STABLEあたりからずっとそれできているので怖くてそれ以外の手順は試せずにいるのが実情だ
を実行してください。ここで make に -j オプションをつけると、同時にいくつかのプロセスを生成させることができます。 この機能はマルチ CPU マシンで特に効果を発揮します。 構築過程の大部分では CPU 性能の限界より I/O 性能の限界の方が問題となるため、シングル CPU マシンにも効果があります。
一般的なアップグレード方法教えて (スコア:0)
どなたか参考までに教えてください。
Re:一般的なアップグレード方法教えて (スコア:4, 参考になる)
う。私の場合、cvsupを毎日やって変更の量や場所のあたりをつけて、重要そ
うなら更新、そうでなくても週に一度は更新という運用をしています。
ちなみに、/usr/src/Makefileによると正確な手順は次の通り。
# 1. `cd /usr/src' (or to the directory containing your source tree).
# 2. `make buildworld'
# 3. `make buildkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC).
# 4. `make installkernel KERNCONF=YOUR_KERNEL_HERE' (default is GENERIC).
# 5. `reboot' (in single user mode: boot -s from the loader prompt).
# 6. `mergemaster -p'
# 7. `make installworld'
# 8. `mergemaster'
# 9. `reboot'
慣れないとmergemasterが何をやっているのか分からない感じですが、基本は
自分がいじったファイルはmergeする、それ以外は新規をインストールするこ
とです。
#サーバ用で色々と設定いじっていると大変かも。
カーネルに問題があった場合でも、一つ前のバージョンのカーネルとモジュー
ルはkernel.oldというディレクトリにリネームされてるだけですから、簡単に
戻せます。installworldしてから、トラブルが見つかった場合ですが、カーネ
ルに由来するものなら、カーネルだけ戻しても「多分」大丈夫です。そうで
なければ、動作確認ができている日付のソースをcvsupして構築しなおしです。
完全に動作しなくなることは、滅多にありません。個人的には、6-currentを
使っていた頃に、IDEのドライバがおかしくてブート後の挙動がおかしいことが
一回だけありましたが、カーネルを置き換えで復旧できました。
#こんなもんでわかります?
Re:一般的なアップグレード方法教えて (スコア:1, 参考になる)
順番とか違うので気になります。
make -j 4 buildworld
make installworld
make buildkernel ほげほげ
make installkernel ほげほげ
mergemaster
reboot
"-j 4"って今は特に必要ないのかな?
もう定型化しちゃった作業なのでこれまでずっと変えずにやってます。特に問題ないみたいですし。
Re:一般的なアップグレード方法教えて (スコア:2, 参考になる)
システムコールがらみの変更がない場合には、適当にはしょって make してもほとんどの場合は大丈夫でしょう。ツール類の更新 にあたって、セキュリティ的な問題に対応する ために、/etc/passwd 等の追加修正が時々あります。この時は、 ちゃんと mergemaster -p をしないとインストールに失敗する ことがあります。
要はどの程度の修正が新環境に加わったかです。安全を取るなら 厳密な手順に従って作業したほうが良いと思います。
Re:一般的なアップグレード方法教えて (スコア:2, 参考になる)
ますが、ユニプロセッサだとどうかなぁ。コンパイルは結構ディスクアクセス
が入りますから、若干は速くなるかも。
#明らかに必須ではないです。付けて間違いでもありません。
あと、順序の問題ですが、おっしゃる順序だとコマンド群だけ新しくなって、
カーネルとバージョンの不整合を起こす可能性があります。それにマルチユー
ザ環境でこういう作業は気持悪いですね。ユーザやサービスが実行するシェル
スクリプトで、ループの一回目と二回目でコマンドの挙動が変わらないとも限
らない。
#さて、最悪何がおきる???
また、mergemasterをそこで一発かけるだけだと、動作するために専用のアカウ
ントが必要なサービスが新規に追加された場合や、SSHやPAMの設定が変わった
時とかにうまく行かない場合がありそうです。
#どちらの話も、現実的にはそれ程大きな確率と大きな危険性ではないかも。
#「問題があっても対処可能」と言い切れる状況の人ならO.K.。
Re:一般的なアップグレード方法教えて (スコア:1)
installworldの途中でshがコア吐いてmake失敗する。
5.1->5.2のときにやっちゃいました。更新されてしまったコマンド群の大部分が軒並コア吐く状態に。たしか、lsもmountも動かなかったような気がする。ログアウトしたらログインすら出来ないかも知れない状況でかなり焦りました。reboot位は動いた気がする(笑)
で、幸いにも5.0だか5.1だかのCDがあって、そいつから起動して/binなんかを入れ、なんとかmake動く状態にして復旧しました。
4.xからcvsupで更新してたので、雑誌についてきていたそのCDは使ったことなかったのですが、あって本当に助かりましたよ。
Re:一般的なアップグレード方法教えて (スコア:0)
はい、そんな説明を昔にjp.freebsd.orgのどこかで読んでそのまま指定しています。確か、普通のインテルCPUで"4"が一番多くの人にとって最適値だというような説明があったと思います。今はあまり気にしなくてもいいのかな?
大体、CSVUPでソースを常に最新に保ちつつ一ヶ月に一度くらいの頻度でmakeworldしています。特にsingle user modeに落ちずに、というかリモートでmakeworldしているので落ちれない、毎回思い切ってやってます。4.3-STABLEあたりからずっとそれできているので怖くてそれ以外の手順は試せずにいるのが実情だ
Re:一般的なアップグレード方法教えて (スコア:1)
確かに、ユニプロセッサでも-j2の方が速くなるとMLにありました。
#自分で確かめるのが一番。
>昔(3.xの頃?)に正式手順でkernelをbuildした後でrebootしたら立ち上がらなくなった経験があって、それがトラウマになっていて作業中にrebootをするのはかなりためらわれます。(^^;)
迷信ですよぉ。それは。全部理解した上で利便性を重視して標準的な手順から
外れるのは止めません。しかし、その理由ではちょっとおすすめできないっす。
#いかれる確率は、小さいながらも確実に増えますよ。
Re:一般的なアップグレード方法教えて (スコア:1, 参考になる)
ハンドブックくらい読もうよ。以下、 20.4.6.2. ベースシステムの構築とインストール [freebsd.org]より 英語版でも、章構成が違うものの、内容は同一 [freebsd.org]ですので、これが今現在も最新の状況なのでしょう。
#記憶にある限り、5年以上前から変わっていません。
Re:一般的なアップグレード方法教えて (スコア:0)
Re:一般的なアップグレード方法教えて (スコア:1)
# 5.5. '/usr/src/etc/rc.d/preseedrandom'
が入ってます。tempファイル作るのに/dev/random使うからの様ですが、なくても実害はない気がしますけど。
Re:一般的なアップグレード方法教えて (スコア:1)
Re:一般的なアップグレード方法教えて (スコア:0)