• 追加された行はこの色です。
  • 削除された行はこの色です。
*FreeBSDインストール備忘録 [#tbbc4086]

関連:[[Computer/UNIX]] / [[Computer/Linux]]
-[[FreeBSD/command]](コマンド備忘録)
-[[FreeBSD/ports]](ports関連)
--[[FreeBSD/cvsup]](昔のメモ)
-[[FreeBSD/java]](java/servlet関連)
-[[FreeBSD/DB]](MySQL関連)
-[[FreeBSD/kon]](漢字コンソール)

#contents

関連:[[UNIX]] / [[Linux]]

**cvsup導入 [#lf1750a6]

まずはcvsup導入。これは必須。

 # cd /usr/ports/net/cvsup
 # make install clean

この後のやり方は2通りに分かれる。

***supfileを書き換える方法 [#od008186]

その後、/usr/share/examples/cvsup にある ports-supfile、stable-supfile、doc-supfile を以下のように編集する。具体的には、hostを近いサーバーへと変更する。

 *default host=CHANGE_THIS.FreeBSD.org

↓

 *default host=cvsup3.ja.FreeBSD.org

***make updateを使う方法 [#b1ba6cea]

/etc/make.confにパラメータを指定しておくと、上記のような修正作業は不要。この場合の、これより↓にあるcvsupコマンドを使わず、以下のように作業する。

 # cd /usr/src
 # make update

make.confにちゃんとport-supfileのことまで指定してあれば、上記のように/usr/srcで作業すれば/usr/portsまで更新してくれるらしい。あたまいいー。

**stableへの更新 [#tc66fb60]

要はOSを最新版へとアップデートする作業。RELEASEからSTABLEになる。

cvsupとstable-supfileを使ってソースコードをアップデートする。

 # cvsup -g -L 2 stable-supfile

その後は以下のように入力。

 # cd /usr/src
 # make clean
 # make buildworld
 # make buildkernel
 # make installkernel
 # reboot
(ここでシングルユーザーモードへ)

ここでシングルユーザーモードへ。shellの入力を求められるので/usr/local/bin/zshと入力(zshの場合)。

 # mount -a
 # cd /usr/src
 # make installworld

※FreeBSD6.1へのアップデートの場合、installkernelでエラーが出ることがある。この場合、/etc/groupにauditというグループを加えてやればよい。

-関連
--http://www.hirno.net/MT/archives/2006/05/stable_upgrade.html

この時点で/etcはまだ変更が反映されていないので、mergemasterを実行。

 # mergemaster -siva
 # mergemaster -sivr 

sivaで新規追加ファイルを確認無しでインストールするため作業量が軽減できる。mergemasterのコマンドは以下の通り。

-i 新バージョンのファイルをインストール(基本はコレ)
-d 旧バージョンのファイルを残す(passwdやhostsなど)
-m 新旧を比較してマージする(変更を加えた設定ファイル)
--l 左側を採用(古い方)
--r 右側を採用(新しい方)

バージョンが上がっているかどうかは以下のコマンドで確認できる。

% uname -a

***関連サイト [#r7abc0e6]

-FreeBSD-stable更新の方法(cvsupの使い方/"FreeBSD stable"で検索すると出る)
--http://www.mvs.co.jp/tech/cvsup.html
-OSを最新のRELEASEに更新する 
--http://iris.homeunix.net/yayoi/freebsd/inst/cvsuprelease.asp
-FreeBSD - How to update STABLE
--http://suken.jp/~tet/FreeBSD/cvsup.rhtml

**portsとportupgrade [#i954a4ae]

アプリケーションを簡単にインストールできちゃうシステム。ただしportsを最新にしとかないと古いアプリケーションがインストールされてしまう。portupgradeはその補助ツールであって最初にいれておくべきもの。portupgradeはRubyで書かれているのでrubyも最新にすべき、というか依存関係のおかげでまとめてインストールされる。

まず、cvsupとports-supfileを使ってportsツリーをアップデートする。

 # cvsup -g -L 2 ports-supfile

次に、portsを使ってportupgradeを導入。

 # cd /usr/ports/sysutils/portupgrade
 # make install clean

それからports ツリーのインデックスを更新。インストール直後はcommand not foundになることがあるので、その場合は再起動する。このコマンドは長時間かかるので根気よく待つ。

 # portsdb -uU

portupgradeの使い方。まずはアップデートが必要なものの一覧の出し方。出力結果で 『<』 となっているものは更新する必要があるもの。

 # portversion -O

アプリケーションのアップグレードは以下の通り。アプリケーション名は /var/db/pkg にあるものを指定するらしいが、portversionで表示されたアプリケーション名でも問題ないみたい。

 # portupgrade -cC apache

***fastest_cvsup [#f80cde66]

CVSupのサーバーで、自分から見て一番速いサーバーを見つけてくれるコマンド。インストール方法は以下。

 # portinstall sysutil/fastest_cvsup

コマンドの実行方法と、2006/09/22時点でのうちのサーバーの結果。

 % fastest_cvsup -c jp
 >>  Querying servers in countries: jp
 --> Connecting to cvsup.jp.freebsd.org [210.224.172.75]...
     - server replied: OK 17 0 SNAP_16_1h CVSup server ready
     - time taken: 3019.26 ms
 --> Connecting to cvsup2.jp.freebsd.org [203.216.196.85]...
     - server replied: OK 17 0 SNAP_16_1h CVSup server ready
     - time taken: 4.49 ms
 --> Connecting to cvsup3.jp.freebsd.org [210.188.224.44]...
     - server replied: OK 17 0 SNAP_16_1h CVSup server ready
     - time taken: 3.98 ms
 --> Connecting to cvsup4.jp.freebsd.org [133.1.44.1]...
     - server replied: OK 17 0 SNAP_16_1f CVSup server ready
     - time taken: 15.07 ms
 --> Connecting to cvsup5.jp.freebsd.org [210.161.150.4]...
     - server replied: OK 17 0 SNAP_16_1h CVSup server ready
     - time taken: 3007.17 ms
 --> Connecting to cvsup6.jp.freebsd.org [210.188.224.44]...
     - server replied: OK 17 0 SNAP_16_1h CVSup server ready
     - time taken: 4.18 ms
 
 >>  Speed Daemons:
     - 1st: cvsup3.jp.freebsd.org
     - 2nd: cvsup6.jp.freebsd.org
     - 3rd: cvsup2.jp.freebsd.org

-CVSupをより効率的にする(fastest_cvsup) 
--http://www9.plala.or.jp/sasakiss/freebsd/freebsd_cvsup7.html
-cvsupの設定
--http://iris.homeunix.net/yayoi/freebsd/setting/fastest_cvsup.asp

***その他関連サイト [#d913ca5b]

-システムのアップグレード(portsツリーの更新法/portupgradeのつかいかた)
--http://argon.bus.osaka-cu.ac.jp/index.php?%A5%B7%A5%B9%A5%C6%A5%E0%A4%CE%A5%A2%A5%C3%A5%D7%A5%C7%A1%BC%A5%C8
-ports の活用(上記サイトと同じだがやり方が多少違う)
--http://n.jpn.ph/flap/freebsd/ports.html
-FreeBSD(CVSUP)(ここもまたやり方が違う)
--http://cady.moon.st/freebsd/cvsup.html
-ports-jp : 11087(portupgradeの公式なアナウンス)
--http://home.jp.freebsd.org/cgi-bin/showmail/ports-jp/11087

**apache [#gd0af560]

インストールは以下の通り。

 # portinstall www/apache2

/etc/rc.confに以下のように指定する。

 apache2_enable="YES"

apacheの起動は以下のように指定する。

 # /usr/local/etc/rc.d/apache2.sh restart

もしくは

 # apachectl restart (start/stop)

アップグレードは以下の通り。

 # portupgrade -RcC apache

Rは依存関係にあるアプリケーションのアップグレード(これを指定しないと「依存関係にあるアプリが古いためアップグレードをやめました」と表示されアップグレードせずに終了することがある)、cCはコンパイル前後のclean。

***バーチャルホスト [#ecec0fc3]

http://www.atmarkit.co.jp/flinux/rensai/apache08/apache08a.html

http://httpd.apache.org/docs/2.0/ja/vhosts/name-based.html

***各種ファイルの配置 [#dee18043]

/usr/local/etc/apache2/httpd.conf

/usr/local/sbin/httpd -l

 Compiled in modules:
  core.c
  prefork.c
  http_core.c
  mod_so.c

***関連サイト [#sb7fa3bb]

-FreeBSD - apacheのインストール
--http://www.ksknet.net/freebsd/freebsd_apache.html

**ProFTPD [#u39a539d]

 # portinstall ftp/proftpd

設定画面では好きなのを選べるが、とりあえずはデフォルトで良いみたい。

***同時接続数を増やす [#u4c81af9]

proftpd.confのMaxClientsPerHostの数字を増やす。

-FTPサーバの構築(ProFTPD)
--http://www.aconus.com/~oyaji/ftp/proftpd.htm

***関連サイト [#mb960b71]

-ProFTPDをスタンドアローンで導入・設定するメモ [FreeBSD](fkimura.com)
--http://www.fkimura.com/ProFTPD3.html
-ProFTPD 
--http://www2h.biglobe.ne.jp/~hnakamur/technolab/freebsd/other/proftpd/proftpd.htm
-FTPサーバの構築(ProFTPD) PASVモードに詳しい
--http://www.aconus.com/~oyaji/ftp/proftpd.htm


**samba [#vd0bd22a]

portsからインストールした場合の設定ファイル:/usr/local/etc/smb.conf

再起動:/usr/local/etc/rc.d/samba.sh restart

-【FreeBSD 5.3】Samba 3.x + OpenLDAP による PDC の設定
--http://www.abk.nu/~nabe/document/samba3.htm#2
-SAMBA を動かしてファイルサーバ (FreeBSD) [fkimura.com] 
--http://www.fkimura.com/samba1.html
-sambaセッションの切断(ログアウト)の仕方
--http://blog.jojo.jp/?eid=738389

**emacs [#n3bc0c33]

-FreeBSD - Emacs
--http://suken.jp/~tet/FreeBSD/Emacs.rhtml

使い方などに関しては[[Emacs]]参照

**zsh [#c3f3a6bc]

***インストール方法 [#wf73cc94]

 # portinstall zsh+euc_hack

この下は各ユーザーで作業。

 % chsh -s /usr/local/bin/zsh

以下のコマンドで現在のシェルを確認できる。

 % echo $SHELL

インストールされているシェルの一覧は以下の通り。

 % less /etc/shells

***便利な機能 [#ke550c1f]

コマンドラインスタック機能を使って、今打ち込んだコマンドを一時的にスタックしてくれる。やりかたはESC-q。これで今打ち込んだコマンドが消えて新しいコマンドを入力でき、次にコマンドプロンプトが表示されるときに自動的に先ほどのコマンドが表示される。
:ESC-q|コマンドラインスタック機能を使って、今打ち込んだコマンドを一時的にスタックしてくれる。やりかたは。これで今打ち込んだコマンドが消えて新しいコマンドを入力でき、次にコマンドプロンプトが表示されるときに自動的に先ほどのコマンドが表示される。

Ctrl-rでインクリメンタルサーチモードへ入れる。繰り返しCtrl-rを押すとさらに検索結果をさかのぼれる。
:ESC-h|今打ち込んでるコマンドのmanページが見られる。manを終了すると打ち込んでる途中の状態に復帰する。

:Ctrl-r|でインクリメンタルサーチモードへ入れる。繰り返しCtrl-rを押すとさらに検索結果をさかのぼれる。

プロンプトに色を付けるには以下の通り。.zshrcに書いておくと良い。

 % autoload -U colors
 % colors

***関連サイト [#ff01b8b5]

-zshのある暮らし
--http://www.ex-machina.jp/zsh/
-tips for zsh -- zshの覚書
--http://www.ayu.ics.keio.ac.jp/~mukai/tips/zsh.html
-UNIX 今日の技/zsh
--http://q-eng.imat.eng.osaka-cu.ac.jp/~ippei/unix/zsh.html

**screen [#p2e5655d]

インストール方法は以下の通り。

 # portinstall screen

Ctrl-aが標準のキーバインドになっているが、これはemacs等で使用しているので変更した方がよい。自分の場合はCtrl-zにしている(Ctrl-tにしているサイトが多いけど、zの方が指が近くて押しやすい)。この場合は.screenrcに以下のように記述する。
使い方などに関しては[[Screen]]参照

 defencoding eucJP
 escape ^z^z
**webalizer [#je9d8faa]

新しい仮想画面の生成
 portinstall www/webalizer
 portinstall japanese/webalizer

 ^z c
設定ファイルは/usr/local/etc/jawebalizer-dist。これをwebalizer.confにして、内容を編集する。実行方法は以下の通り。

仮想画面の切り替え
 webalizer -o (出力先) (解析するログの位置)

 ^z [SPACE] / ^z n / ^z [DEL] / ^z p
**crontab [#eaa360f2]

仮想画面のウインドウ名変更(Aは大文字のA→Shift + a)
-UNIXの部屋 検索:crontab
--http://x68000.q-e-d.net/~68user/unix/pickup?crontab

 ^z A

仮想画面の一覧表示

 ^z w

仮想画面を一時的に保存して閉じる場合(screenを抜ける)

 ^t d

保存されているscreenの一覧表示

 % screen -ls

閉じてしまったscreenの復活

 % screen -r

画面分割

 ^z S

分割した画面同士の移動

 ^z [Tab]

***関連サイト [#y285104d]

-Let's use SCREEN!
--http://www.dekaino.net/screen/
-tips for screen -- screenの覚書
--http://www.ayu.ics.keio.ac.jp/~mukai/tips/screen.html

**日本語ファイル名の取り扱い [#td7ab9f1]

***lsで日本語ファイル名が「??」と表示される場合 [#u5724181]

lsは標準では日本語ファイル名を表示しない(「できない」ではなく「しない」)ように設定されている。ls -wもしくはls | catで正しく表示されるはず。これはaliasに設定しておくとよい。jlsをインストールし、aliasでlsとして動くよう設定する方法もある(おそらくこっちの方が安全)。

***ftpdと日本語ファイル名 [#l4b055af]

ftpdは日本語のファイル名を変換したりなんかはしないので、FFFTP等から日本語ファイル名のファイルをアップロードするとそのファイル名はShift_JISになる。この場合、コンソールからはls | nkfとすることで正しく表示ができる。

***sambaと日本語ファイル名 [#ibfde88b]

sambaのバージョンは3.0系として話を進める。

 dos charset = CP932
 unix charset = EUCJP-MS
 display charset = CP932

以上のような設定にした場合、Windowsから日本語ファイル名の読み書きは問題なく行われるし、BSD上でもファイル名はEUC-JPになっている。unix charsetをEUC-JPにしても同様のようだ。

この場合、BSD上に存在するShift_JISのファイル名が含まれるディレクトリをWindowsから見ようとすると、sambaが無理矢理EUC→Shift_JIS変換をかけて表示しようとするため、文字化けが発生する。具体的にはFTPでアップロードしたファイルなどがこれに該当する。

これの解決案は、

+ftpd側でEUC←→Shift_JISの変換が実装されるのを待つ
+samba側でShift_JISファイル名ならファイル名変換しないという実装がされるのを待つ
+FFFTP利用者にEUCでアップロードするよう設定を変えて貰う

のどれか。2と3はあまり現実的ではないので1の方法を用いる。具体的には、ProFTPDにiconv()を用いて文字コード変換機能を付け足すパッチを適用します。これで、鯖上ではEUCなファイル名で保存され、FTPクライアント側ではShift_JISで表示されます。完璧じゃまいか!

http://www.hakusan.tsg.ne.jp/tjkawa/software/misc/proftpd-iconv/index.jsp

**MRTG [#ze14301a]

-@IT:MRTGによるサーバ監視システムの構築(1/3)
--http://www.atmarkit.co.jp/flinux/rensai/root08/root08a.html

-ごった煮 - FreeBSD導入記(覚え書き) - MRTGの導入・利用
--http://park1.wakwak.com/~ima/freebsd_mrtg.html
--CPU/メモリの表示はここを参考にした

**その他 [#b47fd53e]
**xorg [#k761cb7b]

パスワードを間違えた時はバックスペースをいっぱい押さないでもCtrl-uでやり直しできる。
Xorgインストール完了後の手順

Top以外でシステム情報を見る方法
-swapに関する情報→swapinfo
-ユーザに関する情報→w
-uptimeとloadaverageを見たいとき→uptime
-ユーザのログイン情報→last
 # Xorg -configure

***関連サイト [#s10b065c]
→xf860OpenConsole: KDSETMODE KD_GRAPHICS failedと表示される

http://mxpj.net/item/1650/catid/14

カーネルを新しくすれば直るらしい……。

**subversion [#b0e0af41]

***インストール [#r74747e5]

 # portinstall devel/subversion

***とりあえずダウンロードしたいとき [#i7d233a8]

:% svn checkout (trunkのURL)|まるごとDLができる。
:% svn update|checkoutしたやつを最新版にする(差分を落としてくる)
:% svn commit|ローカルで変更したファイルをサーバーにうp(やったことない)
:% svn status|サーバーとローカルの違いを表示(ファイル一覧)
:% svn diff|サーバーとローカルの違いを表示(具体的にファイルの中身まで)

commit、status、diffはファイル名指定も可能。

**gnome [#k54fdd1d]

http://sakura.take-labo.jp/freebsd/x11_gnome2.html

.xinitrcのtwm &以下をコメントアウトし、

 exec gnome-session

を追記する。

**cpan [#d7c08842]

:# cpan -i hoge::fuga|インストール
:# perl -MCPAN -e 'CPAN::Shell->r'|古くなったモジュール一覧
:# perl -MCPAN -e 'CPAN::Shell->install(CPAN::Shell->r)'|古くなったモジュールを一括アップデート

***関連 [#x15426bb]

-cpan最速search
--http://cpan.ma.la/

-古いCPANモジュール(Perlモジュール)のアップデート方法 : Project MultiBurst
--http://www.multiburst.net/project-multiburst/archives/2006/06/19/2245.php

**Plagger [#a0d90966]

***インストール [#a52cbdd2]

 # portinstall textproc/p5-Plagger

**convmv [#oa37ffd6]

ファイル名の文字コードを変換する。
-ProFTPd+FFFTPの組み合わせで作られたShift_JISのファイルを変換しようとするとうまくいかない。特にUTF8にすると--no-testが付いて無くてもファイル名を破壊するので注意。必ずバックアップを取ること。

***関連サイト [#f267de85]

-http://www.geocities.jp/code_air_edge/HP/convmv.html
-http://q.hatena.ne.jp/1201009510

**HDD増設 [#wb955924]

-http://nhh.mo-blog.jp/ttt/2006/01/vmware_freebsd_8f58.html

**HDD情報取得 [#v6bf4653]

 karia@momoist[3]% sudo atacontrol list                            ~:14868 21:19
 Password:
 ATA channel 0:
     Master: acd0 <LITE-ON CD-ROM LTN-4891S/NDS3> ATA/ATAPI revision 7
     Slave:       no device present
 ATA channel 1:
     Master:      no device present
     Slave:       no device present
 ATA channel 2:
     Master:  ad4 <WDC WD800JD-75MSA2/10.01E03> Serial ATA II
     Slave:   ad5 <ST3320620AS/3.AAJ> Serial ATA v1.0
 ATA channel 3:
     Master:  ad6 <ST31500341AS/CC1H> Serial ATA II
     Slave:   ad7 <ST31000340AS/SD15> Serial ATA II
 karia@momoist[3]% sudo atacontrol cap ad7                         ~:14869 21:19
 
 Protocol              Serial ATA II
 device model          ST31000340AS
 serial number         9QJ1SM07
 firmware revision     SD15
 cylinders             16383
 heads                 16
 sectors/track         63
 lba supported         268435455 sectors
 lba48 supported       1953525168 sectors
 dma supported
 overlap not supported
 
 Feature                      Support  Enable    Value           Vendor
 write cache                    yes      yes
 read ahead                     yes      yes
 Native Command Queuing (NCQ)   yes       -      31/0x1F
 Tagged Command Queuing (TCQ)   no       no      31/0x1F
 SMART                          yes      yes
 microcode download             yes      yes
 security                       yes      no
 power management               yes      yes
 advanced power management      no       no      65278/0xFEFE
 automatic acoustic management  no       no      0/0x00  254/0xFE
 karia@momoist[3]%  

参考:
http://www.sssg.org/blogs/naoya/archives/tag/linux-freebsd-hdd

***HDD上の不良セクタをさがす [#t996ecf2]

ddで全セクタ読み出し。

-【FreeBSD】HDD上の不良セクタを検出する
--http://www.kishiro.com/FreeBSD/hdd_check.html

**関連サイト [#s10b065c]

-FreeBSD 関連のコンテンツ の文書一覧
--http://www.alib.jp/FreeBSD/toc
-便利なコマンド集
--http://www.chichibu.ne.jp/~kawahira/library/fbsd_how.htm
-文蔵のFreeBSD研究室 ネットワークアプリ
--http://freebsd.goman.net/net.htm


リロード   新規 下位ページ作成 編集 凍結 差分 添付 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS