2009年11月28日土曜日

激安PC:GA-G31M-ES2L+Celeron Dual-Core E3200BOX

激安PC:GA-G31M-ES2L+Celeron Dual-Core E3200BOX を買ってみた。

最近Ubuntuなどをいじってみたり、常時稼動のXPをインストールしてみたり。
そんなにパワーはいらないんだけど、消費電力は抑えたい冷え冷えマシンが必要になった時、
安くて安定して使えるパソコン…マザーボードとCPUの組み合わせを考えます。

今回、UbuntuやFreeBSDでのXWindowでの動作のことを考えてIntel系のCPUとチップセットの構成で考えてみました。というのも、AMDのマザーボードではディスプレイドライバがちゃんと対応しておらず、画面が小さく表示されたりして不便なんです。手元のGeodeNXなマシンではFreeBSD7.2もインストールできませんでした(>_< イヤー


M/B GIGABYTE GA-G31M-ES2L 5400円
CPU Intel Celeron Dual-Core E3200BOX 4100円
メモリ DDR2 2G 3400円
ハードディスクやケースなどは古いものを流用
合計 約13000円 (^o^安い~


マザーボードは現時点でのほぼ1年前、2008年12月5日発売のものです。
特にUNIX系であまり新しいマザーボードを購入すると、チップセット等のドライバがまだできておらず、インストールに手間取ることが多いのであえて古いこなれたものがお勧めです。

とりあえずまずXPを入れてみた。なかなか、冷え冷え(^-^


と思いきや、XPの挙動がおかしい。
10時間ほどすると、勝手に再起動しているらしい。
最初はさして気にもしていなかったけど、そのうち再起動の頻度が激しくなり、
1時間ほどで再起動するようになった。
さらに間隔が短くなり、最後には電源ボタンを押しても起動しなくなった。

メモリを交換し
電源を買ってきて交換し(>_<
マザーボードを買ってきて交換し。。。。なおった!

と言う事で原因を究明するまでにかかった時間2ヶ月。
あーあ。

時間がかかりすぎたのでマザーボードは修理扱い。入院です。


買ってきたマザーボード何に使おうかしら(爆笑)


2010/03/10
マザーボードが退院してきた。
入院中に、ふと地デジのダブル録画ができるパソコンが欲しくなり、
マザーボードをさらに注文。
が、そのまま何もせずに両方放置。。。。あぁ。もったいない。

.

2009年9月8日火曜日

PICマイコン比較一覧表 秋月電子通商販売分

 価格
秋月
人気PIN電源ClockProgram
Memory
Data
Memory
Flash
Memory
I/OA/D
(port/bit)
コンパ
レータ
TIMER
Counter
I2CUSBSerial…
                
12F509-I/P601382.0-5.52010244106/5--8   
12F615-I/P1002082.0-5.52010246406/54/1018,8,16   
12F629-I/P120182.0-5.5201024641286-18,16   
12F675-I/P140382.0-5.520102464064/1018,16   
12F683-I/P1801082.0-5.520204812825664/1018,8,16   
                
                
                
16F627A-I/P16019スリム3.0-5.520102422412816-28,8,16   
16F628A-I/P1605183.0-5.520204822412816-28,8,16   
16F648A-I/P2007スリム3.0-5.520409625625616-28,8,16   
16F676-I/P14021スリム2.0-5.520102464128128/1018,16   
16F690-I/P21017スリム2.0-5.52040962562561812/1028,8,16  SSP,ECCP+,EUSART
16F716-I/P11022スリム2.0-5.52020481280134/8     
16F74-I/P500   204096192 33      
16F818-I/P200 18            
16F819-I/P1809スリム 202048256256       
16F84A-20/P2502182.0-5.5201024686413  8   
16F873-20/SP600 28 204096192128       
16F873A-I/P4001228 204096192128225/102 1 USART
16F874-20/P600 40 204096192128       
16F874A-I/P700 40 204096182128338/102 1 USART
16F876-20/SP5001628Slim4.0-5.5208192368256       
16F876A-I/SP500 28Slim4.0-5.5208192368256225/102 1 USART
16F877-20/P5001440 208192368256       
16F877A-I/P3008404.0-5.5208192368256338/102 10USART
16F88-I/P2004182.0-5.5204096368256161/102 10AUSART
16F883-I/SP220  2.0-5.5 41922562562411/1028,8,16  ECCP,CCP,EUSART,MSSP
16F886-I/SP190  2.0-5.52081923682562411/1028,8,16  ECCP,CCP,EUSART,MSSP
16F887-I/P20011402.0-5.52081923682563511/1028,8,16  ECCP,CCP,EUSART,MSSP
                
                
18F1320-I/P400 スリム 408192256256167/100 00EUSART
18F2320-I/SP500 スリム 2540965122562510/102 10MSSP,USART
18F2450-I/SP450 スリム 48163847682562313/100 01MSSP,USART
18F2455-I/SP600 スリム 481228820482562410/102 11MSSP,USART
18F2550-I/SP40015スリム 483276820482562410/102 11MSSP,EAUSART
18F452-I/P60018スリム 40327681536256348/10     
                
18F8720               

2009年8月15日土曜日

FreeBSD7/FreeBSD6 Apache2.2 ForwardProxyのインストール(install)設定

この記事は
FreeBSD7.1
FreeBSD6.2
Apache2.2/Portsインストール版
Apache2.2/tarballインストール版
フォワードプロキシー/プロクシ(Foword Proxy)のインストール
について書かれています

■Apache2.2のフォワードプロキシーのインストール方法・設定方法
PortsインストールされたApache2.2

現在ではmod_proxyは最初からインストールされていないようなので、
自分で追加しなければなりません。

#cd /usr/ports/www/apache22/
#make deinstall
#make clean
#make config

[X] PROXY Enable mod_proxy
[X] PROXY_FTP Enable mod_proxy_ftp
[X] PROXY_HTTP Enable mod_proxy_http

#make install

プロキシのポート番号に8080を使うとき
[httpd.conf]
------------------------
Listen 8080

LoadModule proxy_module libexec/apache22/mod_proxy.so
LoadModule proxy_http_module libexec/apache22/mod_proxy_http.so
LoadModule proxy_ftp_module libexec/apache22/mod_proxy_ftp.so

ProxyRequests on
ProxyVia on

<Proxy * >
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.168.0.0/24
</Proxy>
------------------------
デフォルトではポート番号に80を使います。


■Apache2.2のフォワードプロキシーのインストール方法・設定方法
tarballでインストールされたApache2.2


Apache2の現在のビルトインモジュールの確認
# /usr/local/apache2/bin/httpd -l
[21:23:21 root ~]# /usr/local/apache2/bin/httpd -l
Compiled in modules:
core.c
mod_authn_file.c
mod_authn_default.c
mod_authz_host.c
mod_authz_groupfile.c
mod_authz_user.c
mod_authz_default.c
mod_auth_basic.c
mod_include.c
mod_filter.c
mod_log_config.c
mod_env.c
mod_setenvif.c
prefork.c
http_core.c
mod_mime.c
mod_status.c
mod_autoindex.c
mod_asis.c
mod_cgi.c
mod_negotiation.c
mod_dir.c
mod_actions.c
mod_userdir.c
mod_alias.c
mod_so.c


apacheのコンパイルオプションの確認

以前のコンパイルしたソース中のconfig.niceを参照する
[config.nice]
#! /bin/sh
#
# Created by configure

"./configure" \
"--enable-so" \
"$@"

apache1.3系なら config.status です

ソースがなければ
#cd /usr/local/apache2/bin
#httpd -V
Server version: Apache/2.2.4 (Unix)
Server built: Aug 3 2007 22:33:04
Server's Module Magic Number: 20051115:4
Server loaded: APR 1.2.8, APR-Util 1.2.8
Compiled using: APR 1.2.8, APR-Util 1.2.8
Architecture: 32-bit
Server MPM: Prefork
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/prefork"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_FLOCK_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT="/usr/local/apache2"
-D SUEXEC_BIN="/usr/local/apache2/bin/suexec"
-D DEFAULT_PIDLOG="logs/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_LOCKFILE="logs/accept.lock"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"

で確認できます。が、あまり参考にならない。。。


#./configure --enable-so --enable-proxy --enable-proxy-http
#make
#make install

コンパイル結果の確認

#/usr/local/apache2/bin/httpd -l
Compiled in modules:
core.c
mod_authn_file.c
mod_authn_default.c
mod_authz_host.c
mod_authz_groupfile.c
mod_authz_user.c
mod_authz_default.c
mod_auth_basic.c
mod_include.c
mod_filter.c
mod_log_config.c
mod_env.c
mod_setenvif.c
mod_version.c
mod_proxy.c
mod_proxy_connect.c
mod_proxy_ftp.c
mod_proxy_http.c
mod_proxy_ajp.c
mod_proxy_balancer.c
prefork.c
http_core.c
mod_mime.c
mod_status.c
mod_autoindex.c
mod_asis.c
mod_cgi.c
mod_negotiation.c
mod_dir.c
mod_actions.c
mod_userdir.c
mod_alias.c
mod_so.c


mod_proxy
mod_proxy_http
が追加されていればOKです。

続いてhttpd.confを編集します。

[httpd.conf]
------------------------
Listen 8080

 :

ProxyRequests on
ProxyVia on

<Proxy *>
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.168.0.0/24
</Proxy>
------------------------

Allow from <接続を許可するクライアントのIPアドレス>
を記述します。
設定を間違えると誰でもこのProxyをつかえるようになり危険です。

tarballからインストールしたこのバージョンでは、
ビルトインモジュールとしてコンパイルされるため
LoadModuleディレクティブは不要です。

■その他覚書

Apache2.2.4ではmod_proxyはconfigureしても追加されませんでした。
Apache2.2.13にバージョンアップしてところ正常にmod_proxyが追加されました。

.

2009年8月4日火曜日

ディスプレイのカラー調整

私のPCのディスプレイは、液晶ディスプレイ3台のマルチディスプレイ構成で使っています。
友人や職場の人にこの話をしても何が便利なのかとよく聞かれます。
でもやっぱり使い始めると手放せない構成です。
何が便利なのか。。。
プログラムをするにしてもサーバーを管理するにしても、ネットで何かPCパーツを探すにしても、資料表示用画面、作業用画面、作業結果画面、すべてが見えた状態で作業をするととても効率がいいのです。

プログラムの開発なら、
左の液晶ディスプレイにRubyのプログラム言語のマニュアルとネットで検索してきたサンプルコード、
真中の液晶ディスプレイにエディタとサーバーにつないでいるシェル画面
右側の液晶ディスプレイにインターネットエクスプローラーでその結果を表示する

用途ごとに画面を分けて表示できるので、マルチディスプレイにすることでウィンドウを探したり、並べ替えたりといった煩雑だった作業から一度に開放されます。


まあ。それはさておき、
ディスプレイが複数あると、色あわせをしなければなんともみっともないことになります。
そこで、ディスプレイの調整をするのですが、これが意外と難しい。
液晶だと画面を見ている角度が少し変わっただけで色味が変わる。椅子にまっすぐ座るかもたれかかって座るかでも青みがかかったり、黄色がかったりするので、厳密な調整はできません。

明るさ、コントラストの調整から色の調整まで行わなければなりませんが、この調整用データーからして探しにくい。大雑把な調整用パターンはあるのですが、もっと細かい調整用パターンがほしい。

ということでで自分で作ってみました。


■コントラスト・明るさ調整用パターン
すべての階調がつぶれないように調整します。
クリックすると拡大されます。

PNG画像




■色調整
PNG画像

2009年7月9日木曜日

docomo FOMA L-02A L-05A FOMAが見つかりません FOMA未接続です

『FOMAが見つかりません』を解決するには
症状:再起動時docomo FOMA L-02Aを認識しない
症状:再起動時docomo FOMA L-02Bを認識しない(多分。。。)
症状:再起動時docomo FOMA L-05Aを認識しない(同じ症状が出るようです)
WindowsXP
WindowsVista/Windows7
ドコモコネクションマネージャ
L-02A接続ソフト L-05A接続ソフト
について書かれています よく起こる現象です

■FOMA端末 パソコンを再起動すると認識しない なんで?
知り合いのパソコン、FOMAの携帯端末でインターネットがどこでもできるmopera(モペラ)端末を設定したいとの事。聞けば、再起動するとFOMA端末を認識しなくなるらしい。

そうなるとタスクバーのドコモコネクションマネージャが
[ドコモコネクションマネージャ:FOMA未接続です。]
と表示し、ドコモコネクションマネージャを開いても
[FOMAが見つかりません]
と表示し、インターネットにつながらなくなる。
ドコモコネクションマネージャ:FOMA未接続です。
FOMAが見つかりません
マイコンピューターを開くと
L-02AがCDドライブとして認識されたままになっている。
本来自動認識して自動的にCDドライブモードからモデムモードへ変更されなければならないが、うまくいかないことがあるらしい。
FOMA CD MODE DOCOMO

自動再生の選択画面が出れば、『常に自動再生』とすればこの問題は回避できるようになるんだけど、ウイルスの入ったCDをもらったときでも、ウイルスがパソコンに自動インストールされてしまうので、あまり自動再生はしたくないものです。

そこで、いろいろ試してみた結果、マイコンピューターのDOCOMOを[開き]
Launcher.exeを実行することでモデムモードに遷移するみたいなので、これをパソコン起動時に自動実行するようにスタートアップに登録してみましょう。

●ドライブレターの変更
他のメディアが接続されてドライブレターが変更されても都合がわるいので、あらかじめ後ろの方に移動しておきます。
(1)[スタート][マイコンピューター]右クリック[管理]


(2)(ここではFOMAがGドライブとして認識されていると仮定して説明しています)
[コンピューターの管理]が起動する
左側のツリー表示の中から[ディスクの管理]をクリック


この画面では、下の部分に表示されている、[◎ CD-ROM1]とかなっているところを右クリック
[ドライブ文字とパスの変更]をクリック
(3)[G:]と表示されているのを確認し
[変更]をクリック
[G]となっているところを変更し[M]に変える
(もしMがなければ他のドライブ名に変えてもOKです。その場合、M以降のようなアルファベットの方が今後接続されるかもしれないメモリカードリーダー等の影響を受けなくていいと思います。以降の説明も適宜読み替えてください)
(4)[OK]
Windowsを再起動します

ここで、ドライブの変更をを[DOCOMO(G:)]となっているところを右クリックして変更した場合、再起動した時にまた元に戻ってしまうことがありますので、注意が必要です。


●スタートアップにLauncher.exeを登録する
実際にFOMA端末を自動認識させるためにスタートアップへ登録します。
(5)[スタート][マイコンピュータ]を開きます
(6)[DOCOMO(M:)]を右クリック[開く]をクリックします
(7)[Launcher.exe]を右クリック[送る][デスクトップ(ショートカットを作成)]をクリックします
(8)開いているウィンドウをすべて閉じ、デスクトップが見えるようにします。
(9)デスクトップの[Launcher.exeへのショートカット]を探し右クリック[コピー]をクリックします
(10)[スタート][すべてのプログラム][スタートアップ]を右クリックし[開く-AllUsers]をクリック

(11)[スタートアップ]が開く
そのタイトルのすぐ下のメニューから[編集][貼り付け]をクリックします。


これで終わりです。

Windowsを再起動すると自動的にFOMA端末が認識されるはずです。


スタートアップに登録するよりもレジストリに登録して自動実行させる方法もありますが、メディアの自動認識はWindowsの起動処理の最後のほうになるみたいので、あえてスタートアップで自動実行させるようにしてみました。
説明文が冗長ですが、ドラッグアンドドロップでスタートアップに移動させる説明が難しいのと、初心者の方でもこの操作ができるように解りやすく書いたつもりです。

この方法でDocomo F-02Aが自動認識され、ドコモコネクションマネージャでもFOMA端末をすぐに見つけてくれるようになりました。

いたって順調です。

■おまけ
moperaの設定ウィザーをを終わった後で再び表示するには次のサイトを表示します。
モペラ端末よりつぎのページを表示します。

初期設定URL : http://start.mopera.net/
設定変更URL : http://www.mopera.net/customize/

IDパスワードは必要ですが、他のPCからアクセスしても表示できます。

.

2009年6月23日火曜日

CPUコア 消費電力(TDP)比較 ATOM Corei7 Core2 Athlon64X2

サーバー構築/CPU選定
ATOM
Corei7
Core2 Duo Quad
Athlon X2
Athlon64 X2
------------------

自宅サーバーを作るのに、壊れにくい構成、24時間365日稼動なので電気代
も馬鹿にならないことを考えると省電力なマシンを作りたいものです。

特に発熱量の増大は、

①電解コンデンサの水の蒸発に起因する容量の低下により発生する動作の不安定化
②冷却ファンの回転数増大によるファンモーターの短命化
③埃が入ることで起こる冷却不良により熱暴走を起こし破損

といった大きな破壊要因になります。

また消費電力は、マシンが数百ワットにもなるとその電気代も馬鹿になりません。

たとえば400Wの高速マシンを24時間稼動しているとします。

400W x 24h x 365day = 3504000Wh = 3504kWh
3504kWh x 17.87円 = 62516.48円
(東京電力 従量電灯B契約 月120kWh以下の時 2009/6/23現在)

年間60000円となります。月5000円と考えると、
電気代だけで高速なレンタルサーバーを借りられるぐらいになります。
あまりにももったいない。

そこで、費用対効果を考えると省電力なサーバーが必要と私は考えます。

Intel ATOM 330 TDP 8W

がよさそうです。
デュアルコア、HyperThredingを使うと4プロセッサ相当になります。

早速
intel D945GCLF2 を買ってきて
XPを入れてみたところ、なかなか早い。。。

FreeBSDを入れるとどうなるでしょう。

-------------------------------
CPU別 消費電力(TDP)比較 おすすめCPUはどれだ?
 
Core i7 TDP 130W

Core2Quad Q6700 95W
Core2Quad Q6600 105W
Core2Quad Q9550 95W
Core2Quad Q9550s 65W
Core2Duo E6700 65W

AthronX2 5050e 45W


ATOM N280 TDP 2.5W
ATOM N270 TDP 2.5W
ATOM 230 TDP 4W
ATOM 330 TDP 8W

GeodeNX1750 14W
GeodeNX1500 6W
GeodeNX1250 6W

2009年6月12日金曜日

FreeBSD RTSP/RTP サーバーのインストール

[現在書きかけの文章です]

FreeBSD7.1
RTPS/RTP サーバー調査

FreeBSDで使えるRTPサーバーを調べる。


サーバー
Real Networks RealServer
Real Networks RealServerG2

これが、今は

HELIX SERVER v12

となっているらしい。
対応プラットフォームは、
Windows2003,Linux,Solaris(ネイティブ)

価格が
Helix Server 25 33万円~
Helix Server 100 82万円~
Helix Server Unlimited 214万円~

ありゃ。
趣味程度では使えませんねぇ。
30日間の無料トライアル版はあるらしい。


どちらにしてもFreeBSDは非対応か。。。

Real Media Servers


他はないのかな?

2009年4月29日水曜日

Realtek HD(High Definition) Audio モノラル音声がならない

WindowsXP
Realtek HD(High Definition) Audio
M2A-VM HDMI
M2A-VM
リアパネルLineOut出力 スピーカー2CH 
-----------
音が変なんです。
ニュース動画を見たりすると、ナレーションがこもっているような、お風呂場のように反響しているというか、水槽の中でしゃべっていると表現するのか、はたまたファミコンゲームの音みたいピコポコ音が重なっていると表現するのかうまく言い表しにくいのですが、サウンドデバイス上での話ならイコライザが利いているのかエフェクトが利いているのか、なんかそんな変な音がするのです。かといって、イコライザもエフェクトもすべてOFFにしているのですが全く改善しません。

ネット上でも同じ症状ではまっている人がいるようなのですが、さして気にしていない人もいますし、他のUSB接続の外付けスピーカーをつないだりして使っているようで、有用な解決方法がまったく見つかりません。

当然、最新ドライバにもしてみたのですが、いまだ解決策が見えません。
XPも再インストールしていますし、M2A-VMでもM2A-VM HDMIでもまったく同じ症状で、当然スピーカーを交換しても同じ症状。


ふと、音の定位がセンターぴったりに来ていると音が極端に小さくなっていることに気がつき、テスト用音声データを作って見るとやはりセンターに定位する音は全く鳴らないようです。


Realtek HD(High Definition) Audioを使っている人、この音声再生できますか?

音がやや大きいのでボリュームに気をつけてください。
[WAV]左右に音源が移動する
正常:同じ音量で音源が左右に移動する
異常:音源が中心から移動せず音量が上がったり無音になる

[WAV]Windows XP Startup モノラル音声
正常:Windows XP の起動時の音声が流れる
異常:何もならない 無音

『異常』に相当する方、他のPCで上記音声を再生してみてください。ちゃんと再生できるはずです。

きっとこれはRealtekのバグなんでしょうねぇ。


[2010.4.6 追記]

その後、勝手にこの症状が治っていました。
たぶんWindowsUpdateで治ったようなので、この症状が出ている人は、一度WindowsUpdateを完全にやってみてください。


.

2009年4月18日土曜日

FreeBSD7 JDK1.6インストール Java JDK1.6.0.3p4_10

FreeBSD 7.1/i386
----------------------------
Pentium2/400MHz
Memory 192M
コンパイル・インストール約8-10時間
----------------------------
■jdk1.6インストール けっこう面倒くさい(>_<"

javaをコンパイル実行するためにはjdkをインストールします。
しかしながら、javaのライセンス許諾のためにportsからのmake installだけではインストールできず、Sun Microsystemsより指定されたファイルをライセンス許諾した後で手動でダウンロードしなければなりません。
また、FreeBSD用のパッチも必要でこれも手動でライセンス許諾とダウンロードが必要です。

あと、コンパイルには
●2.5GByteの空きハードディスク領域(#duで確認)
●768MByte以上のスワップ領域(#pstat -sで確認)
が必要です。
私の場合、スワップ領域が足りずにコンパイル途中で止まってしまいました。

■自分でダウンロードするもの
ダウンロードに必要なファイルはコンパイル中に表示されますので、その文章中にあるファイルをダウンロードしてください。バージョンが代わればダウンロードするものもかわりますので以下の記載のままとは限りません。
ダウンロードしたファイルは
/usr/ports/distfiles/
に保存します。

●http://www.java.net/ より fetch でダウンロード
    jdk-6u3-fcs-bin-b05-jrl-24_sep_2007.jar
    jdk-6u3-fcs-mozilla_headers-b05-unix-24_sep_2007.jar
    jdk-6u3-fcs-src-b05-jrl-24_sep_2007.jar
●http://java.sun.com/ より ブラウザを使ってダウンロード
    tzupdater-1_3_12-2009a.zip

●http://www.FreeBSDFoundation.org/ より ブラウザでダウンロード
    
diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2

●http://www.eyesbeyond.com/freebsddom/java/jdk16.html
 より ブラウザでダウンロード
    bsd-jdk16-patches-4.tar.bz2

後はmake install でインストールされます。

■jdk1.6インストール手順 実録(笑)
実際にmake install してみて、そのメッセージにしたがって必要なファイルをダウンロードしてきます。


#cd /usr/ports/java/jdk16
#make install
lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x Options for jdk 1.6.0.3p4_10 x
x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x
x x [ ] DEBUG Enable debugging support x x
x x [ ] IPV6 Enable IPv6 support x x
x x [ ] WEB Enable the browser plugin and Java Web Start x x
x x [ ] POLICY Install the Unlimited Strength Policy Files x x
x x [X] TZUPDATE Update the time zone data x x
x x [ ] JAIL Port is being built within a jail x x
tqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqjqu
x [ OK ] Cancel x
mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj
IMPORTANT: To build the JDK 1.6.0 port, you should have at least
2.5Gb of free disk space in the build area!


Due to licensing restrictions, certain files must be fetched manually.

Please download the Update 3 Source from
http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-src-b05-jrl-24_sep_2007.jar
and the Source Binaries from
http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-bin-b05-jrl-24_sep_2007.jar
and the Mozilla Headers from
http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-mozilla_headers-b05-unix-24_sep_2007.jar
.

Please open http://java.sun.com/javase/downloads/index.jsp
in a web browser and follow the "Download" link for
"JDK US DST Timezone Update Tool - 1_3_12" to obtain the
time zone update file, tzupdater-1_3_12-2009a.zip.

Please download the patchset, bsd-jdk16-patches-4.tar.bz2, from
http://www.eyesbeyond.com/freebsddom/java/jdk16.html.

Please place the downloaded file(s) in /usr/ports/distfiles
and restart the build.

*** Error code 1

Stop in /usr/ports/java/jdk16.
*** Error code 1

Stop in /usr/ports/java/jdk16.


てなことで、Sun Microsystemsよりファイルをダウンロードしてきなさいといわれましたのでlynxあたりでダウンロードを試みます。
lynxは先にインストールしておいてください。
    #cd /usr/ports/www/lynx
    #make install clean


#cd /usr/ports/distfiles
#fetch http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-src-b05-jrl-24_sep_2007.jar
#fetch http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-bin-b05-jrl-24_sep_2007.jar
# fetch http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-mozilla_headers-b05-unix-24_sep_2007.jar
# lynx http://java.sun.com/javase/downloads/index.jsp


JDK DST Timezone Update Tool - 1.3.12

The tzupdater tool is provided to allow the updating of installed JDK/JRE images with more recent
timezone data in order to accommodate the latest timezone changes. Learn more

Download<<-ここを[Enter]



Register Now[Enter]
必要事項(required)を記入し
submit[Enter]

IDとパスワードを入力して
Log In and Continue[Enter]

チェックを入れて
[X] I agree to the Java SE Timezone Updater License Agreement

continue[Enter]

ライセンスについての但し書きが表示されて

continue[Enter]

Java SE Timezone Updater 1.3.12
tzupdater-1_3_12-2009a.zip 0.25 MB [Enter]

Save to Disk[Enter]

ファイル名を確認して[Enter]

q
(linx終了)


ファイル名がおかしければ修正します。
tzupdater-1_3_12-2009a.zip

#lynx http://www.eyesbeyond.com/freebsddom/java/jdk16.html

download the latest BSD JDK 1.6.0 patchset [Enter]
ACCEPT [Enter]
save to disk [Enter]


次のファイルがあるか確認します。


#ll
-rw-r--r-- 1 root wheel 2116124 Feb 27 06:12 jdk-6u3-fcs-bin-b05-jrl-24_sep_2007.jar
-rw-r--r-- 1 root wheel 8608204 Feb 27 06:13 jdk-6u3-fcs-mozilla_headers-b05-unix-24_sep_2007.jar
-rw-r--r-- 1 root wheel 116791442 Feb 27 06:13 jdk-6u3-fcs-src-b05-jrl-24_sep_2007.jar
-rw-r--r-- 1 root wheel 261842 Apr 18 12:09 tzupdater-1_3_12-2009a.zip
-rw-r--r-- 1 root wheel 960930 Apr 18 14:12 bsd-jdk16-patches-4.tar.bz2

#cd /usr/ports/java/jdk16
#make install clean

Do you agree to the above license terms? [yes or no] yes


待つこと10分?
何も表示がかわらないけど我慢。


lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x Options for cups-base 1.3.9_3 x
x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x
x x [ ] GNUTLS Build with GNUTLS library x x
x x [ ] PHP Build PHP support x x
x x [ ] PYTHON Build PYTHON support x x
x x [ ] LIBPAPER Build with libpaper support x x
x x [ ] DNSSD Build with DNS_SD (avahi) support x x
x x [ ] PAM Build with PAM support x x
x x [ ] LDAP Build with LDAP support x x
x x [ ] DBUS Build with DBUS support x x
x x [ ] XDG_OPEN Build with XDG_OPEN as browser x x
x x tqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqjqu
x [ OK ] Cancel x
mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj


"cups-base"とは"Common UNIX Printing System"で、
このもともとの名前は"cups-lpr"ということで、印刷用モジュールです。
とくにどの言語からもつかわないのでそのまま[OK]と


lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x Options for diablo-jdk 1.6.0.07.02_4 x
x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x
x x [ ] POLICY Install the Unlimited Strength Policy Files x x
x x [X] TZUPDATE Update the time zone data x x
tqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqjqu
x [ OK ] Cancel x
mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj

そのまま[OK]

===> Vulnerability check disabled, database not found
===> Found saved configuration for diablo-jdk-1.6.0.07.02_4

Because of licensing restrictions, you must fetch the distribution
manually.

Please access

http://www.FreeBSDFoundation.org/cgi-bin/download?download=diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2

with a web browser and "Accept" the End User License Agreement for
"Caffe Diablo 1.6.0".

Please place the downloaded file(s) in /usr/ports/distfiles.

*** Error code 1

Stop in /usr/ports/java/diablo-jdk16.
*** Error code 1

Stop in /usr/ports/java/diablo-jdk16.
*** Error code 1

Stop in /usr/ports/java/jdk16.
*** Error code 1

Stop in /usr/ports/java/jdk16.


おーーーとまった(^-^;;

diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2

が必要らしい。
ただ同意書に同意しないと持ってこれない。

再びdistfilesフォルダへダウンロードする
#cd /usr/ports/distfiles/

#lynx
http://www.FreeBSDFoundation.org/cgi-bin/download?download=diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2
lynx: No match.

と表示が出る場合はトップページからダウンロードを試みます。


#lynx http://www.FreeBSDFoundation.org/


Diablo Caffe JDK 1.6.0-7 FreeBSD 7.x/i386 End-User 61M
diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2

を選んでダウンロードと。
[X] I agree to the terms of this license agreement.Submit [Enter]

62591k あるそうです。結構大きいなぁ。

再びコンパイル

#cd /usr/ports/java/jdk16
#make install clean


待つこと8時間?


 :

Packing /usr/ports/java/jdk16/work/control/build/bsd-i586/j2sdk-image/jre/lib/rt.jar 47552100 bytes
Killed
gmake[3]: *** [pack-jars] Error 1
gmake[3]: Leaving directory `/usr/ports/java/jdk16/work/install/make/pack'
gmake[2]: *** [pack-sdk] Error 2
gmake[2]: Leaving directory `/usr/ports/java/jdk16/work/install/make/pack'
gmake[1]: *** [all] Error 1
gmake[1]: Leaving directory `/usr/ports/java/jdk16/work/install/make'
gmake: *** [install-build] Error 2
*** Error code 2

Stop in /usr/ports/java/jdk16.
*** Error code 1

Stop in /usr/ports/java/jdk16.


止まりました。。。
もう一回やってもまったく同じところで止まります。
何ででしょう。

ぐーぐる先生に聞いてみたら、
「resource limit killed off the pack」
リソース不足?
うん。。。確かに非力なマシンです。
どのリソースだろうと調べてみる。

#dmesg

swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
swap_pager: out of swap space
swap_pager_getswapspace(16): failed
swap_pager_getswapspace(16): failed
pid 62595 (pack200), uid 0, was killed: out of swap space

あーーーーーーーーーーーーーーーーーーーーーー
これか。
スワップスペースが足りない。どーすんだ?

スワップ領域の表示
# pstat -s
Device 1K-blocks Used Avail Capacity
/dev/ad0s1b 258200 10212 247988 4%

現在256M。やっぱり少ないのか。
スワップ領域。増やせないのだろうか。
ちょっと探してみたら簡単に増やせるらしい。

Swap領域を +512Mする
#dd if=/dev/zero of=/usr/SWAPFILE bs=1m count=512

待つこと5分。

rc.confに次の行を追加
[/etc/rc.conf]
swapfile="/usr/SWAPFILE"

再起動

#reboot

# pstat -s
Device 1K-blocks Used Avail Capacity
/dev/ad0s1b 258200 0 258200 0%
/dev/md0 524288 0 524288 0%
Total 782488 0 782488 0%

増えた!

あらためて

#cd /usr/ports/java/jdk16
#make install


待つこと4時間。

#rehash


#java -version
java version "1.6.0_07"
Diablo Java(TM) SE Runtime Environment (build 1.6.0_07-b02)
Diablo Java HotSpot(TM) Client VM (build 10.0-b23, mixed mode, sharing)

できました(^o^

最後に環境変数をセットします。
[~/.profile,~/.csh,~/.zsh 自分の環境に合わせて]

export JAVA_HOME=/usr/local/diablo-jdk1.6.0
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:/usr/local/jdk1.6.0/lib/tools.jar

バージョンが変わると、名前や保存場所が変わるとおもわれますので、
いずれの環境変数も実際にそのフォルダやファイル名を確認して記述してください。


■javaの動作確認 "Hello World!"を表示させる

次に動作確認です。
javaではファイル名とクラス名を同じにしておかなければなりません。
また、それらの名前は大文字と小文字を判別することに注意してください。
テスト用のコードを記述します。
[Test.java]

class Test{
public static void main(String args[]){
System.out.println("Hello Java World.");
}
}


コンパイルと実行を行います。

#javac Test.java
#java Test
Hello Java World.


これでOKです。

もし、クラス名とファイル名が異なっていた場合や、
#java Test.class
のように拡張子まで指定した場合、次のようなエラーが発生します。

#java test
Exception in thread "main" java.lang.NoClassDefFoundError: test
Caused by: java.lang.ClassNotFoundException: test
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)


クラス名とファイル名の大文字・小文字をよく確認して修正してください。


Be Careful When You Type

Type all code, commands, and file names exactly as shown. Both the compiler (javac) and launcher tool (java) are case-sensitive, so you must capitalize consistently.

HelloWorldApp != helloworldapp

The Java Tutorials



.

2009年4月16日木曜日

FreeBSD8.0

まだかな。。。
2011年あたりだろうか。
マイナーバージョンアップが年2回
メジャーバージョンアップが2年に1回ですよね。
そういえば私が始めてFreeBSDを使ったときは
FreeBSD4.2でした。
えーと。2001年かな?
おーーーもう8年前にもなる。
ISDNでInfospherでIP8を取りサーバーを構築し公開していました。

なつかしい。。。
8年でメジャーバージョンが3あがってるから、やっぱり2011年かなぁ。

.

2009年4月15日水曜日

Apache22 Perl Ruby PHP python Javaの速度比較 ベンチマーク

AMD GeodeNX1500/1050MHz
ASRock K7VT4A PRO
------------------------------
FreeBSD7.1/i386
Apache2.2.11
PHP5.2.9
Ruby1.8.7
Ruby1.9.1
Perl5.8.9
Python2.5.4
Java(JDK1.6.0)
GCC4.2.1
------------------------------
Apache上で動作させたスクリプトは実際のところどのスクリプトが早く、
速度差はどのくらいなのでしょうか?
ネットで検索してみても古い記事しかみつからず、PHP(PHP3)がもっとも遅い
といった結果しか見つけられませんでした。
しかしながら、PHPも今ではPHP5にバージョンアップされ、Zend社のランタイムコンパイラが内蔵されたことから、もっと高速化されているはずです。

簡単な例ながらベンチマークテストを行った結果次のようになりました。

1から100万までの総和の計算
C++0.0083sec (参考値)
PHP5.20.53sec
Java1.60.59sec
Perl5.81.38sec
Ruby1.91.49sec
Python2.51.59sec
Ruby1.82.69sec


C++は置いといて、この結果からするとPHP5.2がもっとも高速でした。
Ruby1.9が最も高速だと思っていましたが、Perlよりも遅いという結果でした。

さて、この結果はApacheへの1リクエストについての時間相当になるのですが、実際Apache上から呼び出されたときには、そのスクリプトが実行されるまでのオーバーヘッドとスクリプトの終了処理が発生するわけで、小さなトランザクションが多量に発生した場合の実行速度とはまったく別の結果が出るはずです。

この点についてはまた後ほど評価いたします。


次のコードでテストを行いました。
条件をなるべくそろえるために、同じようなコードになるようにしています。

PHP
[bench.php]

<?
$time_start = microtime(TRUE);

$sum = 0;

for($i = 0;$i <= 1000000;$i ++)
{
$sum = $sum + $i;
}
echo "Result:$sum<br>\n";

$time_end = microtime(TRUE);
$time_use = $time_end - $time_start;

echo "Start:$time_start<br>\n";
echo "End:$time_end<br>\n";
echo "Use:$time_use<br>\n";

?>


Perl
[bench.pl]

#!/usr/local/bin/perl
##
## bench.pl
##
use Time::HiRes;


print "Content-type: text/plain; charset=iso-8859-1\n\n";

$usecStart = Time::HiRes::gettimeofday();

$i = 0;

for($i = 0;$i <= 1000000;$i ++){
$sum = $sum + $i;
}

$usecEnd = Time::HiRes::gettimeofday();
$usecUse = $usecEnd - $usecStart;

print "Result:${sum}<br>\n";
print "Time:${usecUse}<br>\n";


Ruby
[bench.rb]

#!/usr/local/bin/ruby

print "Content-Type: text/html\n"
print "\n"

tmStart = Time.now

sum = 0
i = 1
while i <= 1000000
sum = sum + i
i = i + 1
end

tmEnd = Time.now

print "Result:#{sum}<br>\n"

tm = tmEnd - tmStart

fTime = tm.to_f
print "Sec:#{fTime}"



Python
[bench.py]

#!/usr/local/bin/python
##
## bench.py
##
import time

print "Content-type: text/plain; charset=iso-8859-1\n\n"

print "Hello World"

msecStart = time.time()


sum = 0
i = 0

while i <= 1000000:
    sum = sum + i
    i = i + 1

msecEnd = time.time()

print "Start:" , msecStart
print "End:" , msecEnd

msecUse = msecEnd - msecStart

print "Time:" , msecUse



Java (JDK1.6.0 diablo-caffe)

class Bench{
public static void main(String args[]){

long lStart,lEnd,lUse;

lStart = System.currentTimeMillis();

long lCount,lSum;
lSum = 0;
for(lCount = 0;lCount <= 1000000;lCount ++)
{
lSum = lSum + lCount;
}

lEnd = System.currentTimeMillis();

System.out.print("Result:");
System.out.println(lSum);

lUse = lEnd - lStart;

System.out.print("Time:");
System.out.println(lUse);



}
}



C++ (GCC4.2.1)
[bench.cpp]

#include <stdio.h>
#include <string.h>
#include <time.h>

int main()
{
timespec tsStart,tsEnd,tsUse;

memset(&tsStart,0,sizeof(timespec));
memset(&tsEnd,0,sizeof(timespec));
memset(&tsUse,0,sizeof(timespec));


clock_gettime(CLOCK_REALTIME,&tsStart);

int i = 0,sum = 0;

for(i = 0;i <= 100000000;i ++)
{
sum = sum + i;
}

clock_gettime(CLOCK_REALTIME,&tsEnd);

double dStart,dEnd,dUse;

dStart = (double)tsStart.tv_sec + (double)tsStart.tv_nsec * 0.000000001;
dEnd = (double)tsEnd.tv_sec + (double)tsEnd.tv_nsec * 0.000000001;
dUse = dEnd - dStart;

printf("Start:%f\n",dStart);
printf("End:%f\n",dEnd);
printf("Use:%7.2f\n",dUse);
}
----------------

#g++ bench.cpp
#./a.out

C++は概算です。

.

2009年4月13日月曜日

ubuntu su パスワード 認証失敗

ubuntu8.10
su -
パスワード 認証失敗
--------------------------------
この記事は移動しました。
ubuntu su パスワード 認証失敗


ubuntuはインストール直後はrootアカウントにパスワードが設定されていないらしい。

rootアカウントのパスワードを設定するには
端末を起動する。
[アプリケーション]-[アクセサリ]-[端末]

$sudo su -
[sudo] password for daimajin: (インストール時に設定したパスワード)
#passwd
新しいUNIXパスワードを入力してください: (rootアカウントのパスワード)
新しいUNIXパスワードを再入力してください:(rootアカウントのパスワード)




.

ubuntu8.10 cd label レーベルを作ってみました

ubuntu 8.10 cd label
レーベルを作ってみました

この記事は移動しました
ubuntu 8.10 cd label
レーベルを作ってみました



FreeBSDとはまったく関係ありませんが。。。
Pentium3/800MHz メモリ256Mなノートパソコンがありまして、これで快適な環境は作れないものかと、いまさらubuntuを入れてみました。

レーベル印刷するのにレーベルを作りましたのでここで公開することにしました。

ubuntu。インストールめちゃめちゃ簡単で驚きました。
FreeBSDのデスクトップ環境を作るのと比べるとものすごい簡単。
インストール手順

1インストール用のディスクを入れて起動。
2言語選択 日本語
3タイムゾーン選択 tokyo
4キーボード選択 てきとー
5パーティーション選択 全部
6ユーザー名とパスワードを入れて。

おしまい。こんだけ。
えーーーーーーーーーーー!
WindowsXPのインストールよりも簡単な気がする。

動作も思ったよりも軽い。
このマシンにWindowsXP+ウイルス対策ソフトなぞいれたらもう動きませんからね。
それを考えると、ありがたいものですm(_ _)m

あ。レーベル。
色は3色作ってみました。
オレンジ。黄色。赤。
ubuntuのイメージカラーはやっぱりこのオレンジ。
印刷するとちょっとかっこいい気がする。
よく見るとへんなところで改行しているのは秘密。

ubuntu cd lebel レーベル印刷 オレンジubuntu810 cd label orange レーベルオレンジ

ubuntu cd lebel レーベル印刷 黄色ubuntu810 cd label yellow レーベル黄色

ubuntu cd lebel レーベル印刷 赤ubuntu810 cd label red レーベル赤

.

2009年4月12日日曜日

FreeBSD sshdのポートを複数あけるには

FreeBSD7.*
FreeBSD6.* たぶん
----------------------------------
sshは通常ポート番号が22で1ポートのみ接続できます。
しかし、自宅サーバーが2台あり、外のインターネットから自宅サーバーにアクセスするのにポート番号が同じでは、ルーターに設定できません。

またポート22番をあけたとたんに不正アクセスの嵐がサーバーに負担をかけます。
/var/log/auth.log
を見るとあちらこちらからログイン名を変えて手当たり次第にアタックをかけてきています。
ポート番号をずらすことでそういう不正アクセスがかなり軽減できます。

任意のポートへのポートマッピングで対応できそうですが、やってみるとできません。
たとえば、

WAN:1022→192.168.0.10:22
WAN:2022→192.168.0.20:22

のような設定です。
セキュリティー上、sshdは実際に接続されたポート番号と接続しようとしていたポート番号とが異なると遮断するようです。
つまり、ルーターで外向きに開けるポート番号22だけだと、サーバー1台しか接続できないのです。

そこで、自宅内で接続するようなときは、port 22で接続し、外から接続するときは、

WAN:1022→192.168.0.10:1022
WAN:2022→192.168.0.20:2022

のように接続します。

ということでsshdの設定を行います。

sshd_configを編集します。
同じような名前でssh_config(dが無い)がありますが、こちらはsshクライアント側の設定に使用するものなので間違えないようにします。

192.168.0.10:1022にする場合
[/etc/ssh/sshd_config]


#Port 22
Port 22
Port 1022


次に
sshdをリブートします。

#/etc/rc.d/sshd restart

これで両方のポートからログインできるはずです。

ちなみにポート毎にsshdプロセスが起動するので、どちらかがコケても接続できよりフェールセーフな構成にできます。

TeraTerm等で接続するときは、デフォルトのポート番号が22になっているところを、あけたポート番号、上記の例では1022等にして接続します。

■おまけのメリット
グローバルIPアドレスを取得しポート22を空けたとたん、中国やらアメリカやらロシアやら世界中から不正アクセスを受けます。1秒ごとに1アクセスぐらいでしょうか。
ところが、ポート番号を変えただけで全く不正アクセスを受けなくなりました。

見つけたIPのポート全てのポートスキャンはしないようです。

セキュリティーを気にしてSSHのポート番号を変更しているサーバーは、そのセキュリティーホールを探すのよりも、他のセキュリティーの甘いサーバーを探したほうが楽だということでしょうか。

SSHのポート番号変更はとてもオススメです。



.

2009年4月10日金曜日

emacsのインストール

FreeBSD7.1
----------------------------------
make.confの設定 WITHOUT_X11=yes の続き

■emacsのインストール

viでの編集はとても大変なので、もう少し扱いやすいemacsというスクリーンエディタをインストールします。マウスのホイールでの上下スクロールはできませんが、Windows上のエディタになれた人なら、こちらのほうが扱いやすいと思います。

FreeBSDのPortsというアプリケーション管理システムを使ってインストールを行います。


#cd /usr/ports/editor/emacs
#make install clean


#rehash

#emacs [file name]

これで起動します。

終了 [Ctrl]+[x][c] (Ctrlを押しながら[x]押して[c]を押す)
保存 [Ctrl]+[x][s]
一文字削除 [Ctrl]+[d]

コピー・ペースト
コピー 開始位置[Ctrl]+[Space]  終了位置[Esc]-[w] ([Esc]を押して離して[w])
ペースト [Ctrl]+[y]

ruby1.8 ruby-gemsと一緒にインストールへ続く

.

rc.confの設定 自動起動スクリプト

FreeBSD7.1
----------------------------------

8.viの使い方
の続き

■sendmailの停止

インストール直後はメールサーバーにsendmailがインストールされており、自動起動するようになっています。そのため、ホスト名が解決できず起動に時間がかかったりすることがあります。
そこで、sendmailを停止しておきます。
rc.confの最終行に次のように記述します。

[/etc/rc.conf]


sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"





■make.confの設定 WITHOUT_X11=yes

続いてmake時のコンパイルオプションを変更しておきます。
サーバー用途でマシンを構築する場合、今後インストールするソフトにX Windowの重厚なライブラリもコンパイルされると非常に時間がかかるようになります。
それを回避するためにも、makeオプションにXWindowを使わないことを明示的に指定しておきます。

WITHOUT_X11=yes

[/etc/make.conf]


WITHOUT_X11=yes

2009年4月9日木曜日

viの使い方

■viの使い方

viには[コマンドモード]と[入力モード]があります。
両方のモードを行き来することでテキストを編集していきます。

■コマンドモード
viをはじめて起動するとコマンドモードになっています。
そのため文字を入力しても文字が入力されません。
次のコマンドで操作します。







:qviを終了
:wファイルを保存
x一文字削除
a入力モードへ移行 カーソルの後ろから挿入(append)
i入力モードへ移行 カーソルの前に挿入(insert)
[shift]+j行末の改行コードの削除(join)


■入力モード
文字がやっと入力できます。
ただし、ここでは削除はできません
文字を消そうとして[DEL][BS]などを連打すると、「^?」が表示されたり、カーソルが移動したりして慌てます。
[ESC]キーを押しコマンドモードに移行し文字を消してください。

わけがわからなくなってもとりあえず[ESC]を押します。
[ESC]キーでコマンドモードへ移行できます。

.

SSH2の設定 リモートログインするには

FreeBSD7.1
----------------------------------
ネットワークの設定の続きです

■SSHDの起動設定

インストール直後はSSHDが起動していないため、今後リモートログインするために
SSHDを自動起動するように設定を変更します。
/etc/rc.conf
の最終行に
sshd_enable="YES"
と追記します。
ここでエディタにviを使用しますが、Windowsのエディタになれている人、
初めて使う人にはとてもなれないものです。
viの使い方は次の記事にざっくり説明します。

[/etc/rc.conf]

#vi /etc/rc.conf

sshd_enable="YES"



続いてクライアント側、Windows等からサーバーに接続するための設定を行います。

SSH2でサーバーに接続する Teraterm4へ続く

.

Ruby1.8.7+ruby18-gemsのインストール

FreeBSD7
Ruby1.8.7
ruby18-gem1.3.1
-----------------------
emacsのインストールの続き

■Ruby1.8.7のインストール

Ruby1.9はかなり速くなっているという。
でもgemsを使うのならruby1.8.7そのまま使いましょう。
ruby-gemをインストールすると自動的にインストールしてくれます。



#cd /usr/ports/devel/ruby-gem
#make install clean


===> Registering installation for ruby18-gems-1.3.1
===> Cleaning for ruby+oniguruma-1.8.7.72_1,1
===> Cleaning for oniguruma-2.5.8
===> Cleaning for ruby18-gems-1.3.1



ntpdの設定 時刻合わせ NTPサーバーへ続く


.

2009年4月8日水曜日

ネットワークの設定

FreeBSD7.1

・IPアドレスの設定
----------------------------------
インストール後の設定の続き


■IPアドレスの設定
SSHでリモートログインするためにも、今後のアプリケーションのインストール
のためにも、サーバーとしてサービスを提供するためにもネットワークの設定が
必要です。
ここでは、Lanの設定を行います。

ネットワークの環境を次のものとして設定していきます。
各自のネットワークの状態に合わせて適宜変えて設定して下さい。

ルーター:192.168.0.1
DNSサーバー:192.168.0.1
サーバー名:tara
IPアドレス:192.168.0.80


#sysinstall





[Configure]-[Networking]の順に選びます


[Space]を押します。



[Ethernet card]と表示さているものを選択します。
ここでは、
[re0 RealTek 8139C+/8169/8169S/8110S PCI Ethernet card]
を選択しています。
[Enter]


Do you want to try IPv6 configuration of the interface?
[ No ]を選びます


Do you want to try DHCP configuration of the interface?
[ No ]を選びます



適宜入力します。



[OK]

[X Exit]を選択し[Enter]

[X Exit]を選択し[Enter]

[X Exit Install]を選択し[Enter]


#reboot[Enter]




SSH2の設定 リモートログインへ続く

.

インストール後の設定

FreeBSD7.1

・最初のログイン
・ユーザーの追加
----------------------------------

FreeBSD7.1のインストールの続き


■最初のログイン
サーバーに電源を入れるとログイン画面が表示されます。


FreeBSD/amd64 (tara) (ttyv0)

login:


と表示されます。
loginに"root"
Passwordにインストール時に設定したパスワードを入力します。


FreeBSD/amd64 (tara) (ttyv0)

login:root[Enter]
Password:*****[Enter]

Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
The Regents of the University of California. All rights reserved.

FreeBSD 7.1-RELEASE (GENERIC) #0: Thu Jan 1 08:58:24 UTC 2009

Welcome to FreeBSD!

Before seeking technical support, please use the following resources:

o Security advisories and updated errata information for all releases are
at http://www.FreeBSD.org/releases/ - always consult the ERRATA section
for your release first as it's updated frequently.

o The Handbook and FAQ documents are at http://www.FreeBSD.org/ and,
along with the mailing lists, can be searched by going to
http://www.FreeBSD.org/search/. If the doc distribution has
been installed, they're also available formatted in /usr/share/doc.

If you still have a question or problem, please take the output of
`uname -a', along with any relevant error messages, and email it
as a question to the questions@FreeBSD.org mailing list. If you are
unfamiliar with FreeBSD's directory layout, please refer to the hier(7)
manual page. If you are not familiar with manual pages, type `man man'.

You may also use sysinstall(8) to re-enter the installation and
configuration utility. Edit /etc/motd to change this login announcement.

#■


このように表示され入力状態になります。

ログアウトするには
#exit

サーバーをシャットダウンするには
shutdown -p now
を使います。


#shutdown -p now
Shutdown NOW!
shutdown: [pid 2347]
#
*** FINAL System shutdown message from boon@kappa.local ***
System going down IMMEDIATELY



System shutdown time has arrived

と表示が出て電源が切れます。

■ユーザーの追加

次にユーザーを追加します。
サーバーの画面上で操作すると画面が小さく、操作がしにくく、
また操作した内容がすぐに消えてしまいとても苦痛に感じるはずです。
通常サーバーは、サーバー自体で操作するのではなく、遠隔操作して使用します。
そこでSSHというもので、Windowsなどの他のPCから接続し、コマンドを打ちながら
操作します。これだと画面に表示された内容をスクロールバックして再表示
でき、画面上でコピーペーストできるようになるので、格段と扱いやすくなります。


SSHを使用するためには、rootアカウントとは別にユーザーアカウントというものを
作り、それを使用してログインするようにします。


#adduser[Enter]
Username:daimazin[ユーザー名を入力する]
Full name:dai mazin[フルネームを入力する]
Uid (Leave empty for default):[Enter]
Login group [daimazin]:[Enter]
Login group is daimazin. Invite daimazin into other groups? []:wheel[重要wheel Enter]
Login class [default]:[Enter]
Shell (sh csh tcsh nologin) [sh]: tcsh[tcsh Enter]
Home directory [/home/daimazin]:[Enter]
Home directory permissions (Leave empty for default):[Enter]
Use password-based authentication? [yes]:[Enter]
Use an empty password? (yes/no) [no]:[Enter]
Use a random password? (yes/no) [no]:[Enter]
Enter password:*******[パスワードを設定します Enter]
Enter password again:*******[同じパスワードを入力します Enter]
Lock out the account after creation? [no]:
Username : daimazin
Password : *****
Full Name : dai mazin
Uid : 1002
Class :
Groups : daimazin
Home : /home/daimazin
Home Mode :
Shell : /bin/tcsh
Locked : no
OK? (yes/no): yes[yes Enter]
adduser: INFO: Successfully added (daimazin) to the user database.
Add another user? (yes/no): no[no Enter]
Goodbye!



これでdaimazinというアカウントが作成できました。
途中、グループにwheelというのを指定しましたが、これは、管理者グループで
このグループに参加させておくことで、インストールや設定などを行えるようになります。

ネットワークの設定へ続く

.

FreeBSD7.1のインストール

FreeBSD7.1インストール
サーバー構築
AMD AthronX2/4850e
GIGABYTE MA78GPM-DS2H
------------------------------------------
FreeBSD7.1のダウンロードの続き

BIOSの設定で起動デバイス順序でCD/DVDドライブを最優先に変更しておきます。


FreeBSD7.1のダウンロードで作成したメディアをサーバーに入れDVD-Rから起動します。


サーバーを起動します。

FreeBSDの起動画面が表示されます。
インストーラーが開始されます。






以下キーボードのカーソルキー(矢印キー)で操作します。
上下左右のキーで選択し、キーボードの[Enter]が決定です。
しばらくすると次の画面が表示されます。


■Country Selection
[110 Japan]を選択します。





[OK]を選びキーボードの[Enter]を押します。

■System Console Keymap
[Japanese 106 Japanese 106 keymap]
となっていることを確認し、
[OK]を押す




■FreeBSD/amd64 7.1-RELEASE - sysisntall Main Menu
[Custom]
を選択する



■Choose Custom Installation Optoins

パーティーションの作成
[3 Partition Allocate disk space for FreeBSD]



■message
Worning: A geometry of 76613/16/255....
[OK]



■FDISK Partition Editor


パーティーションが残っていれば[D]でパーティーションを削除する。



キーボードから[C]を押す


[OK]
165
[OK]

[Q]




■Install Boot Manager for drive ad0?
[BootMgr Install the FreeBSD Boot Manager]
を選び[OK]



■Choose Custom Installation Optoins
[4 Label Label allocated disk partitions]
を選び[OK]



■FreeBSD Disklabel Editor


キーボードから[A]を押す
ディスクラベルが自動的に設定される。
[Q]で終了する


■Choose Custom Installation Optoins
[5 Distributions Select distribution(s) to extract]
を選び[OK]


■Choose Distributions
[6 Kern-Developer Full Binaries and doc,Kernel sources only]
を選びキーボードの[SPACE]キーを押す



■User Confirmation Request
[Yes]を選ぶ



■Choose Distributions
[X Exit Exit this menu (returning to previous)]
を選びキーボードの[Enter]キーを押す



■Choose Custom Installation Optoins
[6 Media Choose the installation media type]
を選び[OK]


■Choose Installation Media
[CD/DVD]
を選び[OK]


■Choose Custom Installation Optoins
[7 Commit Perform any pending Partion/Label/Extract actions]
[OK]


■User Confirmation Request
[Yes]





これで、ディスクのパーティーショニング、フォーマット、インストールが始まります。





ここまでくれば基本的なインストールは終了です。
次に管理者アカウントのパスワードを設定します。

■User Confirmation Requested
他に一般的な設定をするのか?
と聞いてきているので、[Yes]を選択します。




■管理者パスワードの設定 Rootアカウントのパスワード設定
FreeBSD Configuration Menu
[Root Password]を選択します。



パスワードを入力します。
New Password:
に続けて入力し[Enter]を押します。



パスワードを再入力します。
Retype New Password:
に続けて入力し[Enter]を押します。



■Time Zone タイムゾーンの設定
何も指定しないと夏時間になると1時間ずれたりします。



[Time Zone]を選択します。




Is this machine's CMOS clock set to UTC? If it is set to local time,or you don't know, please choose NO here!

マザーボード上の時計がUTCをあらわすのか選択します。
通常ローカルタイムである日本時間を設定しておくので、
[No]を選択します。



[5 Asia]を選択します。



[18 Japan]を選択します。



Does the abbreviation `JST' look reasonable?
日本時刻の表記にJSTを使うのか?

[Yes]
を選びます。

■再起動

ここまでの作業で最低限の設定は終了しました。
ここからは再起動してからの操作になります。
この設定画面から終了するには、画面上部に表示されている[Exit]を選択し終了させていきます。
次のような手順で終了させます。



FreeBSD Configuration Menu
[X Exit]を選択します。




[X Exit Install]を選択し[Enter]を押す。



User Confirmation Requested
Are you sure you wish to Exit?

と表示されたら
CD/DVDを取り出します。

[Yes]を押します。



サーバーが再起動を始めます。



FreeBSDの起動画面が表示されたら完成です。

起動後はいよいよFreeBSDの設定を行って行きます。

インストール後の設定へ続く

.