ほげり道

2008年06月03日

apache2のabコマンドだけ欲しい

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

インストールは不要


webサーバのベンチマークを取得したくてabコマンドが必要となった。
  • 対象サーバにはapache2がインストールされてない
  • apache2のインストールは不要
  • abコマンドだけ欲しい
  • ビルドするサーバと同環境の他サーバでも実行可能状態としたい
$ wget httpd-2.x.x.tar.gz
$ tar zxvf httpd-2.x.x.tar.gz
$ cd httpd-2.x.x
$ ./configure --enable-static-ab
$ make
$ ldd ./support/ab
$ ./support/ab -h
あとはabコマンドを他サーバへ配布するだけ。



ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール
Steve Souders スティーブ サウダーズ
オライリージャパン
売り上げランキング: 252


半袖 at 14:40|PermalinkComments(0)TrackBack(0)

2008年05月15日

codereposのアカウント申請した

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

coderepos.orgで公開しよう


アカウントが発行されたらいくつか登録したい物がある。

さらして、叩かれて。
そして人は強くなる。

筋トレに近いものを感じる。



ところで


「CPAN」は「CPAN Author」であるように、
「coderepos」の人達の事をどうやって呼ぶのだろう。

これと言って特に無いのかな。


半袖 at 03:35|PermalinkComments(0)TrackBack(0)

2008年03月14日

私にはリスタートだったの。あなたにはシャットダウンでも。

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

サーバの診断


whois.hansode.orgのリバースプロキシ用サーバが先日異常終了した。
その後、不安定なプロセスが多発。その場しのぎの対応を続けていた。

このままじゃ駄目だ。

色々と捜査してみたら、犯人を特定出来た。
犯人を逮捕した後、再起動…しようとした。

$ sudo shutdown -h now

あれ…立ち上がってこない?
あ・・・!!



haltとrebootで


リブートのつもりで、
shutdownコマンドを-hオプション指定で実行していたのだ。

超凡ミス。
サーバの目の前で作業をしていたのが、不幸中の幸い。

即時halt、即時rebootの場合は、
haltとrebootを使うのが良いね。


半袖 at 12:50|PermalinkComments(2)TrackBack(0)

2008年02月24日

Ubuntuの起動が遅い。解決。

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

何故か起動に3〜4分かかる


ThinkPad T41にUbuntuをインストールした。
何故か起動に3〜4分かかっている。

ググってみたら同じ現象に遭遇している人を発見。
解決策を書いてくれたた。素晴しい。



ブートスプラッシュスクリーンの解像度を変更して黒い表示をなおそう!より


スクリーンの解像度問題だったようだ。
$ sudo vi /etc/usplash.conf

xres=1024
yres=768
$ sudo update-initramfs -u -k all

起動が早くなった。
快適。


半袖 at 22:35|PermalinkComments(0)TrackBack(0)

2008年02月15日

影舞では機種依存文字を使うな。使うとfeed出力時にエラー発生。

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

feed出力時にエラーが出てた


理由は「機種依存文字」が混入していたからだ。
使われていた機種依存文字は「数字」。

ゴリっと一撃一発置換で対応して完了。
影舞に限らず、機種依存文字は積極的に使わない事だ。

影舞


半袖 at 10:25|PermalinkComments(0)TrackBack(0)

2008年01月21日

おじいちゃんサーバに渇!200万エントリのテーブルに「ALTER TABLE」

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

ALTER TABLE


mysql> alter table whois modify ......;
Query OK, 2038362 rows affected (1 hour 19 min 8.65 sec)
Records: 2038362  Duplicates: 0  Warnings: 0
固まってるのかと心配になるくらい待たされた…。


半袖 at 23:10|PermalinkComments(0)TrackBack(0)

2008年01月18日

1ヶ月分の日付を出力するコマンド

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

例えば「2008/01」のリストを出力。
月間レポートスクリプトを書く時などに使える。


