MIRACLE
メールサービス申込 ユーザー登録&ログイン パートナー情報
お問い合わせ FAQ サイトマップ
MIRACLE LINUXの特長 製品紹介 サービス案内 購入 サポート 技術フォーラム

プロフィール

日本発のリナックス企業、ミラクル・リナックスで奮闘する社員のブログです。

ミラクル関連リンク

採用情報

サイト検索

2010年2月

  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28            

Make: Tokyo Meeting 03

syoshidaです。

今日はMake: Tokyo Meeting 03に出かけてきました。

P1000512

面白い物がいろいろ有りました。
私的には、ニコニコ技術部(各位)の実演やプリンタ(だったもの)で奏でる音楽など
実物を見る/聞く/自分で動かすとかなりインパクトがありました。

P1000512

さて、会場にオライリーさんが出ていたので挨拶がてらブースを見ていたら、
こんなものを見つけました。

P1000545

P1000553

Debug Hacksのカンバッジが入ったガチャガチャです。 ...こんなものがあったとは(笑). もちろんほかのオライリーさんのグッズも入っていました(笑)。 P1000546 明日(5/24)も開催していますので、興味のある方は訪れてみて下さい。

面白い物が色々見られますよ。

Nintendo DSiとLinux (FONもついでに買って無線インターネット)

しばらく放置していたので旧聞になりますが、Nintendo DSiを発売週に(確か木曜日か金曜日の夕方の2次出荷を新橋のヤマダ電機で捕まえて)買いました。携帯電話文化に慣れている人にとっては、DSiは現時点で特に凄いものではないのですが、携帯電話といえば今だPreminiな自分としてはカメラを常に携帯する文化の出発点ということになりました。(30万画素でもカメラはカメラですからね。)

もうひとつ、発売当初から使えるようになっていたのが無線&DSiブラウザです。週末、もうはりきって無線LANルーターを買いにいき、やっぱりFONを買いました。

Pict0003 FONについては、みなさんご存じでしょうが、Give-One-Use-Allな無線LANポイント共有の仕組みです。まあ、私の家のような田舎の住宅街ではつないでくる人もいませんが、こちらがこれを提供することによって、都会のどなたかが立ててくれた公開FONアクセスポイントも使えることになります。


結局、こんな風にミラクルのページもDSiで表示できるよPict0002_2うになりました。(写真は最近撮ったので当時のページとは異なります。)

ただ、DSiのOperaでもちゃんと表示されるよ、というのをうちのWeb担当者に知らせたかったので、会社に持って行って無線LANの申請を出しました。接続器記名は「Nintendo DSi」で。

IT担当のT島さん(ZABBIXのT島さんと勿論同一人物です:)が「DSiだ...」と絶句(?)していましたが、「Asianux Mobileとの技術比較のため」と児玉さんに一筆いれてもらい(笑)、申請は無事通過、Web担当者に無事なページを見せた後は、会社でも私の業務に使われています。

さて、後は本当にAsianux Mobileとの比較をやらんといけないのですが、私のいるAsianux Server系のあたりまではなかなかAsianux Mobile系の真っ当な比較品が回ってきません。

いや、既に製品は出ているのですが、Asianux Mobile系の部署はいっっつも忙しく、それ以上に対応機器は引っ張りだこな状態にあります。機器ごとAsianux MobileエヴァンジェリストのT島氏(ZABBIXのT島さんとは勿論別人です:)あたりから借りると最新のβ版のデバッグ係になりかねません。それで気軽に借りるというわけにはいかないわけです(笑)

ちなみに、DSiとLinuxの私の接点は、「家のメインマシンのWindowsが起動不能になったため、全てLinuxで生活している」ということになります。DSiで音楽を聞くのに必要なAAC(MP4)エンコードもLinuxでやっています。そのあたりをいつか書きたいと思います。

P.S.
ちなみに、ミラクルのWebページはML21についてくるNetscape Navigator 4.7でも正しく情報が読み取れるようにしています。

PSチーム勉強会

お久しぶりのdtonokiです。

私のPSチームでは毎週勉強会を実施しています。
勉強会の本来の目的はボトムアップで、この会を通じてメンバーの技術レベルがより高く均質になればと思って開催しております。

第一回はカーネルダンプの調べ方で、焼き直してOSCのセミナーとして外に展開いきました。
OSCでセミナー開催しました。

その後は「Linuxカーネル徹底理解」を使って、毎週1パートごとに
実際のサポート事例を基にカーネルの俯瞰的な構造を勉強していきました。

もちろん、この本の内容は知っていて当然の内容ではありますが、
サポート事例と絡めることによって、より実戦的な形で身についたと思います。
この本は先週でおわりましたので、今週からどうしようかと、
Sambaをやるべきか、もっとカーネルを深くやるべきか、
しばらく考えていたのですが、システムプログラミングについて、
もう少し理解を深めてもよいのではないかと思い、
以下2個の本からどちらかを通して、Linuxのシステムプログラムについて、
勉強していこうかな、と思っています。
さて、どちらの本が良いでしょうか、今週は2冊揃えて検討し、来週から開始します。

もちろん、他のチームの方は「何をいまさら」かもしれませんが、
私のチームはプログラマーではないので、この辺のプログラムを書いたことがあるということも、今後の業務に生きてくるかなと思っております。

でわ

Linux初心者向セミナー@コミュニティ

syoshidaです。

さて、今回のネタは(も?)ちょっとしたお知らせです。

私が個人的に参加しているLinuxのコミュニティで
今週末にLinux初心者向にインストールパーティというイベントを行います。

  小江戸らぐLinuxインストールパーティ開催案内

1. 日時      4月26日(土) 14:00~17:00
2. 場所    東京電機大学鳩山キャンパス12号館221教室
3. 内容      (1) Linuxとは何か?
        (2) Linuxをインストールしてみる
         USBメモリへLinuxをインストール
              Vmwareを使ってWindows上にLinuxをインストール
            (3) インストール後の楽しみ方
4. 対象    Linuxに興味のある方または初心者
5. 必要事項  参加者はインストールしたいPCを持参のこと
             その他、詳細はメールにてお知らせ
6. 参加方法  install@hatochan.dyndns.org 宛にメールで「参加希望」と送る
7. 特典      参加登録して参加した方、先着20名で参加した方に1GB USBメモリをプレゼント

私はお手伝い兼講師で参加します。

主催のコミュティの小江戸らぐはかなりまったり系ですが、
毎月1回の集まってお互いに1ヶ月の成果(とはまったこと)を報告する勉強会(とその後の宴会)を、5年間以上(今月第69回)続けてきているという地味ながら、面白いコミュニティです。

小江戸(埼玉県川越)を中心としたLinuxのユーザグループなので、今回の開催場所も埼玉県の高坂駅が最寄りの東京電機大学鳩山キャンパスです。

はい、結構都心からは遠いです。池袋から最寄り駅まで1時間弱+バスで10~15分くらいです。

今回のインストールパーティというイベントは、Linuxを使ったことない人向けにWindowsの環境を残したまま、Linuxをインストールして入門してみるという内容のセミナーです。

特にMIRACLELINUXやAsianuxネタが有るわけでは有りませんが(笑)、GW初日、お暇でご興味のある方は上記連絡先まで。

サポートサイト用 Linux110番 ウィジェットの自作

どうもご無沙汰のdtonokiです。
最近はweb関連の作業している時間が多いです。

さて弊社サポートサイトは3/18日のリニューアルに向けて、
いろいろと作業中です。

今やっているのは、MacOS用のウィジェット作成。。。
なんつーか、そのまんまですが、あとは完成してのお楽しみ。
皆様にもお楽しみが用意されている予感ですので、ご期待ください。
Linux110
MacBook Airで動かしてみました。

でも本当に大事なのはコンテンツですので、ご協力いただいている皆さんありがとうございます。

OSCでセミナー開催しました

先日、このblogでも書かれていたように
先週末、オープンソースカンファレンス2008 Tokyo/Springにて開催した弊社セミナー
「Linux crash dump 読み方入門」のプレゼンテーションを
リニューアルしたサポートのwebサイトで公開しました。

セミナー定員は40人だったのですが、追加の椅子、さらに立ち見の方が出るほど、
盛況でした。

ついでにそのとき録画したセミナーの様子もgoogle videoに上げておきました。
#真っ暗で、かつ講演者が話し慣れしていない、素敵過ぎるvideoになっています(謎)。

以上、今回は完全にCMモードでお送りしました。

MacBook light は出ない??

どうも、大変ご無沙汰、9月以来の投稿です。
タイトル自体はアクセス数狙いバレバレなので、ちょっとアレ(なに?)ですが、
まあ、内容はそれほど離れていないので、ゆるしてくだされ。

WindowsVIstaやら、AsianuxServer3やら新しめのo.s.を一通り試して、
残るはMacOSのみ。
MacOSはMacでしか動作しないのでPowerBookG4 12"を入手してみました。
なんでMacBookじゃないかと?いやー軽いの出る予定なんでしょう?
じゃあ、Intel版は軽いの待ちということでPowerPC版を入手しときました。
と、言いたいところですが、私の予想としてはAppleからは1.5kgを切るものは出ないですねー
出てほしいけど、そんな無駄な製品ラインは普通無いと思います。

