サーバーになりえるOSは沢山ありえど、「高いねん!」。 
 クライアントってなんやね~ん! ライセンス?面倒やね~ん(爆発) 
 そう、どこぞのくされOSより遥かに安いというかタダなOSが存在するのである。いうまでもなく、LINUX/BSDである(他にもあるけどね)
 
 高貴なオープンソース思想で、多くのソフトウェアもまるごと含みで、いろいろなディストリビューションが存在する。世界のハッカーさんを巻き込むとこれだけの事ができるのである。まことに素晴らしい。 
 でも、利用者に文句ばかり言ってる人が多いこと・・、情けない限りです。感謝しなければなりません。 
(なにを隠そう私も小さいながらオープンソースプロジェクトを進めてます。笑)
 ここでは、Redhat7.3を使います。現時点で最新版です。 
 雑誌や書籍でも手に入りますが、FTPでゲットしましょう。 
 Redhatから取ってくるには、あまりに時間がかかってしまうので、国内のミラーサイトからゲットします。(400時間って言われたし・・・涙) 
 KDDI研究所のFTPサーバーからいただくことにします。 
 USERには、anonymousで、パスワードにメールアドレスを入力してログインします。めちゃめちゃファイルがあるので、注意する。 
 以下は、Linuxから覗いていますが、WindowsのFTPソフトで快適にゲットしてくださいね。 
[root@server html]# ftp ftp.kddlabs.co.jp 
Trying 2001:200:601:10::10... 
Trying 192.26.91.193... 
Connected to ftp.kddlabs.co.jp (192.26.91.193). 
220 ProFTPD 1.2.5 Server (KDDI Labs FTP Server) [ftp.kddlabs.co.jp] 
Name (ftp.kddlabs.co.jp:nabe): anonymous 
331 Anonymous login ok, send your complete email address as your password. 
Password:(メールアドレス) 
230- 
 Welcome to KDDI R&D Labs, INC.
 Local time is Sat Aug 17 23:48:29 2002 JST+0900. 
 There are currently 36 users out of 40 possible. 
 This ftp/rsync server is an unsupported service of 
KDDI R&D Labs, 
 INC. Use entirely at your own risk - no warranty is expressed or 
 implied. Complaints and questions should be sent to 
 <ftpadmin@kddilabs.jp (admin@ftp.ne.jp)>. 
       ftp://ftp.kddilabs.jp (ftp://ftp.ne.jp/) 
       rsync://ftp.kddilabs.jp (rsync://ftp.ne.jp) 
        * The connection for both IPv4 and IPv6 is 
avaiable. 
 Note: 
  This Server is limited to 1 connection per a host at the same time. 
230 Anonymous access granted, restrictions apply. 
Remote system type is UNIX. 
Using binary mode to transfer files. 
ftp> 
 | 
 
 
/10/Linux/RedHat/redhat/linux/7.3/en/isoにCDROMのisoイメージがあるので、全ファイルをダウンロードする(凄いサイズなので、引き締めて行こう!) 
ftp> ls 
227 Entering Passive Mode (192,26,91,193,238,18). 
150 Opening ASCII mode data connection for file list 
-rw-r--r-- 1 ftpadmin wheel 571 Jun 19 11:50 MD5SUM 
-rw-r--r-- 1 ftpadmin wheel 583958528 Jun 14 13:51 valhalla-SRPMS-disc1.iso 
-rw-r--r-- 1 ftpadmin wheel 625541120 Jun 14 13:52 valhalla-SRPMS-disc2.iso 
-rw-r--r-- 1 ftpadmin wheel 668499968 Jun 18 03:57 valhalla-i386-disc1.iso 
-rw-r--r-- 1 ftpadmin wheel 669319168 Jun 14 13:49 valhalla-i386-disc2.iso 
-rw-r--r-- 1 ftpadmin wheel 517079040 Jun 14 13:50 valhalla-i386-disc3.iso 
226 Transfer complete. 
ftp> | 
 
 
  この5つがそのままCDROMのイメージであるが、実際に必要なのは、valhalla-i386-disc1/2/3.isoの3ファイルのみである。ちなみに、DSL1.5M回線で6時間かかった。 
 このisoイメージをそのまま、CDROM焼き焼きして完成だ!
 
(ここで、面倒なことは避けるために、CDROMメディアをケチるのはやめよう。とって置き高いやつを使えっ笑) 
  
  後は、CDROMからブートしてインストールするだけです。 
 ここから先は、それ系のサイトか書籍を見て、ちゃんとインストールしてくださいね。ネットワークカードだけは、ちゃんと認識されているように! 
 ログインは、テキストモードにするように!念を押しますが、サーバーですからね・・・(Xを起動するだけで凄いメモリを消費するんです) 
 製品版とか・・ 
 面倒なことを避ける目的でも、サポート、説明書や商用アプリが付いてる製品版の購入も考えてみよう。でも、ちょっと高いんだけどねぇ~。10000位なら普通に買えるんだけどね~。HOLON 
linuxというRedhat系の安いものもあったりします。 
    
かなり洗練されたUI。起動は一番とかっちょいい。気になるのは、右下の!アイコン(オンラインアップデート)製品版ならばここから一発らしい。 
    
 他のTelnet端末があると便利。ここではWindows2Kから作業しているところです。複数のディレクトリごとに起動しておけば、面倒がない。 
 中写真は、たしか結構苦労したネームサーバ設定時のもので(単純にシリアルナンバー増やすの忘れてた・・恥)、右写真では前のサーバーと新しいサーバーを比較しながらの作業でした。 
 ちなみに、Winの壁紙は、VIAから貰ってきたEden公式のものである。オーナー意識が高まるね~笑。 
 
スーパーユーザ(管理者) になるためには? 
suを入力して、後でパスワードを入力する。 
su (名前) とすることで、他のユーザーにもなれるぞい。 
ログオフは、exitです。 
実機画面で日本語環境にするには? 
実機コンソールで、日本語を表示できるようにするには、 konを入力だ。 
標準エディタviの使い方は? 
xで1文字削除、ddで行削除、yyで行コピー、pでペースト。 
終了は、:qで、強制終了は、:q!だ。 
書き込む時は、:w。 :qw!で強制書き込みで終了になる。 
もっと使い方を知りたい(ヘルプ機能) 
コマンドや設定ファイルの使い方を知りたい時は、manコマンドを使う。manに続き調べたいものを書くだけだ。 
ネットワーク環境の状態は? 
/sbin/ifconfigで、有効なインターフェースと情報を表示。
 
/sbin/routeで、ルーティング情報の表示。 
/sbin/netstat -aで、ネット接続情報の表示。 
/usr/sbin/tcpdumpで、IPパケットの中身を覗き見・・危険!!笑 
インターネットの距離を測りたい 
/usr/sbin/traceroute 
(ホスト)で、目的のホストまでのルータ数と速度を調査できる。知っていると思うが、ホストが存在するかチェックするには、pingを使う。 
ハードディスクを速くしたい! 
/sbin/hdparm /dev/hdaと入力して現在の設定状況を確認。 
慎重に一つずつ設定していこう。テストは、-tで出来る。
 
サウンドカードの設定をやりたいっす 
/sbin/sndconfigを実行するだけ。 
Xウィンドウシステムを設定したいっす 
Xconfiguratorを実行するだけ。 
今どんなサーバーが有効なの? 
/sbin/chkconfig --listを実行します。普通だと、3のところを見てください。 
/sbin/service --status-allで、全サーバのステータスを表示します。
 
はて、終了の仕方は? 
/sbin/shutdown -h 0で、いますぐ終了体制になる。-hを-rにすると、再起動になる。 
キサマァー!それでも、ニッポンジンかぁー! 
 何よりも最初に設定すべきサーバが、TELNETである。これで、お布団の中でも、入浴中でも、あるいは仕事場でこっそり、い・じ・れ・るのである~!!リモートでインストールやダウンロード、ファイル削除、HDフォーマット、カメラ撮影、スパムメール送信・・ハァハァ、となんでもござれなのである。 
/sbin/chkconfig telnet on > TELNETサーバ起動を有効にする 
 「で~もぉ~(女子高風)、っていうかぁ~。tcpdumpとかされたぁらぁ~ヤバイっていうのぉ~。」 
 そう、まんま見られてしまうので、職場のネットワーク管理者がニヤついたら終わりである。そんな時のために、セキュアなSSHを使う。 
/sbin/chkconfig sshd on > SSHサーバ起動を有効にする 
/sbin/service sshd start > SSHサーバの手動起動 
 そしたら、SSH対応のTELNETクライアントソフトで、ポート22でアクセスしてみよう。どこからでも安全無事にイ・ジ・レ・ルのである。 
 さあ、ここからがサーバー設置のはじまりだぁ~!
 
「おまえさん、名はなんなのさぁ~」 
 インターネットの世界に自ネットワークを公開するには、ネームサーバを立てなければならない。Redhat7.3には、BIND9が入ってるので、それように設定する。 
 持っている場合には、取得したドメインの設定を行う。 
 太字強調は、大事なところです。 
 こればかりは、追加とか編集ではできないので、以下を参考にして書いてくださいね(他サイトの方がいいかもね) 
 ローカルにネームサーバがあるということは、IPアドレス解決をいちいち外に聞かなくても良いということです。つまり、確実にネットが速くなるということです(ネームキャッシング) 
/etc/named.conf 
内向きと外向きで、違う情報を送信しています。外向きへは、ドメイン名の問い合わせに関するもののみを返します。内側への問い合わせについては、サーバーがローカルにあるので、相違するわけなのです(重要) 
## named.conf - configuration for bind 
# 
# Generated automatically by bindconf, alchemist et al. 
controls { 
        inet 127.0.0.1 allow { localhost; } keys { rndckey; }; 
inet ::1 allow { ::1; } keys { rndc_key; };  <怒られないようにする 
};
include "/etc/rndc.key"; 
acl localnet {    <内側ネットの定義 
        192.168.0.1; 
        127.0.0.1; 
}; 
options { 
        directory "/var/named/"; 
        allow-transfer { localnet; }; 
        allow-query { localnet; }; 
        auth-nxdomain yes; 
}; 
view "local" {    <内向き 
        match-clients { localnet; }; 
        allow-query { localnet; }; 
        recursion yes; 
        zone "." { 
                type hint; 
                file "named.ca"; 
        }; 
        zone "localhost" { 
                type master; 
                file "localhost.zone"; 
        }; 
        zone "0.0.127.in-addr.arpa" { 
                type master; 
                file "named.local"; 
        }; 
        zone "0.168.192.in-addr.arpa" { 
                type master; 
                file "named.192.168.0"; 
        }; 
        zone "scopesd.jp" { 
                type master; 
                file "named.scopesd.jp.local";    (重要) 
                notify yes; 
        }; 
}; 
view "world" {    <外向き 
        match-clients { any; }; 
        allow-query { any; }; 
        recursion no; 
        zone "scopesd.jp" { 
                type master; 
                file "named.scopesd.jp";    (重要) 
# allow-transfer { any; }; 
                allow-transfer { any; }; 
        }; 
}; 
logging { 
    category lame-servers { null; };    <余計なログ出力を排除 
}; 
 | 
 
 