$ export LC_ALL=C
$ year=2008; mon=1; for day in $(cal ${mon} ${year} | egrep -v '[a-z]'); do printf "%04d%02d%02d\n" ${year} ${mon} ${day}; done
20080101
20080102
20080103
20080104
20080105
20080106
20080107
20080108
20080109
20080110
20080111
20080112
20080113
20080114
20080115
20080116
20080117
20080118
20080119
20080120
20080121
20080122
20080123
20080124
20080125
20080126
20080127
20080128
20080129
20080130
20080131


半袖 at 15:40|PermalinkComments(0)TrackBack(0)

シェルスクリプトで相対パス指定したファイルを絶対パスへ変換する

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

絶対パス


$ cat abspath.sh
#!/bin/sh

echo $(cd $(dirname $0) && pwd)/$(basename $0)
$ ./pwd.sh
/home/user/hansode/pwd.sh
$ ../hansode/pwd.sh
/home/user/hansode/pwd.sh
$ /home/user/hansode/../hansode/pwd.sh
/home/user/hansode/pwd.sh



使い所


「$(cd $(dirname $0) && pwd)」をウマク利用してファイルをインクルード。

$ cat abspath.sh
#!/bin/sh

absdir=$(cd $(dirname $0) && pwd)
. ${absdir}/../etc/common

command foo bar ...
プロジェクトディレクトリごと移動してもスクリプトは動くようになる。
どのディレクトリに配置しても良い訳だ。自分はこれを良く使う。


半袖 at 15:25|PermalinkComments(0)TrackBack(0)

2007年12月19日

おじいちゃんサーバのチューニング「Hypere Straier」

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

おじいちゃんの血圧が高い

「おじいちゃんサーバ」のload averageが2.0前後をうろちょろしている。

原因を調査してみると、estmasterがメモリを使いまくっている事が分かった。
物理メモリだけでなく、スワップもまた使っている。

おじいちゃんの記憶力

$ egrep '^MemTotal|^SwapTotal' /proc/meminfo
MemTotal:       515732 kB
SwapTotal:      995988 kB
大分古いマシン。
2ヶ月前くらいにメモリを128Mから512Mへ増やした。

緊急オペ

キャッシュサイズを少なくすると改善しそうだ。
昨夜、緊急オペをする事にした。

手術内容は下記の通り。
$ cd /var/lib/hyperestraier/estmaster/; pwd
/var/lib/hyperestraier/estmaster
$ sudo cp -pi _conf _conf.0
$ sudo vi _conf
$ diff _conf.0 _conf
62c62,63
< scalepred: 2
---
> #scalepred: 2
> scalepred: 3
87c88,89
< cacheanum: 8192
---
> #cacheanum: 8192
> cacheanum: 4096
90c92,93
< cachetnum: 1024
---
> #cachetnum: 1024
> cachetnum: 512
93c96,97
< cachernum: 256
---
> #cachernum: 256
> cachernum: 128
$ sudo /etc/init.d/hyperestraier restart

手術後の経過

今朝の血圧を測ってみた。
1.0以内で落ち着いている。手術成功だ!

老体にはキャッシュを少なくするのが良い様だ。


半袖 at 10:10|PermalinkComments(1)TrackBack(0)

2007年12月11日