で、終わってしまっては、ただの戯れ言なので、PowerBook G4でのLeopardインプレ
まずは、内蔵ディスクが糞遅いので最近の新しめのものに交換しました。
Sr0013728


PowerBookDuo2300までのほとんどのポータブルは分解してきましたが、
こいつは辛い、アルミだけに変形しそうで、神経を使います。
まったく、困ったものです。

Xbench-1.3の結果は、かなりよさそう。
Pantherのままでも、Diskアクセスはだいぶ改善されたのがわかります。
つーか、交換前のT芝のDiskは酷過ぎ、故障してたのかな?
交換前
===================================
    Disk Test    26.07   
        Sequential    46.50   
        Random    18.11
===================================   
交換後
===================================
    Disk Test    40.27   
        Sequential    75.00   
        Random    27.53
===================================

準備完了ということで、Leopardをインストールしていきます。
Srimg0009
無事O.S.が入れ替わったところで、再度Xbenchを走らせてみました。

PPC 1.33/Mem 768MB/Disk 80GB/
Panther
===========================
Results    40.20   
    CPU Test    39.56   
        GCD Loop    59.16    3.12 Mops/sec
        Floating Point Basic    23.14    549.82 Mflop/sec
        AltiVec Basic    132.08    5.26 Gflop/sec
        vecLib FFT    38.54    1.27 Gflop/sec
        Floating Point Library    30.54    5.32 Mops/sec
===========================

Leopard
===========================
Results    44.60   
    CPU Test    57.44   
        GCD Loop    111.78    5.89 Mops/sec
        Floating Point Basic    45.96    1.09 Gflop/sec
        AltiVec Basic    182.18    7.26 Gflop/sec
        vecLib FFT    37.28    1.23 Gflop/sec
        Floating Point Library    41.62    7.25 Mops/sec
===========================

Leopardの方が結果がよくなってますね。
体感でも重くなった印象は無いです。
さて、Leopard本体の印象はというと、まだ使い込んでないので、
なんとも言えませんなー
MacOS8以来10年ぶりのMac体験なんですが、コントロールパネルが、
System6風ですね。




W05K

先週末、auのW05Kを土曜日に私物で購入し、そのまま(長野県の)諏訪に旅行しました。

http://k-tai.impress.co.jp/cda/article/news_toppage/37780.html

071225_1927

 

 

 

 


良いところ:

  • エリア

感想として、エリア的には良い印象です。
特急あずさで使いながら移動したのですが、途中関東山地等の長いトンネルは圏外でしたが、それ以外はエリア内でした。

AIR-EDGEだと都市部(首都圏および甲府、諏訪等)しか接続できませんでしたし、
パケットリトライを繰り返すのか、レスポンスも悪かったのですが、W05Kのレスポンスは比較的良いですね。

また、通勤路線の地下鉄(都営三田線)でコネクションを維持して駅で通信可能でした。
これもAIR-EDGEより通信可能範囲が広い印象です。

微妙なところ:

  • ハンドオーバーと接続時間

全体的にハンドオーバーが弱く、一箇所にいても割合良くコネクションが切れる感じです。
その後の再接続は問題ないのですが...

また、接続時間はNE01(Emobile)より数秒多くかかります。

あずさで移動中にトータル10回前後コネクション切断が発生しましたが、これはハンドオーバーの問題なのか機器(ファーム?)の問題なのか、良くわかりませんでした。

  • 実効帯域

下り公称3.1Mkbpsということですが、実際は八割程度のエリアが80kbps前後ということで、現状では微妙です。

参考
http://d.hatena.ne.jp/magisystem/20071222#1198315079

下手をするとAIR-EDGEより遅いのですが、レスポンスが良いので、体感的にはまあ許容範囲です。

予想通り旅行先(EV-DO Rev.A非対応エリア?)では上下80kbps程度の通信速度でした。

会社(汐留 EV-DO Rev.A対応エリア?) からだと、上下500kbps程度でたのですが、
ロケーションフリーで負荷をかけたら10分程度で切断されてしまいました....

  • 個人的なまとめ

エリアでは
au(W05K) > AIR-EDGE >> Emobile

速度(実帯域)では
Emobile >> au(W05K) >(場所により<) AIR-EDGE

通信(コネクション)安定度
Emobile > AIR-EDGE > au(W05K)

と感じました。

AIR-EDGEの代わりとしてEmobileが使えないところ(帰省、出張等)で使うカードという印象で
す。また、上記用途のため、NTT Docomoの@Freedも一応保持していたのですが、
ちょうど来年サービス終了ということで、良い代わりという感じです。

あとは今後のEV-DO Rev.A対応エリア拡大とファームウェアアップデート等に期待して、
まったり待ちます。

  • その他

今回のOSはWindowsXP SP2です(笑)。
W05KはLinuxでも使えるようですね。
http://blog.browncat.org/2007/12/auw05kubuntu_linux.html

まだ試していませんが、そんなに難しくなさそうです。

Asianux Server 3でberyl(3Dデスクトップ)

どうも、smorisakiです。

今日は、みなさんお待ちかね(?)のasianuxで3Dデスクトップについて書きます。
以前から気になっていたのですが、この土日に時間があったのでやってみました。

以下が手順となります。

<注意>
今回実施した内容は、弊社の保証外です。
くれぐれも業務システムで実施しないでください 笑

前提:
-OSはインストールしているものとして話を進めます。
-全てのパッケージを/root/Desktop/beryl/に
ダウンロードしているものとします。
-作業は全て同じターミナル上で実施します。
(途中でログアウトしたり、違うターミナルを使用しません)

1.berylパッケージをダウンロードします。

berylのサイトから以下の6パッケージをダウンロードします。

beryl-core-0.2.1.tar.bz2
beryl-manager-0.2.1.tar.bz2
beryl-plugins-0.2.1.tar.bz2
beryl-settings-0.2.1.tar.bz2
beryl-settings-bindings-0.2.1.tar.bz2
emerald-0.2.1.tar.bz2
emerald-themes-0.2.1.tar.bz2

2.以下の順でパッケージの解凍及びビルドとインストールを行います。

2-1.beryl-coreパッケージ

# tar jxvf beryl-core-0.2.1.tar.bz2
# cd beryl-core-0.2.1
# ./configure
# make
# make install

2-2.beryl-managerパッケージ

# tar jxvf beryl-manager-0.2.1.tar.bz2
# cd beryl-manager-0.2.1
# ./configure
# make
# make install

2-3.beryl-pluginsパッケージ

# tar jxvf beryl-plugins-0.2.1.tar.bz2
# cd beryl-plugins-0.2.1

# export PKG_CONFIG_PATH="/root/Desktop/beryl/beryl-core-0.2.1:/root/Desktop/beryl/beryl-core-0.2.1/libberyldecoration/"
(上記はconfigreの実施時に、beryl-coreパッケージを必要とするため、環境変数を設定しています)

# ./configure
# make
# make install

2-4.beryl-settings-bindingsパッケージ

Pyrexが無いためconfigureに失敗します。
次のURLよりPyrexをダウンロードしてインストールする
Pyrex-0.9.5.tar.gz(※)
※最新版ではインストール時にエラーが出ました

# tar zxvf Pyrex-0.9.5.tar.gz
# cd Pyrex-0.9.5
# python setup.py install

# tar jxvf beryl-settings-bindings-0.2.1.tar.bz2
# cd beryl-settings-bindings-0.2.1
# ./configure
# make
# make install

2-5.beryl-settingsパッケージ

# export PKG_CONFIG_PATH="/root/Desktop/beryl/beryl-core-0.2.1:/root/Desktop/beryl/beryl-core-0.2.1/libberyldecoration/:/root/Desktop/beryl/beryl-settings-bindings-0.2.1/"
(上記はconfigreの実施時に、beryl-core、beryl-settings-bindingsパッケージを必要とするため、環境変数を設定しています)

# tar jxvf beryl-settings-bindings-0.2.1.tar.bz2
# cd beryl-settings-bindings-0.2.1
# ./configure
# make
# make install

2-6.emeraldパッケージ

# tar jxvf emerald-0.2.1.tar.bz2
# cd emerald-0.2.1
# ./configure
# make
# make install

2-7.emerald-themesパッケージ

# tar jxvf emerald-themes-0.2.1.tar.bz2
# cd emerald-themes-0.2.1
# ./configure
# make
# make install

以上でインストールは終了です。

3.使用しているVGAカードに合わせて最新のドライバをアップデートします。

今回はgeforce6600を使用しているので、nvidiaのサイトよりダウンロードしてきて
インストールしました。

4.xorg.confの変更

/etc/X11/xorg.confに以下を追加

4-1.DeviceセクションにDriver行を追加
Section "Device"
    Identifier     "Videocard0"
    Driver         "nvidia"  ←この行
    Option         "AddARGBGLXVisuals" "True"
EndSection

4-2.Extensionセクションを追加(以下3行全部追加)
Section "Extensions"
        Option       "Composite" "true"
EndSection

5.beryl-managerを起動

# beryl-manager

1