/var/named/named.scopesd.jp 
ここでは、外向きの問い合わせの設定をする。ISPから貰った固定IPアドレスを記入する。あと、大事なのが、セカンドネームサーバである。こればかりは、どこかに頼むしかないのである。友人とか、どこぞの互助会などへ頼む。 
The Public DNS Service (ここでは以下のサービスを使いました) 
http://granitecanyon.com/ 
$TTL 86400 
@ IN SOA ns.scopesd.jp. root.scopesd.jp. ( 
                                      2003082719 ; Serial    変更したら必ず増やす! 
                                      28800 ; Refresh 
                                      14400 ; Retry 
                                      3600000 ; Expire 
                                      86400 ) ; Minimum 
        IN NS ns.scopesd.jp. 
        IN NS      ns1.granitecanyon.com.    セカンドネームサーバ(重要) 
        IN NS      ns2.granitecanyon.com.    セカンドネームサーバ(重要) 
        IN MX 10 ns.scopesd.jp. 
        IN A 61.205.233.19 
; 
ns IN A 61.205.233.19 
mail IN A 61.205.233.19 
www IN A 61.205.233.19 
tempura IN CNAME ns    エイリアス(別名)の定義 
demo IN CNAME ns    エイリアス(別名)の定義 
online IN CNAME ns    エイリアス(別名)の定義 | 
 
 
ネームサーバを起動できるようにする。 
/sbin/chkconfig named on ランレベル起動を有効にする 
/sbin/service named restart サービスを起動する 
 設定が終わったら、確認しよう。クライアント側のパソコンで、ネームサーバをこのサーバ機に合わせ、nslookup (サーバードメイン名)で確認する。 
 ここで確認できるのは、ローカル向けの提供なので、外からの要求にたいしての調査は、友達とか他にダイヤルアップで外からアクセスするかになってしまう。そういった場合は、以下のサイトを利用してください。 
websiteplus http://www.websitepulse.com/tools2.php3 
ルートキャッシュの作り方は以下です。 
dig @A.ROOT-SERVERS.NET. > /var/named/named.ca 
 まだ、落ち着いてはいけない!あとは、ローカルのPCから、普通にネットサーフィンができるのかチェックしなければならない!ローカルのネームサーバ設定から、余計なものを全て省き、このサーバーのみで名前解決するようにしてください。 
 それでうまくいけば成功です! 
「ミツバチアパッチ・・・汗」 
 大事なウェブサーバの設定である。以下を参考にしてください。特に設定する部分はなく、CGIが使えるようにするのと、ルート表示の際に、ディレクトリが見える恥ずかしい設定をはずしておく。あとは、デフォルト文書の設定である。 
 一応、てんぷらのspt.cgiがデフォルトになるように追加・・・笑 
 バーチャルホストが必要ない場合は、最後の2つは要りません。 
 ちなみにウェブルートは、/var/www/html/だ。 
/etc/httpd/conf/httpd.conf 
| 
 <Directory /> 
    Options None 
    AllowOverride None 
 
<Directory "/var/www/html">
 
# 
# This may also be "None", "All", or any combination of "Indexes", 
    DirectoryIndex spt.cgi index.cgi index.html index.htm index.shtml 
index.hdml 
    # To use CGI scripts: 
    # 
    AddHandler cgi-script .cgi 
 
# 
# Use name-based virtual hosting. 
# 
NameVirtualHost 192.168.61.10
 
 
# Virtual hosts 
<VirtualHost 192.168.0.1> 
        DocumentRoot /var/www/html/scopeonline/ 
        ServerName www.scopesd.jp 
        ServerAdmin nabe@scopesd.jp 
        DirectoryIndex spt.cgi index.html index.htm index.shtml 
</VirtualHost> 
 | 
 
 
/sbin/chkconfig httpd on ランレベル起動を有効にする 
/sbin/service httpd restart サービスを起動する 
「メール送らんといて~なぁ」 
 非常に便利なメールサーバの設定です。 
 以下の2点だけ書き換えてください。簡単でしょ?
 
(最後の方は、Cwにドメイン名をつけてください)
 
sendmail.mc 
| 
 dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, 
Name=MTA') 
Cwscopesd.jp 
 | 
 
 
/etc/aliases 
別名を付けることができます。ここでは、これらのメールは全て、nabeユーザーに送信されることになります。 
# Person who should get root's mail 
#root: marc
info: nabe 
scope: nabe 
tempura: nabe 
radio: nabe 
 | 
 
 
/etc/access 
リレーを拒否するホストを列挙する。嫌なメールが着たら全部ここで蹴ってしまおう。案の定、ウィルスメールが送られてきたら即、転送時点で蹴ってしまえば安心だ! 
# by default we allow relaying from localhost... 
spam@ REJECT 
spam.com REJECT | 
 
 
m4 /etc/mail/sendmail.mc > /etc/sendmail.cf 
メール設定をm4ツールを使って変換する必要がある。 
/sbin/chkconfig sendmail on ランレベル起動を有効にする 
/sbin/service sednmail restart サービスを起動する 
 
「ポップゥ?どこの馬の骨かしらん」 
 Windowsやマックで、メールを受信するには、POPサーバーが必要になる。残念ながら、Linuxなシステムには、無縁のものなので付属していない場合がほとんどだ。面倒だが、外から取ってこよう。 
 現時点2002/8での最新版は以下から手に入る(Redhatなので安心だ) 
