*FreeBSDインストール備忘録 [#tbbc4086]

-[[Computer/FreeBSD/java]](java/servlet関連)
-[[Computer/FreeBSD/DB]](MySQL関連)
-[[Computer/FreeBSD/command]](コマンド備忘録)
#contents

関連:[[Computer/UNIX]] / [[Computer/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
(ここでシングルユーザーモードへ)
 # 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

***普段のアップデート作業 [#ef3c12de]

 # cd /usr/share/examples/cvsup/
 # cvsup -g -L 2 ports-supfile
 # portsdb -uU

***その他関連サイト [#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

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

***関連サイト [#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

**emacs [#n3bc0c33]

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

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

**zsh [#c3f3a6bc]

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

 # portinstall zsh+euc_hack

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

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

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

 % echo $SHELL

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

 % less /etc/shells

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

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

: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

使い方などに関しては[[Computer/Screen]]参照

**webalizer [#je9d8faa]

 portinstall www/webalizer
 portinstall japanese/webalizer

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

 webalizer -o (出力先) (解析するログの位置)

**crontab [#eaa360f2]

-UNIXの部屋 検索:crontab
--http://x68000.q-e-d.net/~68user/unix/pickup?crontab

**日本語ファイル名の取り扱い [#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/メモリの表示はここを参考にした

**ユーザ追加 [#o06ce82c]

adduserコマンド

**netstatコマンド [#y0bae8da]

http://x68000.q-e-d.net/~68user/unix/pickup?netstat

-"-n" IPアドレスで表示(名前解決しない)
-"-a" すべてを表示(LISTENのみのポートとかも表示)
-"-W" ワイド表示(ホスト名とか省略しない)
-"-f inet" inetのみ表示(UNIXdomainを表示しない)

**その他 [#b47fd53e]

パスワードを間違えた時はバックスペースをいっぱい押さないでもCtrl-uでやり直しできる。

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

***関連サイト [#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