ナビゲーション
FrontPage
FreeBSD
Linux
Citrix XenServer
VMware ESXi
Unixコマンド
MySQL
PostgreSQL
Windows
CMS/CRM
クラウド
用語
PHPスクリプト
Bashシェルスクリプト
Rubyスクリプト
開発日記
検索
ツールボックス
新しいページの作成
バックアップの表示
外部のリンク元
最近更新したページ
全ページ
ヘルプ
凍結
アップロード
ページ名の変更
最新の40件
2016-08-17
Linux/NagiosQL
Linux/CentOSチューニング
2016-02-23
Linux/ソフトウェアRAID復旧手順
2016-02-18
FreeBSD/DHCP
FreeBSD/squid
2016-02-15
Unixコマンド/file
2016-02-05
FreeBSD/DynaBook
FreeBSD/Linux compatibility
2016-01-21
PHPスクリプト/PEAR DBインストールできない
PHPスクリプト/PEAR DB
2016-01-20
PHP/フレームワーク/Zend Framework
PHP/フレームワーク
FreeBSD/Postfix+amavisd+clamav
2016-01-15
FreeBSD/sl
2015-12-04
Unixコマンド/dig
Unixコマンド/nslookup
Unixコマンド/traceroute
Linux/rsync
FreeBSD/rsync
Unixコマンド/vipw
2015-11-25
Linux/Postfix+MySQL+Postfix AdminによるバーチャルSMTPサーバの構築
Linux/Postfix + postgrey
2015-11-24
Linux/Postfix + amavisd + clamav
2015-05-25
Unixコマンド/ifconfig
2015-05-23
Unixコマンド/netstat
Unixコマンド/route
Unixコマンド/lsof
Unixコマンド/disown
Unixコマンド/time
Unixコマンド/crontab
2015-05-22
Unixコマンド/nohup
Unixコマンド/fgとbg
Unixコマンド/nice
Unixコマンド/kill
Unixコマンド/jobs
Unixコマンド/restor
Unixコマンド/dump
Unixコマンド/uncompress
Unixコマンド/compress
Unixコマンド/zcat
total:
4516
today:
1
yesterday:
0
now:
1
本文
ノート
?
編集
差分
一覧
FreeBSD/アップグレード の編集
*''&size(15){FreeBSD OSアップグレード};'' [#cf149240] [[dokuwiki.fl8.jp転載済>http://dokuwiki.fl8.jp/doku.php/02_freebsd/99_%E3%81%9D%E3%81%AE%E4%BB%96/%E3%82%A2%E3%83%83%E3%83%97%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%89]] #contents まずは、CVSupでソースを最新にする必要があります。~ 今回はFreeBSD 5.4 ⇒ FreeBSD 6.0 へ **''CVSupをインストール'' [#v5e6eadc] ※Portsを最新版にするは [[こちら>FreeBSD/CVSup]] # cd /usr/ports/net/cvsup-without-gui # make clean ===> Cleaning for libiconv-1.9.2_1 ===> Cleaning for gettext-0.14.5 ===> Cleaning for gmake-3.80_2 ===> Cleaning for libtool-1.5.20 ===> Cleaning for ezm3-1.2 ===> Cleaning for cvsup-without-gui-16.1h_2 # make install **''/etc/stable-supfileを用意'' [#vc29c736] # cp /usr/share/examples/cvsup/stable-supfile /etc/stable-supfile # chmod 644 /etc/stable-supfile **''/etc/stable-supfileを修正'' [#c928f378] # vi /etc/stable-supfile --------------------------------- *default host=CHANGE_THIS.FreeBSD.org ↓ *default host=cvsup.jp.FreeBSD.org *default release=cvs tag=RELENG_5 ↓ *default release=cvs tag=RELENG_6 RELENG_6というのは、6-STABLE(FreeBSD 6.xの開発版)を指しています。~ 5.2.1-RELEASEを更新するのが目的ならば、RELEASE版のFreeBSDのツリーは例えば5.1-RELEASEであれば「RELENG_5_1」、5.2-RELEASEや5.2.1-RELEASEであれば「RELENG_5_2」と言った感じに変更します。 **''実行してみる(ソースの同期)'' [#p1bf3e76] ▼やり方はPortsの場合とほぼ同じです。 # cvsup -g -L 2 /etc/stable-supfile --------------------------------- . . . . . . **''自動設定'' [#z1a485f7] # crontab -e --------------------------------- 00 6 * * * root /usr/local/bin/cvsup -g -L 2 /etc/stable-supfile **''ソースのコンパイル(make buildworld)'' [#obb73ef1] ソースの同期が完了したら、同期したソースをコンパイルします。~ ソースをコンパイルするには、make buildworldというコマンドを使います。~ これを行うと、kernelを除くFreeBSDのベースシステム全てがコンパイルされます。~ ※すっごく時間がかかります。(うちのCeleron 600MzのPCだと6時間くらい) # cd /usr/src # make buildworld このようにして、放置しておくとbuildworld.logにログを残してくれます。 # /usr/bin/nohup time make buildworld >buildworld.log & -[[nohup>Unixコマンド/nohup]] -[[time>Unixコマンド/time]] **''kernelのコンパイル(make buildkernel)'' [#q694e2a1] ソースがコンパイルできたら、次はkernelをコンパイルします。~ kernelをコンパイルするには、make buildkernelというコマンドを使います。~ make buildworldと同様に/usr/srcで~ # make buildkernel KERNCONF=MYKERNEL # make installkernel KERNCONF=MYKERNEL # reboot また、KERNCONF=MYKERNELを/etc/make.confに記述しておくと、make buildkernelとやれば自動的に指定したコンフィグファイルを参照してkernelを作成してくれます。 **シングルユーザモードで起動 [#fd61fe27] デーモンくんの表示されている個所で、シングルユーザモードを選択肢する。 # fsck -p (ファイルシステムのチェック) # mount -u / (/を読み書き可能にして再マウント) # mount -a -t ufs (/etc/fstabに指定されているその他のUFSを全てマウント) # swapon -a (スワップを有効にする) **''コンパイル済みのシステムのインストール(make installworld)'' [#q2209593] # cd /usr/src # make installworld **''/etcファイルの更新'' [#t69e2ed1] mergemasterの主な使い方は、よく文章を読めば理解できるとは思うのですが、~ まずmergemasterは仮のルートを作って、そこへ新しい/etcを置きます。~ そこから、/etcへコピーするか、/etcにあるものを保持するかを選択できるんですが、主な操作方法は3つです。~ 新しいファイルに更新する場合は"i" /etc にあるものをそのまま使う時は"d" マージする時は"m" ***''/etcのバックアップを取っておく'' [#k500214c] # cd / # cp -Rp etc etc.OLD ***''mergemaster'' [#wfb1be39] mergemaster -siva 後、mergemaster -sivr すると楽に作業が行えます。~ siva により、現在環境にないファイルをコピーしますので、変更のあるファイルのみを -sivr で適用することになりますので、単に mergemaster する場合よりも格段に作業量が減ります。 # mergemaster -siva # mergemaster -sivr **古いライブラリの削除 [#e83d96c8] &color(red){※ただし、古いライブラリを削除した場合、それに依存していたports等が起動できなくなる場合もあるかも知れない。}; # make delete-old # make delete-old-libs ***古いライブラリを削除して、portsが起動できなくなった場合 [#paae12a8] -/var/log/mail.logにこんなエラーが出てました。 deferral: /libexec/ld-elf.so.1:_Shared_object_"libz.so.2"_not_found,_required_by_"vdelivermail"/ delivery 4: deferral: /libexec/ld-elf.so.1:_Shared_object_"libcrypt.so.2"_not_found,_required_by_"vdelivermail"/ -対処:シンボリックリンクを貼ってやると、とりあえず動くみたいです。 # ln -s /lib/libz.so.3 /lib/libz.so.2 # ln -s /lib/libcrypt.so.3 /lib/libcrypt.so.2 **ソースのバージョン確認 [#ya258000] /usr/src/sys/conf/newvers.sh 中に記載。間違っていると時間の大幅なロスになるため、必ず確認する。
タイムスタンプを変更しない
*''&size(15){FreeBSD OSアップグレード};'' [#cf149240] [[dokuwiki.fl8.jp転載済>http://dokuwiki.fl8.jp/doku.php/02_freebsd/99_%E3%81%9D%E3%81%AE%E4%BB%96/%E3%82%A2%E3%83%83%E3%83%97%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%89]] #contents まずは、CVSupでソースを最新にする必要があります。~ 今回はFreeBSD 5.4 ⇒ FreeBSD 6.0 へ **''CVSupをインストール'' [#v5e6eadc] ※Portsを最新版にするは [[こちら>FreeBSD/CVSup]] # cd /usr/ports/net/cvsup-without-gui # make clean ===> Cleaning for libiconv-1.9.2_1 ===> Cleaning for gettext-0.14.5 ===> Cleaning for gmake-3.80_2 ===> Cleaning for libtool-1.5.20 ===> Cleaning for ezm3-1.2 ===> Cleaning for cvsup-without-gui-16.1h_2 # make install **''/etc/stable-supfileを用意'' [#vc29c736] # cp /usr/share/examples/cvsup/stable-supfile /etc/stable-supfile # chmod 644 /etc/stable-supfile **''/etc/stable-supfileを修正'' [#c928f378] # vi /etc/stable-supfile --------------------------------- *default host=CHANGE_THIS.FreeBSD.org ↓ *default host=cvsup.jp.FreeBSD.org *default release=cvs tag=RELENG_5 ↓ *default release=cvs tag=RELENG_6 RELENG_6というのは、6-STABLE(FreeBSD 6.xの開発版)を指しています。~ 5.2.1-RELEASEを更新するのが目的ならば、RELEASE版のFreeBSDのツリーは例えば5.1-RELEASEであれば「RELENG_5_1」、5.2-RELEASEや5.2.1-RELEASEであれば「RELENG_5_2」と言った感じに変更します。 **''実行してみる(ソースの同期)'' [#p1bf3e76] ▼やり方はPortsの場合とほぼ同じです。 # cvsup -g -L 2 /etc/stable-supfile --------------------------------- . . . . . . **''自動設定'' [#z1a485f7] # crontab -e --------------------------------- 00 6 * * * root /usr/local/bin/cvsup -g -L 2 /etc/stable-supfile **''ソースのコンパイル(make buildworld)'' [#obb73ef1] ソースの同期が完了したら、同期したソースをコンパイルします。~ ソースをコンパイルするには、make buildworldというコマンドを使います。~ これを行うと、kernelを除くFreeBSDのベースシステム全てがコンパイルされます。~ ※すっごく時間がかかります。(うちのCeleron 600MzのPCだと6時間くらい) # cd /usr/src # make buildworld このようにして、放置しておくとbuildworld.logにログを残してくれます。 # /usr/bin/nohup time make buildworld >buildworld.log & -[[nohup>Unixコマンド/nohup]] -[[time>Unixコマンド/time]] **''kernelのコンパイル(make buildkernel)'' [#q694e2a1] ソースがコンパイルできたら、次はkernelをコンパイルします。~ kernelをコンパイルするには、make buildkernelというコマンドを使います。~ make buildworldと同様に/usr/srcで~ # make buildkernel KERNCONF=MYKERNEL # make installkernel KERNCONF=MYKERNEL # reboot また、KERNCONF=MYKERNELを/etc/make.confに記述しておくと、make buildkernelとやれば自動的に指定したコンフィグファイルを参照してkernelを作成してくれます。 **シングルユーザモードで起動 [#fd61fe27] デーモンくんの表示されている個所で、シングルユーザモードを選択肢する。 # fsck -p (ファイルシステムのチェック) # mount -u / (/を読み書き可能にして再マウント) # mount -a -t ufs (/etc/fstabに指定されているその他のUFSを全てマウント) # swapon -a (スワップを有効にする) **''コンパイル済みのシステムのインストール(make installworld)'' [#q2209593] # cd /usr/src # make installworld **''/etcファイルの更新'' [#t69e2ed1] mergemasterの主な使い方は、よく文章を読めば理解できるとは思うのですが、~ まずmergemasterは仮のルートを作って、そこへ新しい/etcを置きます。~ そこから、/etcへコピーするか、/etcにあるものを保持するかを選択できるんですが、主な操作方法は3つです。~ 新しいファイルに更新する場合は"i" /etc にあるものをそのまま使う時は"d" マージする時は"m" ***''/etcのバックアップを取っておく'' [#k500214c] # cd / # cp -Rp etc etc.OLD ***''mergemaster'' [#wfb1be39] mergemaster -siva 後、mergemaster -sivr すると楽に作業が行えます。~ siva により、現在環境にないファイルをコピーしますので、変更のあるファイルのみを -sivr で適用することになりますので、単に mergemaster する場合よりも格段に作業量が減ります。 # mergemaster -siva # mergemaster -sivr **古いライブラリの削除 [#e83d96c8] &color(red){※ただし、古いライブラリを削除した場合、それに依存していたports等が起動できなくなる場合もあるかも知れない。}; # make delete-old # make delete-old-libs ***古いライブラリを削除して、portsが起動できなくなった場合 [#paae12a8] -/var/log/mail.logにこんなエラーが出てました。 deferral: /libexec/ld-elf.so.1:_Shared_object_"libz.so.2"_not_found,_required_by_"vdelivermail"/ delivery 4: deferral: /libexec/ld-elf.so.1:_Shared_object_"libcrypt.so.2"_not_found,_required_by_"vdelivermail"/ -対処:シンボリックリンクを貼ってやると、とりあえず動くみたいです。 # ln -s /lib/libz.so.3 /lib/libz.so.2 # ln -s /lib/libcrypt.so.3 /lib/libcrypt.so.2 **ソースのバージョン確認 [#ya258000] /usr/src/sys/conf/newvers.sh 中に記載。間違っていると時間の大幅なロスになるため、必ず確認する。
テキスト整形のルールを表示する
ログインまたはアカウント作成