imap 
http://www.redhat.com/swr/i386/imap-2001a-10.i386_dl.html 
 DLしたら、"rpm -i 
imap-2001a-10.i386"として、インストールしよう。無事インストールできたら、案の定、サービスを開始する必要がある。 
/sbin/chkconfig ipop3 on ランレベル起動を有効にする 
 これで終わり?そうなんです。簡単でしょ?(セキュリティは後でね。笑) 
「ウ~マンボッ!ぅん~~~ビバっ」 
ビバッ!(古っ)なにかと便利なファイルサーバーの名は、サンバサーバ。これも簡単に導入できます。一応、新しく共有領域を設定したいと思います。 
/etc/samba/smb.conf 
| 
 日本語コードを相互に利用できるようにするおまじない。設定すべし。 
coding system=euc 
client code page=932 
これら3つの共有を追加する。ホームページのルートと、MP3などの保存用、あとはファイル倉庫用である。 
[webroot] 
   comment = web root 
   path = /var/www/html/ 
   public = yes 
   writable = yes 
   printable = no 
[sound] 
   comment = sound 
   path = /var/sound/ <適時書き換える 
   public = yes 
   writable = yes 
   printable = no 
[werehouse] 
   comment = file werehouse 
   path = /var/warehouse/ <適時書き換える 
   public = yes 
   writable = yes 
   printable = no 
 | 
 
 
これが完了したら、サービスの起動だ。 
/sbin/chkconfig smb on ランレベル起動を有効にする 
/sbin/service smb restart サービスを起動する 
 まだ、足りない設定が必要なんです!アカウントです。サンバでは、Linuxとは別に設定が必要なのです。だが面倒なことは避けたいので、以下のようにしてください。 
smbpassword (user) (pass) 
として、ユーザー毎にパスワードを設定してください。 
  
つまりこんな感じで、Windowsから見れてしまうのです。 
後は慣れたソフトで自由に編集できちゃいます! 
(ここでは、ウェブルートを共有化しています)
 
 
 
「定時まであと何分で~す~かぁ~?」 
 どんなパソコンでも絶対に時計は狂います。サーバー用途となると大変なことです(メールやログ出力で全体が狂ってしまいます。危険です) 
 絶対に狂わない時計サービスがあるそうですから、みんなで協調しあって時計を合わせましょうということだ。 
 まずは、あなたのネットワークからできるだけ近いNTPサーバを探さなくてはいけません。繋いでいるISPで提供している場合があるので調べてください。 
 自分では、ISPのWAKWAKで提供しているサーバを利用しました。 
 また、協調するNTPサーバは多いに越したことはありません。つまり多い方が精度の高い時間を得ることができるということです。大学や研究所などで公開しているので、迷惑をかけないように利用しよう。 
/etc/ntp.conf 
| 
 # -- CLIENT NETWORK ------- 
(略) 
restrict 192.168.0.0 mask 255.255.255.0 notrust notrap nomodify nopeer 
noquery 
# --- OUR TIMESERVERS ----- 
(略) 
# restrict mytrustedtimeserverip mask 255.255.255.255 nomodify notrap noquery 
# server mytrustedtimeserverip 
restrict ntp1.wakwak.com nomodify notrap noquery 
restrict ntp2.wakwak.com nomodify notrap noquery 
# --- GENERAL CONFIGURATION --- 
(略) 
server  ntp1.wakwak.com 
server  ntp2.wakwak.com 
server 127.127.1.0 # local clock 
fudge 127.127.1.0 stratum 10 
 | 
 
 
システム時間とBIOS時間がどれだけずれているか調べよう。 
(ずれても特に問題は無いが・・) 
/sbin/clock;date 
NTPを起動する前に、まずは時間を手動であわせてみよう。 
ちなみに、サービス起動前でないと、このコマンドは失敗する。
 
/usr/sbin/ntpdate ntp1.wakwak.com <どこかのNTPサーバ 
気持ちが悪いので、BIOS時間も合わせておく 
/usr/sbin/hwclock --systohc 
/sbin/clock -w 
サービスの起動はこちら。 
/sbin/chkconfig ntpd on ランレベル起動を有効にする 
/sbin/service ntpd restart サービスを起動する
 
/usr/sbin/ntpq -pで、ちゃんとNTPサーバ同士で協調しているかと見る。項目の左端に、"*"か"+"があれば良い。 
でも、表示に効果がでるのは、20~30分もかかる。<これに気付かず死にそうになってました。汗 
 注目!ポートを開けることを忘れてはいけません!NTPはちなみに123番です!奥様っ忘れちゃうのよね~。 
 どうしてもうまくいかない時は、/var/log/messageを見てください。なにかのエラーメッセージを吐いている場合があります 
誰が来とんねんってな話なのよ・・ 
 花盛りなCRMやSFA業界では当たり前な、データ解析処理、ウェブのアクセスログでも十分に有効です。なんと、Redhat7.3では知らぬ間にインストールされてしまっています。使わない手はありません。 
 analogが非常に有名ですが、最近うなぎ昇りなWebalizerというグラフィカルでかっちょええアクセスログ解析ソフトがあります。 
/etc/webalizer.conf 
HideSite localhost 
HideSite *.in-addr.arpa 
HideSite 192.168.* 
 上記の3行分を追記しよう。自分のアクセスを解析する必要があるわけないので、はじいておきます。 
 あとは、コマンドラインからwebalizerと実行してみよう。 
 すると、/var/www/html/usage/の中に解析の結果がHTMLで生成されている。それを、ブラウザで見るだけだ。なんと簡単! 
 どんな結果がでるのか気になる人のために、ここのサーバーの解析結果をこっそりお見せしよう。いまだけの期間限定。Webalizerによるログ解析 