beryl-managerは起動しますが、berylの設定を開こうとすると、
私の環境では以下のようなエラーが出ました。




Traceback (most recent call last):
  File "/usr/local/bin/beryl-settings", line 22, in ?
    import berylsettings
ImportError: No module named berylsettings

これは、berylsettingsライブラリを読めない事を意味しています。
解決の為に、以下の環境変数を設定します。

# export PYTHONPATH="/usr/local/lib64/python2.4/site-packages"

一旦beryl-managerを終了後、もう一度を起動し、ウィンドウマネージャーをberylに変更すれば準備は完了です。
# beryl-manager

2

あとは好きに3Dデスクトップをグリグリ動かして下さい。
また、youtubeにberylが動作している動画をアップしてみました。
感じはつかめるかと思います。

実は、この動画の作成と、アップロードに一番時間が掛かったというのは内緒です(笑)


SC440にメモリを8GB積む

入社一ヶ月目の新人syoshidaです。

こちらのblogにてまったり小ネタを出していきます。
よろしくお願いします。

注意:下記の記述はメーカー保証外です。
この記事を読んで行なった行為(分解など)によって、生じた損害はミラクル・リナックスおよび、メーカー、購入したショップもその責を負いません。

で、今回のねたはDellのエントリーサーバであるPowerEdgeSC440にメモリを積めるだけ積んでみました。
SC440の仕様上の最大メモリは4GB(1GB*4)です。
http://www1.jp.dell.com/content/products/productdetails.aspx/pedge_sc440?c=jp&cs=jpbsd1&l=jp&s=bsd

512MB(最小) - 4GB(最大)ECC DDR2 533MHz/667MHz SDRAM (デュアルチャネル対応) バッファ無し
DIMM ソケット x 4

個人的にいまどきのサーバ機でMAX4GBというのは少ない印象です。

が、搭載しているチップセットはIntel3000というチップセットでIntelの資料には最大メモリは8GBと記載されています。
http://compare.intel.com/pcc/showchart.aspx?mmID=24832,139&familyID=9&culture=en-US

Memory Modules    4 DIMMs (2 DIMMs/channel, 2 channels)   
Memory Type    Unbuffered Dual-Channel DDR2 667/533   
Max Memory    8 GB

 

webで探してみるとほかにも8GB積んでいる方が居るようです。
http://usy.jp/pc/poweredge_sc440_8gb/
この方はWindows2000で使っていて、その後は2台に分けてしまったようです。
Windows2000は32BitOSですので、4GBずつに分けるのは理にかなっています。

ということで、ECC DDR2 533MHz/667MHz SDRAMの2GB Unbufferedのメモリということで探してみたところ、いくつか見つかった中で安かったのが、トランセンドのTS2GDL830まあ、上位機種用の2GBのメモリモジュールですね。

オンラインショップで1枚15100円
もっと安いバルクとかもありそうでしたが、まあ、保証つきメーカー品ということで
#でも挿すハードが保証外。

というわけで、4枚購入して挿してみました。
Imgp1357




で、BIOSで見てみると。

Imgp1354




ばっちり認識しています。

さて、お約束ということでまずは、問題なく動作するであろう、64Bit(x86_64)版Linuxで使ってみます。
ついでなので先日リリースされたばかりのAsianux Server 3を使ってみます。

# uname -a
Linux xxx.miraclelinux.com 2.6.18-8.10AX #1 SMP Tue Aug 14 04:52:29 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux

# cat /proc/meminfo
MemTotal:      8108504 kB
MemFree:         45460 kB
Buffers:         24924 kB
Cached:        7516728 kB
SwapCached:          4 kB
Active:        2697420 kB
Inactive:      4966468 kB
HighTotal:           0 kB
HighFree:            0 kB
LowTotal:      8108504 kB
LowFree:         45460 kB
SwapTotal:     2096440 kB
SwapFree:      2096436 kB
Dirty:          799808 kB
Writeback:           0 kB
AnonPages:      122268 kB
Mapped:        2558540 kB
Slab:           169540 kB
PageTables:      16728 kB
NFS_Unstable:        0 kB
Bounce:              0 kB
CommitLimit:   6150692 kB
Committed_AS:   837592 kB
VmallocTotal: 34359738367 kB
VmallocUsed:     66792 kB
VmallocChunk: 34359671287 kB
HugePages_Total:     0
HugePages_Free:      0
HugePages_Rsvd:      0
Hugepagesize:     2048 kB

まったく問題ありません。

さて、メモリを大量に使う環境というと...まあ、DBか仮想化ですかね。
ということで手っ取り早くVMware serverで2GB*3のVMを起動。

top - 16:22:31 up  1:34,  4 users,  load average: 2.81, 1.74, 1.06
Tasks: 104 total,   1 running, 103 sleeping,   0 stopped,   0 zombie
Cpu(s):  1.7%us, 60.4%sy,  0.0%ni, 27.1%id, 10.7%wa,  0.2%hi,  0.0%si,  0.0%st
Mem:   8108504k total,  8062260k used,    46244k free,    23312k buffers
Swap:  2096440k total,        4k used,  2096436k free,  7510308k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
4425 root       5 -10 1713m 1.4g 1.4g S   81 18.1  23:17.51 vmware-vmx
4488 root       5 -10  803m 520m 516m S   33  6.6   8:37.03 vmware-vmx
4518 root       5 -10  593m 322m 317m S    9  4.1   8:13.21 vmware-vmx
2683 root      15   0  261m  26m  16m S    0  0.3   0:01.43 kicker
2681 root      15   0  223m  23m  11m S    0  0.3   0:00.39 kdesktop
2711 root      15   0  239m  22m  14m S    0  0.3   0:00.88 konsole
2669 root      15   0  246m  18m  11m S    0  0.2   0:00.17 kded
2641 root      16   0  130m  18m 1652 S    0  0.2   0:00.06 scim-launcher
2679 root      15   0  218m  17m  10m S    0  0.2   0:00.22 kwin
2470 root      15   0  111m  15m 4300 S    0  0.2   0:21.82 X
4193 root      15   0 17804  15m 4284 S    0  0.2   0:10.77 vmware-serverd
2697 root      15   0  235m  10m 6552 S    0  0.1   0:00.02 knotify
2695 root      15   0  197m  10m 7296 S    0  0.1   0:00.03 klipper
2678 root      15   0  193m 9360 6844 S    0  0.1   0:00.01 ksmserver
2666 root      15   0  180m 7824 2720 S    0  0.1   0:00.02 scim-panel-gtk
2657 root      16   0  186m 7480 5376 S    0  0.1   0:00.05 kdeinit
2692 root      15   0  189m 7188 5840 S    0  0.1   0:00.01 axtu-notifier-g
2663 root      15   0  195m 6796 4788 S    0  0.1   0:00.01 klauncher

これもOK

では次はPAEカーネル

(PAEの詳細はwikipedia等をご参照ください。)

# cat /proc/meminfo
MemTotal:      8243276 kB
MemFree:       5599372 kB
Buffers:         43260 kB
Cached:        2327568 kB
SwapCached:          0 kB
Active:        1097780 kB
Inactive:      1362368 kB
HighTotal:     7404016 kB
HighFree:      4839360 kB
LowTotal:       839260 kB
LowFree:        760012 kB
SwapTotal:     2096440 kB
SwapFree:      2096440 kB
Dirty:          135124 kB
Writeback:           0 kB
AnonPages:       89284 kB
Mapped:        1008472 kB
Slab:            32092 kB
PageTables:       5988 kB
NFS_Unstable:        0 kB
Bounce:              0 kB
CommitLimit:   6218076 kB
Committed_AS:   786432 kB
VmallocTotal:   116728 kB
VmallocUsed:      2992 kB
VmallocChunk:   113520 kB
HugePages_Total:     0
HugePages_Free:      0
HugePages_Rsvd:      0
Hugepagesize:     2048 kB

# uname -a
Linux xxx.miraclelinux.com 2.6.18-8.10AXPAE #1 SMP Tue Aug 14 05:01:48 EDT
2007 i686 i686 i386 GNU/Linux

同様にVMを2GBのVMを3個上げてみます。
top - 18:16:15 up 53 min,  5 users,  load average: 1.96, 1.01, 0.73
Tasks: 106 total,   2 running, 104 sleeping,   0 stopped,   0 zombie
Cpu(s):  1.8%us, 26.3%sy,  0.0%ni, 71.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   8243276k total,  4044684k used,  4198592k free,    48548k buffers
Swap:  2096440k total,        0k used,  2096440k free,  3682120k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
4057 root       5 -10 1206m 939m 934m S   32 11.7   2:14.23 vmware-vmx
3769 root       5 -10  716m 435m 431m S   10  5.4   4:43.54 vmware-vmx
3802 root       5 -10  658m 383m 379m S    9  4.8   4:29.57 vmware-vmx
2391 root      20   0 49308  19m  13m S    0  0.2   0:00.70 kicker
3184 root      15   0 58832  19m  13m S    0  0.2   0:00.87 konsole
2406 root      15   0 58188  19m  13m S    0  0.2   0:01.14 konsole
2389 root      20   0 44808  15m  10m S    0  0.2   0:00.42 kdesktop
3711 root      15   0 18056  15m 4228 S    1  0.2   0:03.69 vmware-serverd
2371 root      15   0 45152  15m  10m S    0  0.2   0:00.25 kded
2387 root      15   0 44792  14m 9.8m S    0  0.2   0:00.35 kwin
2364 root      15   0 45152  14m 1644 S    0  0.2   0:00.13 scim-launcher
2239 root      15   0 34412  11m 3852 S    0  0.1   0:29.90 X
2403 root      15   0 33544 9140 7152 S    0  0.1   0:00.03 klipper
2405 root      15   0 39680 8580 6176 S    0  0.1   0:00.03 knotify
2386 root      17   0 32940 7976 6336 S    0  0.1   0:00.01 ksmserver
2380 root      15   0 38200 6796 3476 S    0  0.1   0:00.05 scim-panel-gtk
2400 root      15   0 22660 6320 5268 S    0  0.1   0:00.02 axtu-notifier-g
2362 root      15   0 31360 6268 4872 S    0  0.1   0:00.05 kdeinit