WebGenBot/1.0 (http://www.webgen.co.jp/bot/)

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

アクセスログを観察していたら変なbotに気付いた

何だこれ
"WebGenBot/1.0 (http://www.webgen.co.jp/bot/)"
何ものか知るために「http://www.webgen.co.jp/bot/」へアクセスしてみた。
すると…
「404 Not Found」
何だそれ。。。

半袖 at 11:20|PermalinkComments(0)TrackBack(0)

2007年10月02日

Mewのsummaryモードのキーバインドが変わった?「<」と「>」

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

■失って気付く…

キーバインドが変更されていて<と>を多様していた事に気付いた。
多用していたがゆえに、戸惑いを覚えている…。

自分は毎日「cvs update」して最新版を取得している。


▼以前
・< Summaryモードの一行目
・> Summaryモードの最終行

▼現在
・< Messageモードの行頭
・> Messageモードの行末
▼混乱時…

・Messageモードが80文字以上だと <と> の挙動に気付くけど、
・Messageモードが80文字以下だと <と> の挙動に気付かない。

 『あれ…?何も起きないぞ?』



■対策

おとなしく、Emacsのキーバインドで対応するか。
直ぐに慣れるはずだ。


▼今後
・Esc-<
・Esc->
Escはキーボードの隅っこで遠いので、
普段は「Ctrl-[」を愛用している。


半袖 at 10:30|PermalinkComments(0)TrackBack(0)

2007年09月27日

sedを使い、最初の空行を境界としてヘッダーとボディを抜き出す方法

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

■例えばメールのヘッダーを抜き出したい

メールやHTTPのデータで、
ヘッダー部分だけ抜き出したい時がたまにある。

さてどうする?






■コマンドで何とかしよう

自分はこうする。

▼ヘッダー
$ sed -n '1,/^$/p' [filename]
$ [command] | sed -n '1,/^$/p'
▼ボディ
$ sed    '1,/^$/d' [filename]
$ [commmand] | sed    '1,/^$/d'
これで解決

半袖 at 17:35|PermalinkComments(0)TrackBack(0)

2007年08月27日

今更ながらGoogle Toolbarをインストール

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

Google Toolbarをインストールした。

理由は1つ。
半袖blogのページランクを確認してみたかったからだ。

インストール後、早速確認。
結果は…4/10

個人blogではこんなものなのだろう。


半袖 at 23:00|PermalinkComments(0)TrackBack(0)

2007年07月23日

webログ解析ツール『visitors』

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

アクセス六本木のジータさんが使っていたvisitorsをホゲってみている。



■特徴的な部分だけツマミ食い

▼レポート情報
・時間帯アクセスの増減を色の2次元マトリクスと色の濃厚で表現
・時間帯アクセス同様に、日別アクセスも色の濃厚で表現
▼Graphviz によるグラフ生成
・これは他に無い
▼リアルタイム集計
・『$ tail -f accesslog | visitors --stream ...』と言う事が可能


■足りない機能
・接続元の排他処理
 ・ここはegrep等でなんとかする
・URIの同一視
 ・/foo?args=1 と /foo?args=2 を同一視したい場合
 ・これもgrepやsedなどのフィルタでなんとかする


■まとめ
・足りない所はvisitorsのラッパーをシェルスクリプトで書く
・適材適所。臨機応変に解析ツールを使い分ける。



visitorsはまだ開発途中と言う所だろうか。
今後の機能追加に期待したい。


半袖 at 11:45|PermalinkComments(0)TrackBack(0)

2007年07月21日

ユーザーのストレス軽減策

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

あいまい空きドメイン名検索 『rickdom』 を改良の続き
バックエンドの改良をした後、見える部分をカイゼンしてみた。


■概要:『検索中である事を見える化』

▼カイゼン前
・以前は検索中だと『...』を表示していた
・これだと検索中なのかがイマイチ分かり辛い

▼カイゼン方法
Ajax Loading Gif Generatorでグルグル回るGifを生成
・検索中に表示していた『...』をグルグルGifへ変更

▼カイゼン後
・レスポンスタイムが短くなったわけではない
・検索中であることを見える化する事によりユーザーのストレス軽減


半袖 at 15:40|PermalinkComments(0)TrackBack(0)

2007年07月04日

rmコマンドの i オプションで yeah!!!

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

いつもは'y'を使う

勢い余って yy と答えてしまったのに、ファイルが消えていた。
yeah!!!でもファイルは消えてくれた。


$ ls -l nagasode
ls: nagasode: そのようなファイルやディレクトリはありません

$ :&glt; nagasode
$ ls -l nagasode
-rw-r--r-- 1 hansode hansode 0 2007-07-04 14:52 nagasode

$ rm -i nagasode
rm: remove 通常の空ファイル `nagasode'? yeah!!!!!

$ ls -l nagasode
ls: nagasode: そのようなファイルやディレクトリはありません


このように、長袖は削除された。


半袖 at 14:55|PermalinkComments(1)TrackBack(0)

2007年06月08日

svn via http

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録


▼env.
OS : Debian GNU/Linux 4.0
repos : debu
trac : /home/svn/tracs http://svn.example.com/trac/debu/
svn : /home/svn/repos http://svn.example.com/repos/debu/

▼subversion
# apt-get install subversion
# mkdir /home/svn
# cd /home/svn
# mkdir repos
# svnadmin create /home/svn/repos/debu
# chown -R www-data /home/svn/repos

▼trac
# apt-get install trac
# cd /home/svn
# mkdir tracs
# trac-admin /home/svn/tracs/debu initenv
# chown -R www-data /home/svn/tracs/debu

▼apache2, apache2-modules
# apt-get install apache2 libapache2-mod-fcgid libapache2-svn
# a2enmod fcgi rewrite
# /etc/init.d/apache2 force-reload
# htpasswd -c htpasswd $(username)

▼apache namevirtual
# cd /etc/apache2/sites-available
# cat > svn.example.com
--------------------------------------------------
<VirtualHost *>
ServerName svn.example.com
DocumentRoot /home/svn/tracs

Options -Indexes
RewriteEngine On

<IfModule mod_fcgid.c>
DefaultInitEnv TRAC_ENV_PARENT_DIR /home/svn/tracs
</IfModule>
ScriptAlias /trac /usr/share/trac/cgi-bin/trac.fcgi
RedirectMatch ^/$ /trac/

<Location /repos>
DAV svn
SVNParentPath /home/svn/repos
</Location>

<Location />
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /home/svn/htpasswd
Require valid-user
Order Deny,Allow
Deny from All
Allow from 192.0.2.0/24
</Location>
</VirtualHost>
--------------------------------------------------
# /usr/sbin/a2ensite svn.example.com
# /usr/sbin/apache2ctl configtest
# /etc/init.d/apache2 reload
----------------------------------------------------------------------



半袖 at 10:25|PermalinkComments(0)TrackBack(0)

2007年05月19日

おじいちゃんサーバとの付き合い方

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

一番身近な開発サーバは、今となってはお爺ちゃんマシン。


▼スペック
HDD: 40G
CPU: PentiumIII 550MHz
Mem: 256M
Swap: 1024M

ガッツリと瞬時に処理させたいのに、老体には急な運動がキツイ。
老体とのやり取りをして数年。付き合い方は経験で分かって来る。


▼今回過負荷原因
spamd(SpamAssassin)
利便性、運用、ベイズDB管理を考慮し、spamd-rw,spamd-roとして
2つのspamdを立ち上げている。spamメールを4万通を学習させよう
としたら、著しくパフォーマンスが低下。


▼老体と上手く付き合う
・メールの登録処理には1通登録したら sleep 3 を入れる
・spamd-rwはniceを使って優先度を下げる。『nice -19』で落ち着いた。
・一度に大量のメールを登録しない。目安は100エントリ。その後にsleep 60。
・MRTGでサーバ負荷統計を定期的に観察
・時々spamcの処理中、無呼吸(spamd-rwが無反応)になるのでtimeout処理を入れる


▼老体を苛め過ぎると…
メモリ不足になる

Swapを使い始める

I/O負荷が急上昇

パフォーマンス急低下

呼吸困難となり、意識レベルが低過ぎるお爺ちゃん。


▼まとめ
・急激な運動は避ける
・適度な休憩を入れる


自分の期待に応え続けるおじいちゃんサーバ、まだまだ頑張って下さい。
若者サーバとばかり接する人には関係の無い話。

こう言う窮屈な環境はチューニングを意識させられるので大事だ。


半袖 at 12:35|PermalinkComments(0)TrackBack(0)

2007年04月25日

cfengine NAT環境下・DHCP環境でcfagentを使う時のメモ

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

・cfengineはcfservdとcfagentが鍵交換をする
・鍵ファイルの命名規則は $(ユーザー名)-$(IPアドレス).pub

NATやDHCPだとcfagentが起動しているサーバは別なのに、
cfservdにはIPアドレスを同一視され、鍵が重複する可能性あり。
実際、この状況に遭遇している。

この状況を打開する方法が無いか、リファレンスを眺めていたら発見。

http://www.cfengine.org/docs/cfengine-Reference.htmlより

5.1.18 DynamicAddresses

Hosts which are included in this list are assumed to have
IP addresses which can change with time, e.g. hosts which
are given IP addresses by DHCP or a BOOTP like protocol.

control:

DynamicAddresses = ( 128.39.74.100-200 ) # DHCP range


If cfservd receives a connection from an IP address that is
in this list, and trustkey is true, the existing key for that
IP address can be replaced with a new key, and the old key is
recorded in a "used keys" list, access is granted. If trust is
switched off, the server looks in the "used key list" to see
if the key has been seen before. If not access is refused.
If it has been seen before – it uses this earlier trust to accept
the connection and replace the IP-key binding. Note that used
keys are kept in a database for easy lookup, whereas fixed keys
are kept in files for easy administration. If host keys change or
are reinstalled on the dynamically allocated hosts, then this
database should probably be deleted to purge keys that become
illegal.

DHCP addresses have no effect on hosts that use IPV6, since
IPV6 addresses are generally issued based on an interface
MAC address and do not therefore change.


なるほど。


▼ゲートウェイが192.0.2.1となる場合
/etc/cfengine/cvservd.conf

control:
domain = ( example.org )
AllowConnectionsFrom = ( 192.0.2.1 )
TrustKeysFrom = ( 192.0.2.1 )
DynamicAddresses = ( 192.0.2.1 )
AllowUsers = ( root )


update.confやcfagent.confで trustkey=true を指定すると
NAT環境下で期待する動作をしてくれた。


半袖 at 10:50|PermalinkComments(0)TrackBack(0)

2007年04月18日

コマンドの実行結果を常時成功させる

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

シェルスクリプトでforkしているコマンドの実行結果が
失敗となると都合が悪い時の対処方法。


$ [ command ] || true



#!/bin/sh

command || true
command || true
command || true
command || true
command || true


使用例) インストーラのユーザー管理
・ユーザーが存在している状態でadduserしてもコマンドは成功扱い
・ユーザーが存在していない状態でdeluserしてもコマンドは成功扱い


半袖 at 15:25|PermalinkComments(0)TrackBack(0)

Debian Administration

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

Debian Administration

最近ここがお気に入り。
Debianであり、何よりも技術的内容だから面白い。


半袖 at 10:15|PermalinkComments(0)TrackBack(0)

2007年04月12日

cfengine

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

どうもpuppetを思い通りに動かせないのでcfengineを触り始めた。

最低限やりたい事はファイルの配布なのでcfengineで事足りる。

▼参考ページ
cfengineによるシステム管理の自動化: その1
cfengine [1/3] : A simple overview of cfengine
Cfengine-Tutorial
Cfengine-Reference

とりあえず無事に動いた。
あとは内容理解を深め、cfengineの効率良い管理方法の考察。

これでシステム管理コストを大幅に減らせる。


半袖 at 19:40|PermalinkComments(0)TrackBack(0)

2007年04月11日

久しぶりにproftpd

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

scpでファイル転送ではなくftpで転送しようとした。
しかし、検証サーバにFTP接続しようとしても接続出来ない。


■検証サーバの環境
OS: Debian GNU/Linux
proftpd: 1.3.0
補足: proftpdはtcpserver経由で起動、daemontoolsで管理


該当エラーメッセージ

2007-04-11 10:08:25.832790500 tcpserver: status: 1/40
2007-04-11 10:08:25.832797500 tcpserver: pid 26014 from 127.0.0.1
2007-04-11 10:08:25.832801500 tcpserver: ok 26014 0:::ffff:127.0.0.1:21 :::ffff:127.0.0.1::41493
2007-04-11 10:08:25.900058500 hansode - error opening scoreboard: No such file or directory
2007-04-11 10:08:25.901804500 tcpserver: end 26014 status 0
2007-04-11 10:08:25.901812500 tcpserver: status: 0/40


何だコレは。初めて見た。scoreboardが無いと言われている。
ちなみにproftpdのバージョンはこれ。


$ /usr/sbin/proftpd -v
- ProFTPD Version 1.3.0


以前は不要だったscoreboardファイルは、
とあるバージョンからか使うようになった様だ。

とりあえずstringsでproftpdを調べてみる。


$ strings /usr/sbin/proftpd | grep scoreboard
...(省略)...
error opening scoreboard: bad version (too new)
/var/run/proftpd/proftpd.scoreboard
...(省略)...


なるほど。
ディレクトリが存在していないのでディレクトリを作成。


$ ls -l /var/run/proftpd
ls: /var/run/proftpd: No such file or directory
$ sudo mkdir /var/run/proftpd



$ sudo svc -t /service/proftpd
$ telnet localhost 21
Trying 127.0.0.1...
Connected to black.
Escape character is '^]'.
Connection closed by foreign host.


まだ駄目か。


2007-04-11 10:14:05.020934500 tcpserver: status: 1/40
2007-04-11 10:14:05.020942500 tcpserver: pid 26750 from 127.0.0.1
2007-04-11 10:14:05.050110500 tcpserver: ok 26750 0:::ffff:127.0.0.1:21 :::ffff:127.0.0.1::41507
2007-04-11 10:14:05.240759500 hansode - error setting IPV6_V6ONLY: Protocol not available
2007-04-11 10:14:05.240895500 hansode - Failed binding to ::, port 21: Address already in use
2007-04-11 10:14:05.240944500 hansode - Check the ServerType directive to ensure you are configured correctly.
2007-04-11 10:14:05.242199500 tcpserver: end 26750 status 256
2007-04-11 10:14:05.242206500 tcpserver: status: 0/40


作業前にproftpd.confを上書きしてしまったのを思い出す。


$ grep ServerType /etc/proftpd/proftpd.conf
ServerType standalone


このproftpdはtcpserver経由で起動するようなrunスクリプトにしている。
standaloneだとtcpserver経由で起動するはずが無い。inetdへ書き換え。


$ grep ServerType /etc/proftpd/proftpd.conf
ServerType inetd
$ sudo svc -t /service/proftpd

$ telnet localhost 21
Trying 127.0.0.1...
Connected to black.
Escape character is '^]'.
220 ProFTPD 1.3.0 Server (Debian) [::ffff:127.0.0.1]
^]
telnet> close
Connection closed.


proftpdを再起動したら無事に接続出来た。
proftpdを触ったのは久しぶりだ。


半袖 at 10:25|PermalinkComments(0)TrackBack(0)

2007年04月03日

そろそろ専用開発環境構築をしないとね

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

嫌われがちなDebianを使おうと計画中。

どうも所属部署の偉い人にはDebian嫌いが多いんだよね。
『ったく、Linux使えねー!!』とデカイ声で罵声を浴びせる某上長。
これはDebianを使わせない為のパワハラだろう(笑)。
そんなの事は置いておいてDebian Debian。

考えているのはUML(User Mode Linux)を使う事。
ホスト環境は最小構成にしてゲスト環境はガッツリ構築して行く。

・コピーを作りやすい
・要らなくなったら停止
・必要になったら起動

何だかんだで所属グループにおける効率の良い開発環境作りが進ん
でいないので、1つの開発スタイルとして作業工程をまとめ、報告
してみるのは良い機会だろう。


半袖 at 01:00|PermalinkComments(0)TrackBack(0)

2007年02月25日

CSS着せ替えテンプレートプロジェクト

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

気軽に使え、そして手軽にデザインを切り替えられるような
テンプレートを探していた。

そして見つけたのが『CSS着せ替えテンプレートプロジェクト

> このプロジェクトは『htmlファイルには一切手を加えず、CSSファ
> イルと画像を変更することでデザインをチェンジする』ことを可能
> とする、htmlテンプレートを作ろうという試みです。最終的には複
> 数のテンプレート配布サイトが同じhtmlを基にCSSを描いていくこと
> で、多くのデザインを服を着せ替えるようにチェンジできるように
> できれば、と考えております。基本的な構想は、zen gardenの影響
> を強く受けています。

テンプレートを欲しかった理由は、作っているアプリケーションが
あまりにも素のデザインで作っている最中のやる気がどうも上がら
ない。ある程度の見栄えがあればやる気は上がるだろうと思ってテ
ンプレートを探した事が動機となっている。

ベースのHTMLさえ崩さなければCSSの切替のみで見栄えを変更可能。


半袖 at 14:00|PermalinkComments(0)TrackBack(0)

2007年01月07日

CVS via SSH時の接続先ポート番号指定方法

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

リポジトリのあるサーバの22番ポートには接続元制限をかけている。
接続拒否される環境からCVSを使おうとしたら接続出来なかった。

22番ではないポート番号で接続元制限をかけていないsshdを立ち上
げている。そっちに接続すれば解決する。しかし、ポート番号指定
で少々手こずった。


$ export CVS_RSH="ssh -p [port]"

これで解決できると思ったら -p をコマンドとして認識してくれな
かった。configを書く事で解決できるのを思い出して解決した。


$ vi ~/.ssh/config
Host [remote]
 Port [port]


無事に解決。

実用SSH 第2版―セキュアシェル徹底活用ガイド
Daniel J. Barrett Richard E. Silverman Robert G. Byrnes 小島 肇 坂井 順行 鹿田 幸治 園田 道夫 高橋 基信 根津 研介 宮本 久仁男
オライリー・ジャパン
売り上げランキング: 75599



半袖 at 19:40|PermalinkComments(1)TrackBack(0)

2006年11月01日

ひらメソッド Tips

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

雛形のページ名

・雛形/ソースファイル
・雛形/関数

これを

・00雛形/ソースファイル
・00雛形/関数

この様にしておくと、ベースページの選択リスト最上部に来るので
ちょっとだけ時間短縮となる。何もしないでいたら雛形がほぼ最下
部に位置し、ページ数が増えれば増えるほどベースページ選択する
までに時間がかかると言う悪循環。


半袖 at 12:40|PermalinkComments(0)TrackBack(0)

2006年10月26日

ひらメソッド

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

ひらメソッドを使い、とあるソースの解析中

このメソッドを使ってみると中々良い。


半袖 at 16:35|PermalinkComments(2)TrackBack(0)

2006年09月27日

久しぶりにUML(User Mode Linux)

livedoorClipに登録 livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

検証環境が欲しくなった。
UMLは手軽に検証環境を構築出来るのが良い。



■環境
Windows XP / 10.x.x.x
|
coLinux(Debian) / 192.168.0.10
|
UML(Debian) / 192.168.0.100



■作業内容

$ ./uml-manager.sh build spam
$ ./uml-manager.sh setup spam
$ ./uml-manager.sh boot spam


無事にbootしたらnetworkの設定


colinux:~# vi /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.0.100
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.10<