ちょっと一言 
ログを見ると「おまえ、Tripwireインストールしたんかい。あん?」とか言われてしまうので、導入設定だけしておこう。これは、不正利用とかで利用するセキュアツールで、オープンにしてくれてる凄くラッキーなソフト(ファイル配置や更新などを監視してくれる) 
/etc/tripwire/twinstall.sh 
これで画面の指示通りにやってけばOK。全部、パスワードを設定するだけです。 
複雑なソフトなので、活用したい方は、専門書やらを読んでくださいね。
 
                                
 
                                  
| これぞリモート&バーチャルディスクトップ!魅惑のVNC | 
 
                              
 
 やはり、マウスの方がいいねんん~。ってな人が多い訳で・・。 
 そんな人にはVNCがおすすめだ。あの、X-Window環境を、どこからでもいじれる素敵な環境を手に入れられる。シェルが苦手な人にはバッチシってな訳だ。 
 なんと、「凄い簡単」に実現できてしまう。
 
 まずは、パスワードの設定のため、/usr/bin/vncserverを起動して欲しい。 
| [root@unko]# /usr/bin/vncserver
 You will require a password to access your desktops. 
Password: < パスワード 
Verify: < パスワード再入力 
New 'X' desktop is unko:1 < サーバーホスト名 
Creating default startup script /root/.vnc/xstartup 
Starting applications specified in /root/.vnc/xstartup 
Log file is /root/.vnc/unko:1.log < サーバーホスト名 
 | 
 
 
http://www.uk.research.att.com/vnc/ VNC公式(英語) 
にて、クライアント側(利用側)のソフトをダウンロードしてインストールする。 
(Macでも、Windowsでもいろいろな環境で動かせる)
 
 ここまで来たら、あとはサーバーを起動する必要がある。起動は、同じように、/sbin/chkconfig vncserver 
onだ。これで、有効になる。起動は、/sbin/service vncserver startで行う。 
 これで終了!VNCslientを起動してみよう。
 
  
サーバーへのホストを入力する。最後の":1"は忘れずに! 
  
続いて、パスワードを入力する。 
  
分りにくいが、右寄りのデカイ、ウィンドウがVNCである。 
見ての通り、X-Windowであるのが見える。 
これで、モニター要らずで、Linuxを操作できるのである。 
(VNC経由で、ブラウザ立ち上げて、Googleを表示しているところだ) 
重要!VNCポートを、必ずルータで切ってください。 
セキュリティ上、最強に危険です!
 
 問題といえば、メモリ食いのX-Windowが実際にサーバーで立ち上がっている、動かさなければ負荷はそれほどでもないが、相応のスペックが要求されることは覚えていて欲しい。 
 先に言っておくが、ビデオカードの性能は関係ない。X-Windowでは意味がない。 
 (コラム)これが、MSWindowsよりも遅い理由になっている。ゲームなんか到底できるはずもない。個人的には、なんとかして欲しい。理想とかどうでもいいじゃん。使う人の立場にたつ必要もある。DirectXなどのような、ハード依存レイヤーなどの仕組みを用意して(そういうプロジェクトもある)、S/CかローカルS/Cを切り替えられるようにしてさ。>自分でやれってか爆 
11/15 chkconfigで設定しても起動時に動作してくれない。なじぇ? 
 ウィンドウがデカクて邪魔な場合は、Connection Optionで、DisplayのScale 
Byで、1/2とかに設定してみよう。 
 
 日本発(当たり前だが)のオープンソース「NAMAZU」を知っている方は多いが、これを活用している人が意外に少ない。 
 かなり日常的に便利なので、使ってもらいたい。いまなにかと盛んな、KM(ナレッジマネージメント)やらの基本的な文書管理の一つとして重要なファクターとなりえます。これで業務効率アップです! 
 HTMLやテキストファイル、PDFやワードやエクセル、一太郎に及ぶところまで、検索を行えちゃうスンゴイソフトです。前述のサンバサーバーと合わせれば無敵です。 
http://www.namazu.org/ なまず公式サイト 
 案の定、すでにインストールされちゃってます。ですが、設定が全てコメントにされちゃっているようなので、これを外しましょう。 
/etc/namazu/namazurc 
(略) 
## 
## Index: Specify the default directory. 
## 
Index /usr/local/var/namazu/index
## 
## Template: Set the template directory containing 
## NMZ.{head,foot,body,tips,result} files. 
## 
Template /usr/local/var/namazu/index 
(略) 
## 
## Lang: Set the locale code such as `ja_JP.eucJP', `ja_JP.SJIS', 
## `de', etc. This directive works only if the environment 
## variable LANG is not set because the directive is mainly 
## intended for CGI use. On the shell, You can set 
## environemtnt variable LANG instead of using the directive. 
## 
## If you set `de' to it, namazu.cgi use 
## NMZ.(head|foot|body|tips|results).de for displaying results 
## and use a proper message catalog for `de'. 
## 
Lang ja 
(略) 
## 
## MaxHit: Set the maximum number of documents which can be 
## handled in query operation. If documents matching a 
## query exceed the value, they will be ignored. 
## 
MaxHit 10000 
## 
## MaxMatch: Set the maximum number of words which can be 
## handled in regex/prefix/inside/suffix query. If documents 
## matching a query exceed the value, they will be ignored. 
## 
MaxMatch 1000 
 | 
 
 
/etc/namazu/mknmzrc 
# 
# This is a Namazu configuration file for mknmz. 
# 
package conf; # Don't remove this line!
#=================================================================== 
# 
# Administrator's email address 
# 
$ADDRESS = 'root@localhost';    <メアド 
 