こちらもよさそうですね。
微妙にメモリの使いたかたが違う気もしますし、原理的にPAEの方が遅そうな気がしますが、
とりあえずVMの起動に問題はなさそうです。
かつ、今回の目的からは外れますので、検証は省略。

ということで今回のねたは以上。

今実行中のシェルを知るには

久しぶりの投稿となります。smorisakiです。

皆さんは、掲題の事を調べる時にどうされますか?
ログインシェルに関しては、/etc/passwdをみたり、以下ように環境変数を調べれば確認できます。

$ env | grep SHELL

ただ、途中でシェルを切り替えた場合は、上記の方法では分かりません。
例えば元々がbashを使用していて、ただのshに切り替えた時、

$ sh

当然環境変数は、切り替え前のままなので、確認しても、bashのままです。

$ env | grep SHELL
SHELL=/bin/bash

そこで以前の私は、以下のようにしてpsで自分のプロセスを表示させて確認していました。

$ ps -efH | grep 自分のUID

$ ps -efH | grep 512
512       7421  7420  0 22:07 pts/0    00:00:00         -bash
512       7547  7421  0 22:25 pts/0    00:00:00           sh    ←ココ!
512       7548  7547  0 22:25 pts/0    00:00:00             ps -efH
512       7549  7547  0 22:25 pts/0    00:00:00             grep 512

しかしはっきり言って、全くスマートな方法では無いので、もっと良い方法が無いかなと思っていたのですが、ありました。

こんな感じです。

$ ps $$

コマンドの意味を説明しますと、ps コマンドにシェルの特殊変数$$を渡しています。

$$はご存じの通り、現在実行中のシェルのPIDが入っています。

そうすると現在実行中のシェルプロセスが表示されます。

$ ps $$
  PID TTY      STAT   TIME COMMAND
7547 pts/0    S      0:00 sh

ライカM4 ファインダー2重像の縦ズレを調整する方法

いつも物欲ネタのdtonokiですが、今回は珍しく技術的ネタを。。。
なんかどんどんLinuxの話から離れていっているような、どこかで戻さなきゃ。<私以外の人が。。。
ある意味「とめろよ!」と言うボケ&ツッコミの境地です。

というわけで、いきなりカメラの話で恐縮ですが、
自分と同じ年齢の機械式カメラを使ってます。<と言うよりは所有しているが正しいのですが。。。
写真を撮るのに使うのではなく、夜な夜な撫でるという使い方です。<かなりアブナイ趣味

Sr0012691

会社のそばの中古カメラ屋で手に入れたのですが、安かったぶん、本来は使う前には4万ほど払ってオーバーホールが必要です。
ただ、そんなに真剣には使わないので、自分で軽く調整するだけで済ませました。

一番気になったのは距離計の2重像縦ズレです。<なんのこっちゃ。
で、その方法は。。。<誰も知りたくないかな?
トップカバー前面のマイナスネジを外した所に見える、中の隠しマイナスネジを回し調整します。
Sr0012693
時計回りに回すと、距離計側の像が上がります。

これはM4に限らずM2やM3も同様です。

M6やM7(おそらくM8も)はネジの変わりにライカマークの赤バッジをはがすと、このネジが見えます。

以上、かなり場違いですが、困っている人にはちょっと役に立つかな。。。

本当はトップカーバーを外してファインダーのホコリも掃除したいのですが、Lシールがついていたので、ちょっと躊躇してます。
踏ん切りがついたらトップカバーも外してしまうかも。。。<って続くのかこのシリーズ!

 

うーん、ちょっとヤバイカナー

passwdファイルを直接編集する為のコマンド

どうも、smorisakiです。

Linuxではユーザー情報の管理にはそれぞれ以下のコマンドが用意されています。

追加:useradd
削除:userdel
変更:usermod

これらで編集された情報はデフォルトでは/etc/passwdファイルに記述されます。
このファイルはテキスト形式ですので任意のエディタを使用して直接変更
することが可能です。

※以下はviを使用している前提で記載します。
ここで問題になるのですが、直接編集できるので、複数の人が同時に
passwdファイルにアクセスする状況が無いとも限りません。

もし同時アクセスして、passwdファイルが不完全な状態で保存されてしまいますと、
システムにログインできない状況に陥る可能性があります。

こうした状況を避けるために、Linuxではpasswdファイルを編集するために
「vipw」という専用コマンドが用意されています。

実際使用してみると、以下のような感じです。

# vipw
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
・・・

見た目viと同じです。編集の仕方もviと同じです。

ただし、違う点としまして、既にvipwを実行中の場合、別でvipwやユーザー管理コマンド
を使用しても、以下のような表示がされて編集できません。

# vipw
vipw: そのファイル password は使用中です (現在は /etc/ptmp)

# useradd test1
vipw lockfile (/etc/ptmp) is present.

また、passwdファイルを編集後、続けて/etc/shasowファイルの編集に
移ることが可能です。

同様に/etc/groupファイルを編集する専用コマンドとして「vigr」があります。

というわけで皆さん、passwdやgroupを直接編集する時は、
「vipw」・「vigr」を使用しましょう。

The first setting

anaitoです。

今回はRedHat系を使うときにまず何を変更するか?というのを自分のPCから拾ってみました。
あくまでサーバ構築などの検証目的にしか使わないので自分と趣味が合わない箇所って感じですが。

その1
vim-enhancedを入ってなければ入れます。サーバを設定する上で色分け表示されるというのは設定時のtypoを防ぐ意味でも有効です。そうそうRHEL5はrootだとviにされてしまうので萎えました。。。

その2
viewのシンボリックリンクを張り直します。vim-enhancedが入っていれば/etc/profile.d/vim.*でvi=vimになりますがviewは/bin/viに張られたままです。
これをview -> /usr/bin/vimと変更しています。もちろんviewでも色分けがほしいからですが。

その3
普段terminalは黒バックを使っているので.vimrcでちょこっとハイライトを直します。黒バックなので検索結果の黄色地に白文字は見にくいんですよね。
highlight Search term=reverse ctermfg=0 ctermbg=3
今は、vim7に入れ替えているのでmenuの色やら色々変えてますけどね。

その4
ケロベロス関連のパスを/etc/profile.d/krb5.*をいじって後ろの方にします。パッケージは入れるけどあんまし使わないし。
kerberos対応のftpコマンドとかはメッセージがちょっとイヤ。

その5
あとはネットワーク周りかな。IPv6が有効だとnetstatの表示が見にくいんですよねぇ、使ってないのに。
/etc/modprobe.conf
alias net-pf-10 off

MLはいりませんが、RedHatならAPIPAが邪魔なので
/etc/sysconfig/network
NOZEROCONF=yes

とかしたり。これもルーティングテーブル見たときになんか感じ悪いので。。。
誰の許可でそのルーティング入れたんじゃいと普通なら思うはず。

この程度変更すればどのディストリビューション(でもRH系)もストレスは感じないですね。
まあ、これ以外まったく触らないか?ってワケでもないですけどチューニングだし話がズレるので取り上げません。

auditdの使用方法

どうも、smorisakiです。

今日は、以前調べたauditdについて書きます。

auditdは名前の通り監査の為に使用するものです。監査という言葉は最近SOX法等でよく聞きますよね。

私の好きなwikipediaにて「監査」を調べると、以下とあります。

>監査かんさauditまたはauditing)とは、ある事象・対象に関して、一定の規準に照らして証拠を収集し、その証拠に基づいて何らかの評価を行い、評価結果を利害関係者に伝達すること。

上記意味からすると、ある基準を設定し、そのログを取得する機能を持ったデーモンということになります。

前置きはこの位にして実際の使用方法は以下となります。

今回は、ファイルをコピーするコマンドcpを実行した場合にログを出力する設定をしてみます。

実行環境は以下となります。

OS:CentOS4、auditd:1.0.12-1.EL4

(1)まず/etc/audit.rulesにログを取得する条件(cpを実行した場合)を記述します。

-a entry,never -S access・・・1
-w /bin/cp                         ・・・2

意味を説明します。

まず1はシステムコールaccessに対して監視をしない(never)。

2は「/bin/cp」という文字列を監視する。

(2)auditdサービスを起動します。

# service auditd start

(3)適当にcpコマンドを実行して下さい

$ cp test1 test2

/var/log/audit/auditd.logを確認すると以下の様なログが出力されています。

type=SYSCALL msg=audit(1176221346.715:116): arch=40000003 syscall=5 success=yes exit=3 a0=bffbbc44 a1=8000 a2=0 a3=8000 items=1 pid=19544 auid=4294967295 uid=500 gid=501 euid=500 suid=500 fsuid=500 egid=501 sgid=501 fsgid=501 comm="cp" exe="/bin/cp"

・・・・・・

見難いですがログからは、uid500がcpを実行したことが見て取れます。

今回は例として書きましたが、もっとちゃんとした設定を書けば見やすいログが取得出来るかもしれません。(誰か考えて下さい 笑)

ボンジョルノ Capistrano!

メモエントリです。anaitoです。

タイトルの通り、ML4.0でCapistrano を使ってみました。まあ、私は開発者ではないので本来のデプロイとかは全く使わず(理解してないのが正解)shell機能を試しただけですが。。。
ご多分に勢いで作業をしているので動作保証するものでは全くありません。あしからず。

まずは、rubyを入れ替えたいので削除します。コマンドが頭悪そうな感じですが気にしないで下さい。

# rpm -qa | grep -e ruby -e irb | xargs rpm -e --nodeps

今回はCentOSのTestingからSRPMを取ってきてビルドしますので足りないemacsとXaw3dパッケージはDeveloperCDから入れときます。

# cd /usr/src/asianux/SRPMS
# wget http://dev.centos.org/centos/4/testing/SRPMS/ruby-1.8.5-1.el4.centos.src.rpm
# rpmbuild --rebuild ruby-1.8.5-1.el4.centos.src.rpm
# cd ../RPMS/i386
# ls ruby* | grep -v debug | xargs rpm -ivh --nodeps
# ruby -v
ruby 1.8.5 (2006-08-25) [i386-linux]

で確認出来たらrubygemsを入れましょう。

# mkdir -p /usr/src/ruby && cd /usr/src/ruby
# wget http://rubyforge.org/frs/download.php/17190/rubygems-0.9.2.tgz
# tar xzf rubygems-0.9.2.tgz && cd rubygems-0.9.2
# ruby setup.rb
# gem -v
0.9.2

接続できるか確認してみる

# gem list --remote

それじゃあ、capistranoインストール(依存するものは入れちゃう)

# gem install capistrano
# cap -V
Capistrano v1.4.1

単純なrecipeファイルを作る。shell機能試すだけならちょこっとだけ。

recipe.rb
######
set :user, "anaito"
set :password, "hogehoge"

role :local, "localhost", "host01", "host02"
######

各サーバでアカウント使えるようにして下さい。LDAPとかでもいいですけど。
パスワードはオプションでも渡せました。

あとは実行あるのみ。

# cap -f recipe.rb shell

そいでもってこんなのとか実行。

cap> uname -r
[establishing connection(s) to localhost, host01, host02]
    [localhost] executing command
    [host01] executing command
    [host02] executing command
[localhost] 2.6.9-42.10AX
[host01] 2.6.9-42.10AXsmp
[host02] 2.6.9-42.7AXsmp
    command finished
cap>

便利~♪

でも、実はTeraTermProAssistantを使ってたりするんですが。。。

さて、次はpuppetかな。

Virtual PC on Vista Home Premium

どうも、Aeroが見たいが為に家のPCのOSをVistaに変更したsmorisakiです。

今回はそこで発生した問題について書きます。

私は家でLinuxをさわるときは、VMware上に作成した仮想マシンを使用していました。ところが、VMwareはVistaには対応していなかったのです!Vistaに変更後気付きました。

そこで、microsoftが出しているVirtual PCを使用することにしました。最新verの2007はVista対応を謳っていましたし。

いざサイトにいってみると、必要システムの欄にVistaはあるのですが、私の使用しているHome Premiumが無いのです。

Vista上で仮想環境は諦めるしか無いのかなと思いましたが、念のためインストールを試してみることにしました。

インストールしてみると、対応していない云々の警告が表示されるのですが特に問題無く完了しました。

次に、Linux(asianuxが手元になかったのでCentOS4)をインストールしました。こちらも特に問題は無かったのですが、インストール後の再起動が終わり、ログインするところで問題が発生しました。

仮想マシンの時刻の進み方が異様に早く、ログイン時のパスワードを入力する前にタイムアウトになってしまうのです。(1秒に1分程進むので人間の入力では無理ですw)

ネットを調べてみると、次のようなFAQを見つけました。意外と有名みたいですね。でこの通りに起動パラメータを変更すると、今度はログイン出来ました。

Cent4 画像はxが起動していますが、ここでも問題があり色数の設定が24bitでは動かず、16bitにすると動きました。大変だったー・・・

最近知ったんですけど、現在公開中のVMware Workstation 6.0 ベータ版はvista上で動くみたいですね 笑

今日のお題はswap

ごぶさたです。anaitoです。

どうもウチのブログというのは“お題”的なものが盛り上がるような気がしています。ま、みなさん、なにかを解決したくてウズウズしているんでしょうかねぇ。

そんなわけで日々の中で拾ってきたネタを書いてみたいと思います。

先日、スワップするかどうか確認するというお題が近所で起きたんですね。
スワップの状況は

# swapon -s

で確認出来ますよね。でもUsedが0から変化するかが確認したいのですよ。
ちなみに諸々の事情によりプログラム作っちゃうのは無しなのです。そんなのウチには出来る人いっぱいいますけどね。
まあ、個人的にはいずれはNIHシンドローム的になりそうなのでそういう対応は好きではありませんけど。

時間もあまり余裕がなかったので軽く確認して私が出した答えは以下の手順でした。
※メモリ256MのVMware上のMLで試してました。

# mkdir /tmp/hoge
# mount -t tmpfs -o size=300m tmpfs /tmp/hoge
# dd if=/dev/zero of=/tmp/hoge/foo bs=1024 count=300000
# swapon -s

tmpfsのパーティション作って実メモリ以上のファイル作ってみますた。。。
ま、微妙やね。。。

さて、もっとスマートなのはなんでしょうか?

多分、早川健風の人が現れて、

「その答え、ニッポンじゃあ、2番目だ!」

的なことを言ってくれることを期待していますw

(2番は無いかな。ベスト10入りすればいい方かなぁ)

きっちりログを分けたいの

ネタで悩んでいるお隣さんまでのつなぎです。anaitoです。

MiracleLinuxをはじめとするLinuxでは、ログのローテーションはlogrotateを使うのが普通です。

ウチのデフォルトであれば、/etc/cron.dailyにlogrotateのキックが突っ込まれているので4時02分にローテーションされます。logrotateの設定を変更してweeklyからdailyに変更すると確かに毎日ファイルがローテーションされているのが確認出来ます。

ですが、、、ローテーションしているタイミングは朝方です。つまりある一日のログを確認するには2ファイル確認する必要があります。(たとえweeklyでもローテーションするときにはファイルを跨ぐ日がでてしまいますね)

なんかイヤですね~。しかし、

「2ファイル確認すればええやん。」とあなたは妥協したとしましょう。

するとlog4jなら簡単なのにフフン♪と通行人に言われることうけあいですorz

そんな風に追い込まれれば早く妥協を撤回してなんとかしなければいけませんよね?

そんなわけで、考えていきましょう。

まず考えつくのが/etc/cron.daily(要するに/etc/crontabの設定)でキックするのをやめてrootユーザのcrontabに0時ぴったりにキックするようにすることですね。私の経験上、これで98%ぐらい達成出来ます。あとの2%は前処理やらなんやらで取りこぼしがあるかもしれません。

じゃあ、取りこぼしを加味して2ファイル確認すれば、、、ってなんの解決にもなっていませんネ!?

こんな時は標準のsyslogdではなくて、syslog-ngを使ってみましょう。MiracleLinux 4.0には入っていますし、syslog-ng本家のソースにはspecファイルが含まれるのでrpmにするのも簡単です。MLの場合は、chkconfigでどちらか一方が起動するようにして下さい。

細かくは割愛しますが、syslog-ng.confのなかではMACRO機能が使えます。今回のような場合であればdestination設定に$DAYを使えば日が変わると勝手に日付を変更して出力するようになります。これは外部プログラムによるものではないのでlog4jのDailyRollingFileAppenderと同じような動きになります。

MACROについてはこちらのTable 3.6.を参照してみて下さい。

このMACROを使って極端に合理的な設定をするとdestination, filter, logの設定は3行で済んじゃいます。

destination d_net { file("/var/log/$FACILITY/$YEAR-$MONTH-$DAY.log"); };
filter f_all { level(info..emerg); };
log { source(s_remote); filter(f_all); destination(d_net); };

気をつけないといけないのは無いディレクトリはつくってほしいのでoptionsのcreate_dirs(yes);ですか。

どうです?スッキリしてますよね。

ちなみにremove_if_olderなんて設定もあるのでファイルを削除することも出来ます。最近では設定例などもよく見かけるようになったので試してみては如何でしょうか?