#=================================================================== 
# 
# Regular Expression Patterns 
# 
# 
# This pattern specifies HTML suffixes. 
# 
$HTML_SUFFIX = "html?|[ps]html|html\\.[a-z]{2}"; 
# 
# This pattern specifies file names which will be targeted. 
# NOTE: It can be specified by --allow=regex option. 
# Do NOT use `$' or `^' anchors. 
# Case-insensitive. 
# 
$ALLOW_FILE = ".*\\.(?:$HTML_SUFFIX)|.*\\.txt" . # HTML, plain text 
                "|.*\\.gz|.*\\.Z|.*\\.bz2" . # Compressed files 
                "|.*\\.pdf|.*\\.ps" . # PDF, PostScript 
                "|.*\\.tex|.*\\.dvi" . # TeX, DVI 
                "|.*\\.rpm|.*\\.deb" . # RPM, DEB 
                "|.*\\.doc|.*\\.xls|.*\\.ppt" . # Word, Excel, PowerPoint 
                "|.*\\.j[sabf]w|.*\\.jtd" . # Ichitaro 4, 5, 6, 7, 8 
                "|\\d+|[-\\w]+\\.[1-9n]"; # Mail/News, man 
# 
# This pattern specifies file names which will NOT be targeted. 
# NOTE: It can be specified by --deny=regex option. 
# Do NOT use `$' or `^' anchors. 
# Case-insensitive. 
# 
$DENY_FILE = 
".*\\.(gif|png|jpg|jpeg)|.*\\.tar\\.gz|core|.*\\.bak|.*~|\\..*|\x23.*"; 
# 
# This pattern specifies PATHNAMEs which will NOT be targeted. 
# NOTE: Usually specified by --exclude=regex option. 
# 
$EXCLUDE_PATH = undef; 
# 
# This pattern specifies file names which can be omitted 
# in URI. e.g., 'index.html|index.htm|Default.html' 
# 
# NOTE: This is similar to Apache's "DirectoryIndex" directive. 
# 
$DIRECTORY_INDEX = ""; 
# 
# This pattern specifies Mail/News's fields in its header which 
# should be searchable. NOTE: case-insensitive 
# 
$REMAIN_HEADER = "From|Date|Message-ID"; 
# 
# This pattern specifies fields which used for field-specified 
# searching. NOTE: case-insensitive 
# 
$SEARCH_FIELD = 
"message-id|subject|from|date|uri|newsgroups|to|summary|size"; 
# 
# This pattern specifies meta tags which used for field-specified 
# searching. NOTE: case-insensitive 
# 
$META_TAGS = "keywords|description"; 
# 
# This pattern specifies aliases for NMZ.field.* files. 
# NOTE: Editing NOT recommended. 
# 
%FIELD_ALIASES = ('title' => 'subject', 'author' => 'from'); 
# 
# This pattern specifies HTML elements which should be replaced with 
# null string when removing them. Normally, the elements are replaced 
# with a single space character. 
# 
$NON_SEPARATION_ELEMENTS = 
'A|TT|CODE|SAMP|KBD|VAR|B|STRONG|I|EM|CITE|FONT|U|'. 
                        'STRIKE|BIG|SMALL|DFN|ABBR|ACRONYM|Q|SUB|SUP|SPAN|BDO'; 
#=================================================================== 
# 
# Critical Numbers 
# 
# 
# The max size of files which can be loaded in memory at once. 
# If you have much memory, you can increase the value. 
# If you have less memory, you can decrease the value. 
# 
$ON_MEMORY_MAX = 5000000; 
# 
# The max file size for indexing. Files larger than this 
# will be ignored. 
# NOTE: This value is usually larger than TEXT_SIZE_MAX because 
# binary-formated files such as PDF, Word are larger. 
# 
$FILE_SIZE_MAX = 2000000; 
# 
# The max text size for indexing. Files larger than this 
# will be ignored. 
# 
$TEXT_SIZE_MAX = 600000; 
# 
# The max length of a word. the word longer than this will be ignored. 
# 
$WORD_LENG_MAX = 128; 
# 
# Weights for HTML elements which are used for term weightning. 
# 
%Weight = 
     ( 
      'html' => { 
          'title' => 16, 
          'h1' => 8, 
          'h2' => 7, 
          'h3' => 6, 
          'h4' => 5, 
          'h5' => 4, 
          'h6' => 3, 
          'a' => 4, 
          'strong' => 2, 
          'em' => 2, 
          'kbd' => 2, 
          'samp' => 2, 
          'var' => 2, 
          'code' => 2, 
          'cite' => 2, 
          'abbr' => 2, 
          'acronym'=> 2, 
          'dfn' => 2, 
      }, 
      'metakey' => 32, # for <meta name="keywords" content="foo bar"> 
      'headers' => 8, # for Mail/News' headers 
 ); 
# 
# The max length of a HTML-tagged string which can be processed for 
# term weighting. 
# NOTE: There are not a few people has a bad manner using 
# <h[1-6]> for changing a font size. 
# 
$INVALID_LENG = 128; 
# 
# The max length of a field. 
# This MUST be smaller than libnamazu.h's BUFSIZE (usually 1024). 
# 
$MAX_FIELD_LENGTH = 200; 
# 
# Network Kanji Filter nkf v1.62 or later 
# 
$NKF = "module_nkf"; 
# 
# KAKASI 
# 
$KAKASI = "module_kakasi -ieuc -oeuc -w"; 
# 
# Default Japanese processer: KAKASI or ChaSen. 
# 
$WAKATI = $KAKASI; 
 | 
 
 
 ここまで、でけたら、もう設定は終了だ。 
 検索をするためには、その対象ごとに「インデックス」 を作らなければならない。つまり、速さの秘訣をここで作るのである。 
 心配は必要無し!凄く簡単だ。 
 mknmz -o (インデックスを書出先) (検索対象のディレクトリ) 
 とするだけだ。すると、ゴリゴリと沢山のインデックスファイル群が出来上がる。 
 namazu (検索文字列) (インデックスの場所) 
 とすれば、検索にヒットしたファイルが次々に表示されていく。 
 (設定すれば、いちいちインデックスの場所を指定しなくても良いぞ) 
 検索語に正規表現などで複雑な検索を行うことも可能だし、このままウェブで利用したりと応用バツグン。これ以上の活用は、専門書などをご覧いただきたい。「なまず本」として有名だ。2冊程度ある。 
ちょっと一言 
 ちゃんと、WindowsでサクサクGUIで操作できるソフト(フロントエンド)もある。なんと、なまず作者の先輩にあたる方だそうです。これで、初心者の方でも気軽に使えるという訳です。 
search-s for Namazu 
http://www.syam.net/library/search-s/ 
 うりゃぃ、腐ったUSBカメラを復活させるチャンスです。ウェブカメラの設置方法について書いてみようと思います。 
 まず、Xを立ち上げてください。(startx)そして、おもむろにUSBカメラを指して、ちゃんと認識されているか確認してください。まずは、そこからです。 
 コンソールで、usbviewでもいいし、管理者メニューからハードウェア情報で調べてもいい。 
 認識されているようなら合格です。かくゆう私もここまでくるのに、USBカメラを4台試しました。古いものほどグットなのです。 
友達や、個人売買や中古でゲットしよう。もう、1000から3000程度で手に入るはずです。 
 できるだけ、「古いもので、低機能なものを!」を守ってゲットしてくださいね。 
 前のCreative 
WebCamとかが実績があって有名ですね。自分のは、メーカー不詳の怪しいもので動作しました。どちらにせよ、内蔵チップに依存します。店頭でチップを確認する訳にもいかないので、ある意味、バクチになります。 
 認識確認できたら、おもむろにコンソールから、xawtvと叩いてみよう。おもむろに、ウィンドウ上に、映し出されているはずである。ここまでくると楽である。 
 ウェブカメラ向けのwebcamというコマンドで、画像を生成するのである。 
 まずは、設定ファイルを書かなくてはいけない。/etc/webcamrc 
[FTP] 
host=192.168.61.10 <FTPサーバ 
user=nabe <FTPユーザーID 
pass=password <FTPパスワード 
passive=1 
dir=/var/www/html/ <アップ先 
file=mtv01.jpeg <アップファイル名 
tmp=tmp.jpeg <テンポラリファイル名 
auto=0 
local=1 <ローカル生成の場合1 
ssh=0 
debug=0
[grab] 
device=/dev/video0 
text=20%y/%m/%d %H:%M (LIVE now!) <文字を入れる場合 
width=320 <サイズ 
height=240 <サイズ 
delay=30 <次のタイミングまでの秒数 
input=Camera 
rotate=0 
top=0 
left=6 
bottom=-1 
right=-1 
quality=75 <画質、100が最高 
trigger=1 <自動更新トリガー(うまく動かないような気がする) 
once=0 
archive=/root/webcam.jpeg <別に保存する場合 
 | 
 
 
localが1だった場合、FTP系の設定は意味が無い。画像変化時に生成してくれるという、triggerがうまく動いてくれない。・・ような気がする。 
後は、rc.localなどに、/usr/bin/webcam 
/etc/webcamrcと書いておけば、自動でやってくれる。あまり短い撮影タイミングにすると、無駄な負荷が発生するので、ほどほどにしよう。 
このサイト上で、ウェブカメラを実践しています。ぜひ、ご覧ください。マロンTV 
ウェブカメラについて新しく作成しました。2003/5 
 ストリーム技術を使い、MP3などの音声をリアルタイムで発信できるサーバがある。マイクを使って実際のラジオ放送も可能だ(案の定「生」も可能) 
 ラジオDJ目指してる人も良し、なにかと応用できそうです。 
 ここでは、MP3などのメディアファイルの放送をやってみる。 
 icecastサーバーとshoutとの連携。 
 このページが重くなってしまいそうなので、別ページに記述しました。 
 朝の目覚まし・・はたまた、深夜の睡眠学習(笑)など、負荷の少ない時にもサーバーには頑張ってもらおうとの計画である。他には、お昼や定刻の時報なんかもいいねぇ。 
 まずは、サウンドカードの認識をちゃんと行なわなければならない。 
 /sbin/sndconfigで、自動認識されれば素晴らしく楽である。そうでない方は、正直、ちゃんとしたサウンドカードを購入した方が時間の無駄もなく良い。安いし。 
 Xを立ち上げて、音がなりそうな適当なソフトを立ち上げて、Linuxサウンドを堪能してください。Windowsに比べ音が悪いのは、しょうがないようです。うまく調整してください。 
 ここでは、cronスケジュールで、mpg123で規定のMP3ファイルを鳴らすという簡単な仕組みです。応用次第では、sendmailのaliasesで起動するようにしとけば、メールで「帰るコール」音声なんかも簡単にできるね。 
しかしっ・・問題発生!! 
 ここでは、VIAのEPIA-C800を使ってサーバーにしていますが、これに内蔵されるサウンドカードの性なのかどうなのか?音割れがひどすぎ状態、まずは原因追求のため、ストップしてます。待っててねぇ~。 