気楽にtmpfsを使ってます

最近は、MySQLにtmpfs使ったりするネタなんかが溢れていますが小ネタってあんまり聞かないので自分の例を。

普段、spamassassin使っているので~/.spamassasinをtmpfsでマウントしてます。
/etc/fstabはこんな感じ(64mもいらんけど)

tmpfs  /home/anaito/.spamassassin tmpfs  defaults,size=64m,gid=anaito,uid=anaito,mode=700 0 0

ファイルの方は定期的にバックアップしているので再起動時にはそこから復帰させてます。多少学習が戻ってもたいしたことないし。

あとはfirefoxのCacheディレクトリに使ったりとかもしています。

サービスものでいうとOpenLDAP向けに/var/lib/ldapをtmpfs化してみたりしたのですが、参照系で使う分にはほぼパフォーマンスは変わらない気がします。これは、DirectoryMarkで計ってみたので感覚だけってわけではないですよ。まあ、ファイルサイズ的には小さいのでキャッシュに入っちゃうんでしょうね。

ただ、更新系は速くなりますよ~。
DirectoryMark用に数万エントリとかLDIFから登録するのに普通にやっていたらエラく時間がかかりますが、tmpfsならあっという間ですし。(ちょっといいすぎかも)あとは出来上がったファイルをコピーして使えばいいだけ。ただ、本番運用でmasterに使う勇気はないですが。

あと、一般的には/tmpとかに使ったりするのかもしれませんが私は使いません。/tmpにリブートしても残っていてほしいファイル置いたりするので。ま、これは習慣的なもんでしょうけど。

メモリ余っている方は、もっと使ってもいいんじゃないでしょうか。

ファイル名の文字化けを元に戻す方法

久しぶりの投稿となります、smorisakiです。

今日は文字化けしたファイル名を元に戻す方法について書きます。

以下のように、文字コードが異なる環境で作成されたファイルを
別の環境で閲覧しようとした時にファイル名が文字化けする場合があります。

# ls
?e?X?g?t?@?C??.txt

私は以下の方法を用いて元のファイル名に戻しています。

まず文字化けしたファイル名を記述したファイルを作成します。
# ls > filename

次にmvとnkfを使用して文字化けしたファイル名をリネームします。
# mv `cat filename` `nkf -w filename`

※以下は現在のシステムの文字コードがUTF-8の場合です。
 環境によってnkfのオプションを変更して下さい。

これでファイル名を元に戻すことができました。
# ls
テストファイル.txt

MIRACLE LINUX v4.0 on VMWare fusion

12/21にVMWare fusion for Macのβ版が一般公開されました。それに伴い、VMWare fusionでMIRACLE LINUXを動かしてみようというものです。

VMWare fusion for Mac

あっけなく動作しました。ゲストOSのプロセッサ数を2つにすればsmpカーネルも起動できます。このあたりはParallelsにはないところですね。

Vmware_fusion01




動作検証しているのはMacBook(Core Duo)なので、
ワイドディスプレイ(1280x800)です。現在ワイドディスプレイで表示できるLinuxで私が確認できているのはFedora Core6のみですが、VMWareなのでvmware-toolsをインストールすれば、1280x800の解像度でXを立ち上げることが可能です。

Vmware_fusion02

背景のAsianuxの文字が横に伸びているのに少し違和感を覚えました :-) 基本的にVMWare 5.5系のものとほとんど変わりませんが、まだスナップショット機能がありませんでした。また、Macということだけあって、iPodや、iSightを接続してゲストOS上で使えるらしいです(iSightだけ試しました)。そういえばBluetoothも利用できましたね。ただしホストOSでは使えなくなります。

Vmware_fusion03

ちょっと気になったのはネットワークです。無線LANで接続している場合、ゲストOSでは設定をNATにしないと接続できませんでした。また64ビットOSがインストールできませんでした。このMacbookはIntel Core Duo (Yonah T2400)なのでVT対応ですがIntel64(EM64T)対応ではありません。無理…かな。



Vmware_fusion04



ちなみにParallelsでもParallels toolsをインストールすればVMWare toolsと同じことができるのだと思ったのですが、こちらはまだWindowsのみ対応。ワイドディスプレイでMIRACLE LINUXのデスクトップを表示できたのは、自分がこれが初めてです。VMWareのビデオドライバに助けられました。

スクリプトにも寿命がほしい

今年ももうすぐ終わりですね。anaitoです。

私はこの会社でクラスタなんぞもやっているのですが(まあ、もっと以前からやってますけど)共有ディスクは高いし、商用ソフトを入れてミラーもするのも、「う~ん」なんて場合は、rsyncとかで同期したりなんてのがお手軽ですよね。(最近ならCapistranoとかでいけるんですかね?)

そんな時に、私は一般的ですがさらにmakeを使うようにしています。makeを使うことによりファイルが更新した時だけ同期処理を行えるので無駄なトラヒックを減らせますし。ま、こんな感じのですよね。

/root/sync.ts: /etc/passwd
      rsync -aqz -e ssh /etc/passwd 192.168.1.1:/etc/passwd && touch /root/sync.ts



で、ですねぇ、定期的にmakeをキックするとなるとcronあたりでしょうね。
ですが、みなさん不用意にcronに登録していませんか?クラスタ組む時はフェイルオーバーなんかは当たり前なので手堅くキックしたいものです。

例えば、2重起動を防ぎたいなんて場合はみなさんどうしているんでしょうか?
以前のプロセスが残っていたらkillするとか?でも、フェイルオーバーもあるかもしれないので次の起動は期待したくないですよね。

そんなわけでシェルスクリプトにちょこっと加えて寿命を持たせちゃいましょう。

#!/bin/bash

ALIVE_TIME=30
trap "exit 1" INT
(sleep $ALIVE_TIME; ps $$ && kill -INT $$; sleep 1; ps $$ && kill -KILL $$) &> /dev/null &

--
~処理~
--

exit 0

ま、こんなことはどこでもやられている事だと思いますがいざググると探せないんですよねぇ。それとももっと美しい方法があるんでしょうか?

教えてほしいもんです。。。

javaって。。。(フォント編)

みなさん御無沙汰してます toyoshima です。一部読者のかたから反響を頂いてはいたのですが、会社の組織が変わってしまってブログまで再編されてしまいました。久しぶりに KYOPON のことでも書こうかなと思っていたのですが、javaのツールを使うことが増えてきたのでHOTな話題(といっても個人的にですが)ということでjavaネタです。

 ミラクル・リナックスではDTにもMIRACLE LINUXを使ってみようなんてことをやっているのですが、なかなかこれが大変です。LinuxはWinに比べると圧倒的にDTツールが少ないのでこれを補うためにどうしてもjavaツールを使うことになります。

 私も「javascript」にはじまり、HP−UX上で「javaアプリGUI付き」を作ったり、はたまた某庁向けに「servlet+Oracle」でjvmの限界に挑んだりしていました。ミラクル・リナックスに御世話になってからはしばらくjavaには絡んでいなかったので、「おぅ!久しぶり」と言う感じでjavaツールを使ってます。

 そんな中、サーバOSのMIRACLE LINUXでjavaアプリを使おうとすると日本語が微妙に化けていることに気づきました。「ー」が「づ」みたいな字に化けているのです。そういえばjavaアプリでは日本語の扱いが難しかったなぁと、設定ファイルを探してみると。なんと知らない間に「font.properties」が「fontconfig.properties」に変わっていました!

※/usr/lib/jdk/jre/libにありますのでMIRACLE LINUXをDTで使って折られる方は是非のぞいてみてください。(非常にレアケースとはおもいますが)

 今回は「ー」が「づ」に化けることへの取り合えずの対策をお教えします。


  1. propertiesファイルを作る
    /usr/lib/jdk/jre/lib で fontconfig.RedHat.properties.src を fontconfig.RedHat.properties にコピーする
  2. フォント検索に日本語を追加する
    # Search Sequences

    #sequence.allfonts=latin-1
    sequence.allfonts=latin-1,japanese-x0208
            • ここを追加します
  3. 試す
    私は gantt と freemind を使っています。

です。是非お試しを!

MIRACLE LINUXでOracleのrunInstallerを実行する場合のちょっとした注意

OracleのDatabaseやApplication Server(AS)をインストールするにはOracleの共通インストーラである Oracle Universal Installerを起動する必要があるんですが、ちょっとした事で画面が見にくくなってしまう事があります。
どうなるかというと、こんな風に。

J2ee1_2 

これがどういう状態かというと、文字が大きく表示されていて、 画面内の表示がズレているんです。特にボタンが重なってしまっています。この画面なら、まぁ、困ることはないのでしょうが、こんな画面はどうでしょう?

J2ee15_1

ぱっと見だと分かりづらいのですが、この画面では入力の必要なフィールド(パスワードの再入力)がほとんど見えない状態になってしまっています。しかも困った事にOUIの画面はサイズが固定されていて広げられません。本来ならばこうなります。

J2ee10

まぁ、それなりに慣れた人ならばエラーが起きれば何が問題かは何となく気がつく事ができるんでしょうけど、これが気がつかないときはなかなか気がつかないもので、妙に時間だけが過ぎていき空しくなる事も。。これはOUIの表示がディスプレイ解像度1024×768に併せてあるからで、それ以上の解像度(この例では1280×1024)に設定しているとこんな落とし穴に嵌ります。
ホントにちょっとしたことなんですが、特に注意書きはされていないのでディスプレイの解像度をすぐにMAXにしてしまう方(あ、自分だ。)は要注意!!

FreeMindでパラメータシートを起こす

忙しいです。anaitoです。
かなり亀レスなのですがshiro3さんのエントリにもあるFreeMind の話を書こうと思います。

ただ、最近使い始めたのでって。。。体験話ではなくて(と言っても使い始めたのは1年ぐらい前ですが)こんな使い方してますっていう紹介です。
タイトルのまんまなのですが、パラメータシートを起こすもしくはそのままデータとして残しておくには最適のツールだと思っています。

SI屋さんはこんな感じのパラメータシートをExcelなんかを駆使して作るわけです。

Sheet_1









まーこれが作るの面倒なんですよね。Linuxとはいえ商用プロダクトにはGUIも用意されているのがほとんどですからそういったGUIからパラメータシートを起こすのは行を挿入するだとか罫線引き直すとか色々手戻りがあって面倒です。

なので私は先に全部の項目についてFreeMindでマップを作ってしまいます。ちょっとこのエントリ用にマイコンピュータのプロパティの情報を一部拾いましたのがこれです。
Mycom_1










数字の②とか③とかは二択、三択に使っています。あとはチェックボックスであればとかも使えますね。記入するところにはエンピツマークとかを使ったりして、パッと見で分かるように全部をマップにしてからExcelなどのシートに起こすときにどう組むかを決めます。そうでないとカテゴリーのネストが深かったりするとシートを作るのは大変ですから。

どうですかねぇ。こんな使い方は?

VPNについて

mamano改め、mitsutakaです。「mamano」だと何となく読みづらいので変更しました。つい最近ですが、VPNについて調べものをしていました。せっかくなので少しずつ書いていこうと思います。

そもそもVPNって一体なんですか?と言われてすぐ答えられるかというとそうでもありませんでした。Wikipedia で調べてみると、二種類のVPNがあるそうです。

  • インターネットVPN
  • インターネットを介して構築されているもの。拠点間、支社間を繋げる目的として利用。

  • IP-VPN
  • ISPが提供するIP網を利用して構築されているもの。

インターネット上で構築されているものを「インターネットVPN」、ISPが提供している閉域の中で構築されているものを「IP-VPN」と呼ぶそうです。

さて、今回はOpenVPNを使って実際に自分でVPNを構築してみました。所感としては、自分が思ったより簡単でした。VPNの構成についてある程度知っている方は簡単に構築できるかと思います。私が構築した時、最低限必要だったものは以下の通りです。

  1. VPNサーバのグローバルIPアドレス
  2. CA証明書/秘密鍵(自己署名証明書でよい)の用意
  3. VPNの接続ポート(デフォルト1197)を開放しておく
  4. VPNネットワーク内のサブネット(xxx.xxx.xxx.xxx)を決める

設定方法ですが…Document等を確認してください。すいませんついつい面倒くさがっちゃって…とりあえず参考になったリンクを紹介します。

http://openvpn.net/(OpenVPN公式サイトです)
http://www.stackasterisk.jp/tech/systemConstruction/openVpn01_01.jsp

実はちょっとネタ不足でなかなか書けません。

メールシステムを提案しよう(3)

さすがに寒くなってきましたね、anaitoです。

本筋に戻ってサーバを割り当てて行きましょう。
一番最初に挙げたメールサーバの機能は

  • リレー
  • スプール
  • アンチウィルス
  • アンチスパム
  • アーカイブ
  • メーリングリスト
  • Webメール

です。で、チョイス出来るサーバは前回をふまえると

  • メモリ: 1G, 2G, 4G
  • HDD: RAID1, 5, 10

という感じになっています。CPUとかについては前回参照のこと。HDDの容量については気が向いたら触れるとしてそれぞれにスペックを組み合わせて割り当てましょう。

  • リレー
    最低ラインで大丈夫でしょう。1G + RAID1ですね。お金があればHS追加した方が良いでしょう。容量は特にいらないですが玉は15kをちゃんと選びましょう。スパム対策とかも色々出来ていてスプールにメールが溜まらないならスプールディレクトリにtmpfs使ってみたりするのもおもしろいかもしれませんね。まあ、そこまで速さは不要かもしれませんが。
  • スプール
    IMAPを使うならRAID10が出来ればいいです。ダメならRAID5ですがI/O周りには気をつけましょう。IMAPを使わないならRAID5かな。容量的にRAID1だと大変かもしれませんしね。メモリは文句なく4G。出来ればクラスタは組みたいですね、外部ストレージで。玉は大きすぎるとと10kとかになってしまうので出来れば15kの玉を使いたいです。
  • アンチウィルス
    通常であれば2Gかなぁ。大きな添付ファイルを良くやり取りするようであれば4Gもありですが予算相談でしょうかね。ディスクはRAID1で十分でしょう。多分プロダクトを採用する可能性が高いのでモノによってはサイジングに必要な情報がありますのでプロダクトのマニュアル等をちゃんと確認しましょう。
  • アンチスパム
    アプライアンスをお薦めします♪サーバにこだわる意味はないでしょうね。
  • アーカイブ
    1G、心配なら2G。容量は必要になるのでRAID5かな。スプールと同じようにクラスタ組んでもいいですね。いずれ機会があれば書きたいですがバックアップについては結構考えないといけません。考えたくないならストレージでスナップショットでしょうか。
  • メーリングリスト
    最低ラインで大丈夫でしょう。1G + RAID1ですね。流量によっては容量を大きくしたりRAID5もありかもしれませんが多分体感出来ませんよw
  • Webメール
    最低ラインで大丈夫でしょう。1G + RAID1ですね。負荷が高いことが予想されるならSLBによるバランシングがイイでしょう。もちろん、パーシステンスには気をつけた方が良いですね。

さて次は何でしょうね。クラスタネタが出てきたりしているのでクラスタのTips的なこととか触れていこうかな。ま、予告はハードル上げちゃうのでその時のノリで。

メールシステムを提案しよう(雑談)

ま、あんまり書きたいネタではないのですが、ネットの向こう側に生きていたい私としては避けて通れないのでちょっと触れておこうと思います。

これからどんどん他のメンバーも書くんですが、anaitoです。
メールシステムについて色々書いていますが想像を上回るのはやっぱりGoogleですね。

Googleにしてはいまいちなネーミングと評判のGoogle アプリ 独自ドメイン向け
リリースについてはこちら