free -mは、現在のメモリ状況を表示します。 
df -mは、ハードディスクの状況を表示します。 
ps auxは、全プロセスの状況を表示します。 
topは、システム全体の情報をリアルタイムに表示します。 
cat /var/log/messageは、システムログを表示します。 
cat /var/log/secureは、システムのセキュリティに関するログを表示します 
cat /var/log/httpd/access_logは、ウェブのアクセスログを表示。 
wは、ログインしている全員の情報を表示します。
 
lastは、いままでのログインの履歴を表示します。
 
digは、昔のnslookup、ネーム解決を行えます。 
shutdown -h 0は、最後の手段、電源落としです。 
 セキュリティやバグで、しょっちゅうアップデートがされています。より、高品質に仕上げるために、逐次更新をしなければなりません。 
 手順は、ダウンロードしてコマンドを叩くというちょっと面倒でおざなりになりがちです。製品版を購入すると、up2dateと打つだけでアップデートしてくれちゃうようです。もうちょっと安いと購入しても良いのですが・・・、いまじゃWin○owsクラと対して変わらない値段です。 
Redhat7.3エラータページ 
http://www.jp.redhat.com/support/errata/rh73/ 
(いつもの事ながらたっぷりあります。重要なものから行っていきましょう)
 
 ここでは、非常に危険なセキュア問題が発生した、OpenSSHのアップデートをしてみたいと思います。事前に、rpm -q 
opensshとして、現在のバージョンを確認しておこう。 
[root@ssd rh73err]# ll 
合計 756 
-rw-r--r-- 1 user user 217901 9月 21 15:45 openssh-3.1p1-6.i386.rpm 
-rw-r--r-- 1 user user 40535 9月 21 15:45 openssh-askpass-3.1p1-6.i386.rpm 
-rw-r--r-- 1 user user 22440 9月 21 15:45 openssh-askpass-gnome-3.1p1-6.i3 
86.rpm 
-rw-r--r-- 1 user user 296627 9月 21 15:45 openssh-clients-3.1p1-6.i386.rpm 
-rw-r--r-- 1 user user 172258 9月 21 15:45 openssh-server-3.1p1-6.i386.rpm 
[root@ssd rh73err]# pwd 
/home/user/rh73err | 
 
 
 ページで案内している全てのパッケージをダウンロードする。上記のように、新しくディレクトリーを作成しまとめておくと凄く楽になる。 
 rpm -Fvh *と叩けば、後は自動的にアップデートしてくれる。 
| 
  サーバーはどこに設置しても良いと言っていましたが、実際自分は、メインのPCのすぐ隣においていました。なぜかというと、「不安」だったからです。パーツ入れたり、ローカルで見たりとどうしても、近い場所に置いておきたい。また、エコロジーの項で言ってた、余計なものは取るという事、上記の理由からキーボードとマウスが繋がっていました。 
 通信環境の改変に伴って実践してみました。 
 コンピュータにとって少しでも最適な場所へ、涼しくて風通しが良い、埃も立たない、静かな場所へと移動しました(より電話回線が短くなるように・・もね) 
 自分の部屋内でこの条件に合ったのは、タンス(180cm)の上でした。ノイズを拾うこともなさそうです。 
 サーバーが別格の扱いとなったことで、精神的にいいです。ネットーワーク的にも分りやすくてグットです。UPS(無停電電源装置)もここでまとめておけばいい訳だし。 
 キーボードとマウスが無くなったことで、1ワット分位は稼げたでしょう。 
 スピーカー繋げて、家庭内BGMサーバー構想があったりするので、さらに好都合です・・笑 
 | 
  
繋がってるのは 
電源とLANのみ 
  
DSLモデムとルータ
 
 | 
 
 
 普段使っているPCでさえ、バックアップはおざなりになってしまっています。 
 本来バックアップ装置(外部記憶装置)なはずの、CDRやDVDRだって、くだらない画像やビデオの専用倉庫になってしまっている方が多いでしょう?市場がデカクなり、装置が安くなるのは、そんな人達がいるおかげなので、感謝なのだが。 
 ここでは、有名なRsyncについてご紹介する。 
 (執筆中) 
「待って!一服その前に・・」 
  これらの作業内容のそのものの工程は、あなたに取って大変貴重なものです。たばこに火をつける前に、なにかにメモしておきましょう。 
 バックアップは取りましたか?パーミッション設定はちゃんとやりましたか?なにか、トンでもないことを忘れていませんか? 
 最後に、まだ、処女段階なシステムにいつクラッカーが訪れるか知りません。できるだけ、全体を把握できるよう配慮してください。以下は、そのひとつです。 
ps aux > ~/pslist <現在の起動しているプロセスの一覧を保存 
 あとは、これに接続する職場の方?生徒?ご家族?・・からの意見を聞き入れて、常に最適な環境になるべく、「サーバー管理者」として責任をまっとうしてください。 
 セキュリティはとても最重要課題です。 
  
 自宅サーバーをうまく構築できたら、ぜひここに登録してみよう! 
 
「同じ自宅サーバー作ろうよ」計画! 
 
 最後に、これらの情報は、貴方様の全責任において、試行錯誤してください。身に付きます。 
ダメ押しの一言・・ 
まだ、サーバー構築は始まったばかりなんです。あとは、専門書を見てください・・なにっ~(゚Д゚)ズギャ | 
 
 
 初稿2002/8 
職業はとっても安月給なSE 
兼半端なネット技術者 
「えっおごりなの?」 連発 
NABEK 
  
 |