こんなサービスやってくれるんですから一介のシステム屋には太刀打ち出来ませんね。( ´ω`)=3
ま、でもさすがGoogleといったところでしょうね。スケールアウト万歳www GFS万歳www

私も含めGmail 使っている人多いですからね~。
インターフェースに慣れているっていうのも移行しやすい重要な要因ですしね。

ただ、ここまでGoogleに押さえられちゃって依存させられるのは個人的にはイヤですねぇ。
商売あがったりだしw

でも商売抜きにしてユーザとして見ると良いサービスだと思いますよ。
管理者さんはぜひ考慮対象にしてほしいサービスですよん。

メールシステムを提案しよう(閉休話題)

たびたび、すんませんanaitoです。
ちょっと手が空いたので閉休ネタをば。
Linuxでメールサーバを構築する方、管理・運用する方はCLIによるテストが出来る方がなにかと便利です。

ちなみに私がこの会社に来たときはアカウント設定してくれた管理者の方が私のアカウント確認を席の横に立って待っていたのでCLIで手打ちでPOP3サーバにログインして確認しました。後で聞いたらそんなオペレーションは求めてなかったらしいですが。。。

大抵のOSであれば、telnetコマンドが使えれるのでSMTP,POP3,IMAPは確認出来ます。

Linuxの場合は(OSによって違うかもしれませんが)

# telnet ホスト名 ポート番号

でプロトコルの流れに沿ってやりとりすればOKです。
で肝心のプロトコルの流れを説明するとこれまたナガーくなってしまうのでリンクで勘弁して下さい。

おいおい、TLSに載っかってる(IMAPS,POP3S,SMTPS)のもあるんじゃない?って方は

# openssl s_client -connect ホスト名:ポート番号

でどうぞ。
詳しく知りたい方はs_clientでググって下さい。結構情報が少ないので有意義な情報がヒットしやすいです。
本当はopenssl s_clientでのやり取りとかをログとったりしたんですがWeb屋さんブログで結構やっておられるのでやめちゃいました。

これで明日から、あなたがデータセンターで缶詰になってもtelnet一つで助けが呼べますよ♪

メールシステムを提案しよう(2)

ノートPCなんてとても手がでないanaitoです。

予告通り、今回はサーバのサイジングについてです。ほんとは負荷テストツールをゴリゴリ使ってパフォーマンスを測ってというネタがみなさんお好きかもしれませんが、今回は斬新な切り口で攻めてみようと思います。

名付けて、1-2-4のダブルプレーでゴー!です。満塁じゃなきゃだめぽ。。。
なぜ、1-2-3じゃ無いかというと無理矢理セカンドで刺す嫌みさ加減にチームの余裕が現れているみたいな?

ま、順を追って説明します。

さて、サーバスペックで決めるところと言えば

  • CPU
  • メモリ
  • ハードディスク

ぐらいです。あとはラックマウント前提なら高さ?とか。電源とか?ランニングコスト的に気になるところですかね。NICはギガ x 2が当たり前なので無視。

個人的主観ですが、Linuxは1U~2U程度のサーバがもっともお気楽(パフォーマンスがぁぁ!とか、I/Oがぁっっっとかあまりシビアにならない感じ?)に使えるサイズですし、値段的にも導入しやすいと思っています。そしてシステムが大規模になるようならば「スケールアウト設計がMUSTです」というのが私の基本的な考え方です。ただ、8-Wayとか4Uとか使わなければならないようなシステムというものそりゃぁあります。

その場合は...ゴリゴリ測りましょう。でないと見えない部分が多々ありますよ。

そんな訳で1U~2Uとなれば各社サーバのラインナップがほぼ決まってしまいます。その上で先ほど挙げた項目ごとに考えて行くと

◆CPU
ラインナップが決まったのでこれはあまり選択の余地がありません。コアの数ぐらいです。経験から言えば一番安くてかまわないと思います。(あくまでメールサーバでは)ただし私は過去、CPU 2つじゃなきゃダメじゃん!とか思ったことはありません。

◆ハードディスク
出来ればSCSIを使いましょう。サーバもエントリーモデルではSATAモデルがありますが私はお奨めしません。サーバをコンシューマ機と同じに考えるのは危険です。以下理由です。

  • どんなOSでも枯れたH/Wが好き
  • SCSIとSATAでは平均故障間隔時間(MTBF)がダブルスコア
    (※SATAが60万~70万時間に対してSCSIは120万~140万時間):参考
  • アレイコントローラの性能

ただし、用途がハッキリしているものではSATAでもいいでしょう。最近のWebサーバとかはこっちですね。当然冗長化しなければなりませんが。でもそれなら、はやりのディスクレスにするのが良いですね。このMTBFなんて関係なくなってしまうんですから。

次にRAID構成ですが選択として

  • RAID1
  • RAID5
  • RAID10

があると思います。枝葉のものも選べるかもしれませんが(RAID6とか)この3つが標準的でしょう。すべてチョイス出来るのは4本構成からですので4本の場合を例に考えてみます。
これもスパッと決めます。

  1. 冗長性ならRAID1 + 2HS
  2. スピードならRAID10(ミラーのストライピング)
    ストライピングのミラーは私はお奨めしません
  3. 上記以外に理由がなくて、迷ったらRAID5 + HS

あとは使いたい容量と上司wに相談ですね。

◆メモリ

やっときましたメモリ。これは冒頭に書いた1-2-4のダブルプレーで決まりです。

最近では1U~2UのIAサーバでもメモリがいっぱい積めます。ですが4Gまでしか考えません。

なぜなら! それ以上メモリを載せると値段が跳ね上がるんです((( ;゚Д゚)))

以上。。。以上ったら以上。

なので冒頭にも書きましたがメモリいっぱい積むよりは2台買っちゃいましょう。2台目を考えさせられるような金額だと思います。でもイニシャルコストに気を取られすぎないようにしてランニングコストも忘れず計算しましょう。

  • 1G - ベースライン。とりあえずビールみたいな感じ?まじめに書くとこれより少ないモジュールはメモリ増設とかあると捨てるパターンがほとんどのため最低ライン。
  • 2G - 結構なんでもこなせる容量。システムの中で一番負荷が低いものに1Gのサーバを割り当てた時にこっちのサーバは同じじゃねーだろってサーバに載せる容量。
  • 4G - とにかく人事を尽くしておこうと思わせるサーバに載せる容量。

如何ですか。サイジングの中心に「コストパフォーマンス」を据え置いて私の経験と織り交ぜてまとめてみました。あとはユーザ数や運用形態に合わせて台数を調整していく感じになりますが5000ユーザぐらいまでならスケールアウトを考えずにカバー出来ると思います。ただし、スケールアウトはしなくても機能分担をしてコマゴマとしたチューニングは必要ですが。

次回は、各サービス毎にサーバを割り当てて行きたいと思います。

よく使うページ

はじめまして。
プロダクトサポートを担当しています kmiyashit です。

今回は仕事でよく使うページをご紹介したいと思います。

Linux について調べる際、Google をよく使いますが、option をつけた、
このページから入ると Linux 関連の情報に限定され、便利です。
ロゴもペンギンつきになります。

http://www.google.com/linux

BSD, MAC など、他にも色々とoption があるようです。
http://www.google.com/options/specialsearches.html

メールシステムを提案しよう(1)

タイトルは変わりましたが特に意識せず楽に書きますanaitoです。

前回はOpenLDAPネタを書いたのですがしばらく別ネタを書いてからもう一度LDAPネタに戻りたいと思います。どう繋がりますことやら。

さて、最近ではOSSをつかったシステムというのも一般的になってきました。特にWebの世界では当たり前のように使われていますし、その技術者の方々の情報発信といったらあっちこっちに溢れていてものすごい量です。

しかし、足下を顧みるに私が得意とするメールサーバなどの基幹系についてはWeb系と比べられるほどには情報量が少ないというのが私の認識です。やはりproprietaryなものが強いんでしょうか。なので私の経験則ではありますが多少なりともLinuxサーバ構築屋さんになる方々の参考になるような内容を書けたらなぁと思います。

まずは一般的なメールシステムを立ち上げるまでを例に書いて行きたいと思います。なかなか文才がないもので数回に分けさせて下さいw

まずはお客様との会話からはじまると思います。どういう機能がほしいのか?どういう運用形態なのか?現状のシステムはどんな感じなのか?データの移行はどうするのか?プロトコルはなにを使う?(SMTP, POP3, IMAP + 認証方法、経路暗号化などなど)
予算はおいておいてやりたいことはたくさん!?という中でまずは、論理的な最大構成を説明するところからはじめるのが良いと思います。あとはお客様に取捨選択をまかせるというのが後々こんな機能ほしいんだけど?と言われないための工夫ですし、お客様がご存じないソリューションを情報提供出来るかもしれません。

じゃあ、最大構成ってなんじゃろ?ということでポピュラーな構成についてみて行きましょう。
以下の呼び方は一般的ではないかもしれないですがこんな呼び方している人もいるんだなぐらい思って下さい。

◆機能

  • リレー
  • スプール
  • アンチウィルス
  • アンチスパム
  • アーカイブ
  • メーリングリスト
  • Webメール

ではひとつひとつ見ていきましょう。説明のために順番は変えてます。

・スプール
 一般にメールサーバと言えばこれを指すと思います。ユーザのメールボックスがあるサーバです。その役目ゆえクラスタ構成を組んだりディスク容量を大きくしたりします。

・リレー
 まず大事なのはメールボックス(データ)があるスプールサーバです。そのためDMZなどに一旦メールを中継するサーバ(リレー)を置いてスプールサーバは直接外部にさらさないようにする構成が一般的です。リソースを有効に使うためにWebサーバやDNSサーバを兼ねる場合もあります。

・アンチウィルス・アンチスパム
 どちらもそのまんまですw パターンファイルアップデート等あるため商用ソフトだったりアプライアンスを使うのが一般的です。兼用のものもありますがう~んどうでしょうか?機能の配置的にアンチウィルスは内部ネットワーク、アンチスパムはDMZ(リレー)という感じですので兼用では使い勝手が悪いと思っています。
※組織の規模やネットワーク構成によっては内部にアンチスパムというのも十分あります。

・アーカイブ
 商用ソフトが多いですがOSSでもある程度の機能は実現可能です。その名の通りメールを貯めたり検閲したりして情報漏洩などに備えます。全文検索や特定の宛先には上司の承認がいるようにするなど業務に密着した機能が多いです。

・メーリングリスト
 説明するまでもないと思いますので割愛。

・Webメール
 社外の社員のために用意したり、特定のクライアントを所持しない業務形態など必要なシーンはさまざまです。Gmailに転送すればいいやんとか聞こえてきそうですがwww

あとはセキュリティに絡むものだったり他にもあるとは思いますが紙面の都合でw割愛させて頂きます。

説明が終わればあとはお客様に予算に見合った機能を絞り込んで頂くとどれくらいのサーバ台数か見えてきます。(細かい機能とか色々確定させなきゃいけないところもあるんですけどね)
ま、冗長化の構成だったりメールの流量だったり色々な要素を踏まえなければいけませんし、そもそもこんな簡単に決まりませんが( ´ω`)=3

そんな訳で概要が決まったつもりになって次回はハードウェアのサイジングについて書きたいと思います。台数やスペック等失敗すると後々困るところですので書くには困らないんじゃないかなぁ。
では、では。

会社情報 採用情報 個人情報保護方針 商標等取り扱い事項 English
Copyright(c)2000-2006 MIRACLE LINUX CORPORATION. All Rights Reserved.