2009年6月29日月曜日

Linux:コマンドオペレーションの魅力を再確認

コマンドオペレーションの魅力を再確認

ファイルに連番を追加
declare -i i=1
for file in *.jpg
do
mv $file $i$file
i=i+1
done


http://www.atmarkit.co.jp/flinux/rensai/theory08/theory08a.html
#!/bin/sh
file=scan01.jpg
echo ${file}
echo ${file%jpg}
echo ${file%jpg}png
→scan01.jpg
 scan01.
 scan01.png

DVD:HandBrakeよりDVD Catalist Freeの方がすばらしく良かった件(DVDをiPodに突っ込む方法�

HandBrakeよりDVD Catalist Freeの方がすばらしく良かった件(DVDをiPodに突っ込む方法�

記録様式 奈良先端科学技術大学院大学情報科学研究科ソフト�

記録様式 奈良先端科学技術大学院大学情報科学研究科ソフト�

・アドホックリーディング
・チェックリストベースドリーディング
・パースペクティブベースドリーディング
・確認テスト規模を意識したリーディング技法
・リスクベースドリーディング

2009年6月26日金曜日

Oracle:Solarisインストールガイド(カーネルパラメータ)

Oracle Database インストレーション・ガイド 10g リリース2(10.2)for Solaris Operating System (SPARC 64-bit)
http://otndnld.oracle.co.jp/document/products/oracle10g/102/solaris/B25025-02/pre_install.htm#714088

Linux:ITmedia エンタープライズ : Linux Tips「シグナルってなに?」

ITmedia エンタープライズ : Linux Tips「シグナルってなに?」

シグナル種別
内     容
TERM 安全に終了させる
KILL 強制終了させる
STOP 中断させる
CONT 再開させる
HUP 変更を反映する
QUIT coreファイルを残しながら終了する

Solaris:実行レベル (Solaris のシステム管理) - Sun Microsystems

実行レベル (Solaris のシステム管理) - Sun Microsystems

Solaris 実行レベル

実行レベル

init 状態

種類

目的

0

電源切断状態

電源切断

オペレーティングシステムをシャットダウンしてシステムの電源を安全に落とせるようにする。

1

システム管理状態

シングルユーザー

ユーザーがログインできる状態ですべての使用可能なファイルシステムにアクセスする。このコマンドを実行した端末がコンソールになる。

2

マルチユーザー状態

マルチユーザー

通常の運用に使用する。複数のユーザーがシステムと全ファイルシステムにアクセスできる。NFS サーバーと syslog を除き、すべてのデーモンが動作する。

3

NFS 資源を共有したマルチユーザー

マルチユーザー

通常の運用に使用する。NFS 資源共有が使用できる状態。

4

マルチユーザー状態 (予備)


このレベルは現在使用されていない。

5

電源切断状態

電源切断

オペレーティングシステムをシャットダウンしてシステムの電源を安全に落とせるようにする。可能なら、この機能をサポートしているシステムの電源を自動的に切断する。

6

リブート状態

リブート

システムをシャットダウンして実行レベル 0 にしたあと、マルチユーザー状態 (または、inittab ファイルに指定されたデフォルトのレベル) にリブートする。

s または S

シングルユーザー状態

シングルユーザー

すべてのファイルシステムがマウントされ使用可能な状態で、シングルユーザーとして動作する。

システムの実行レベルを確認する方法

who -r コマンドを使用してシステムの実行レベル情報を表示すれば、システムの実行レベルがわかります。ただし、実行レベル 0 を除きます。

$ who -r

例-システムの実行レベルを確認する

$ who -r
. run-level 3 Oct 26 15:04 3 0 S
$

Solaris:実行制御スクリプト (Solaris のシステム管理) - Sun Microsystems

実行制御スクリプト (Solaris のシステム管理) - Sun Microsystems

Solaris ソフトウェア環境では、一連の詳細な実行制御 (rc) スクリプトを使用して実行レベルの移行を制御している。
各実行レベルには次の rc スクリプトが対応しており、これらのスクリプトは、/sbin ディレクトリにあります。

  • rc0

  • rc1

  • rc2

  • rc3

  • rc5

  • rc6

  • rcS

/sbin ディレクトリ内の各 rc スクリプトには /etc/rcn.d という名前のディレクトリが対応しており、その中にはその実行レベルのさまざまな処理を実行するスクリプトがある。たとえば、/etc/rc2.d には、実行レベル 2 のプロセスを起動および停止するためのファイル (スクリプト) があります。

Linux:起動の仕組みを理解しよう[init/inittab編](1/2)

Linux起動の仕組みを理解しよう[init/inittab編](1/2)

 カーネルが起動された後の流れを挙げると、

  • 各種デバイスなどの初期化
  • initプログラムなどの起動
  • ブート時の処理
  • rcスクリプトの実行

といった処理が行われる。

2009年6月24日水曜日

English:ほぼ無料で世界情勢とリスニングの勉強ができる方法:Garbagenews.com

ほぼ無料で世界情勢とリスニングの勉強ができる方法:Garbagenews.com

【VOA(Voice of America) Special English】

Oracle:テーブルスペースの容量・状態を調べるためのSQL

-- テーブルスペースに割り当てた容量を確認(MB表示)
select tablespace_name, sum(bytes)/1024/1024 tota_space
from dba_data_files
group by tablespace_name
order by tablespace_name;

-- テーブルスペースの空き容量を確認(MB表示)
select tablespace_name, sum(bytes)/1024/1024 freespace
from dba_free_space
group by tablespace_name
order by tablespace_name;

-- テーブルスペースの名前と状態を調べる
select tablespace_name, status
from dba_tablespaces
order by tablespace_name;

Linux:nsswitch.confの役割

ITpro

nsswitch.confの役割は、名前解決の順序を指定することである。

コンピュータのホスト名から対応するIPアドレスやMACアドレスを割り出す,サービス名からポート番号を調べる,といったように,名前に関連づけられた値を割り出すことを名前解決といいます。/etc/nsswitch.confでは,名前解決の順序を指定します。

 ホスト名の名前解決にはDNSを使うのが一般的ですが,それ以外にも,/etc/hostsファイルに記述されたホスト名とIPアドレスを使う方法 や,NIS(Network Information Service)を使う方法,LDAPを使う方法などがあります。このような複数の名前解決手段があっても,NSS(Name Service Switch)という仕組みによってどのような順番で利用するかを指定できます。NSSの設定ファイルが/etc/nsswitch.confです。

/etc/nsswitch.confの例

passwd:     nis files
shadow: nis files
group: nis files
hosts: nis files dns
bootparams: files
ethers: files
netmasks: files
networks: files
protocols: files
rpc: files
services: files
netgroup: files
publickey: files
automount: files
aliases: files

 左側の欄には名前解決データベースの種類を記述します。名称は,/etc以下のファイル名とほぼ同じになっています(例えば,hostsは /etc/hostsに対応します)。右側の欄には,名前解決の手段を優先度の高い順に記述します。files(/etc以下のローカルファイ ル),nis(NIS),dns(DNS),ldap(LDAP)などを指定することができます。

 この例では,ホスト名の名前解決(hosts:と書かれた欄で設定)には,最初にNISで検索が行われます。次にローカルファイル (/etc/hostsファイル),DNSの順で検索が行われます。問い合わせ先DNSサーバーのIPアドレスは,/etc/resolv.confで指 定します。

2009年6月23日火曜日

Linux:NSCD の設定日本語ドキュメント - Japanese documents of Linux

Linux日本語ドキュメント - Japanese documents of Linux

lsがハングった場合は、ldapかNSCD?

Linux:Red Hat Enterprise Linux 4でShift-JISで運用する方法

レッドハット | オープンソース・カンパニー: "Red Hat Enterprise Linux 4でShift-JISで運用する方法"

Shift-JISで運用するには以下の手順で設定を変更・追加します。

1.SJISロケールを以下のコマンドで追加します。


# localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS
2.ja_JP.sjisがロケールに追加されたことを確認します。

# locale -a | grep ja
ja_JP
ja_JP.eucjp
ja_JP.sjis
ja_JP.ujis
ja_JP.utf8
japanese
japanese.euc
3.LANG環境変数の設定をします。
(1)ログインセッションに限りShift-JISを利用する場合(bashをお使いの場合)

# export LANG=ja_JP.SJIS
(2)システム全体でShift-JISを利用する場合 /etc/sysconfig/i18n のLANGを修正します。

LANG="ja_JP.UTF-8"
SUPPORTED="ja_JP.UTF-8:ja_JP:ja"
SYSFONT="latarcyrheb-sun16"


#LANG="ja_JP.UTF-8"
#SUPPORTED="ja_JP.UTF-8:ja_JP:ja"
LANG="ja_JP.SJIS"
SUPPORTED="ja_JP.SJIS:ja_JP:ja"
SYSFONT="latarcyrheb-sun16"

注意点として、システムのデフォルト言語を変更した場合それに起因する問題については弊社からのサポートは御提供出来かねますのでお客様御自身の責任 において上記設定を行なって下さい。各RHEL製品のデフォルト言語は以下の通りです。

RHEL2.1 - EUC
RHEL3 - EUC
RHEL4 - UTF-8
RHEL5 - UTF-8

2009年6月21日日曜日

Linux::hwclock - ハードウェアクロックの設定

hwclock - ハードウェアクロックの設定

ハードウェアクロックとはBIOS側で設定されている時間のことで、システムクロックとはOS側で設定されている時間のこと。
hwclock はこのハードウェアクロックとシステムクロックの同期に使用される。

Java:jps - Java 仮想マシンプロセスステータスツール

jps - Java 仮想マシンプロセスステータスツール

jps [ options ] [ hostid ]
options
コマンド行オプション
hostid
プロセスレポートを生成するホストのホスト識別子hostid には、通信プロトコル、ポート番号、実装に固有な他のデータを指定したオプションコンポーネントを含めることができます。

Java:jstat - Java 仮想マシン統計データ監視ツール

jstat - Java 仮想マシン統計データ監視ツール:


-gccauseを引数に与えた場合の読み方
O : Old 領域の使用率(%)
YGC : New GCの実行回数(累計)
FGC : Full GCの実行回数(累計)
FGCT : Full GCの実行により停止した時間(累計)
LGCC : 最後に起こった GC の理由
GCC : そのとき発生した GC の理由

jstat [ generalOption | outputOptions vmid [interval[s|ms] [count]] ]
generalOption
単独で使用する一般的なコマンド行オプションです (-help、-options、または -version)。
outputOptions
単一の statOption と、-t、-h、および -J オプションのいずれかを組み合わせた、1 つまたは複数の出力オプションです。
vmid
ターゲットの Java 仮想マシン (JVM) を示す文字列である仮想マシン識別子です。一般的な構文は次のようになります。
[protocol:][//]lvmid[@hostname[:port]/servername]
vmid 文字列の構文の大部分は、URI の構文に対応しています。vmid は、ローカル JVM を表す単純な整数から、通信プロトコル、ポート番号、および他の実装固有の値を示す複雑な構造まで、さまざまに異なります。詳細は、「仮想マシン識別子」を参照してください。
interval[s|ms]
秒 (s) またはミリ秒 (ms) のうち指定した単位でのサンプリング間隔です。デフォルトの単位はミリ秒です。 正の整数値を使用する必要があります。 指定した場合、jstat は間隔ごとに出力を生成します。
count
表示するサンプル数です。既定値は無限です。つまり、jstat は、ターゲット JVM が終了するまで、または jstat コマンドが終了するまで、統計データを表示します。正の整数値を使用する必要があります。

Linux:ITmedia エンタープライズ : Linux Tips「コマンドプロンプトの表示形式を変

ITmedia エンタープライズ : Linux Tips「コマンドプロンプトの表示形式を変:

コマンドプロンプトで、サーバ名&ユーザ名&現在のパスがデフォルトで表示されるようにする


PS1="\[\033[1m\033[34m\h(\u:\w)\\$ \033[0m\]"
→「マシン名(ユーザー名:パス)$」

2009年6月19日金曜日

JavaScript:JsDoc Toolkitによる開発効率向上を目指して - @IT

JsDoc Toolkitによる開発効率向上を目指して - @IT: "

JavaScriptのソースコードをAPI仕様書に変換する開発支援ツール:JsDoc Toolkit

@fileOverview JSファイルの説明
@author 作成者
@version バージョン
@class 関数がクラスであることを示す
@param 引数
@return 返り値
@example 関数の使用例"

プログラマの能力の差は28倍

著者からのコメント

のようです。

1968年に発表されたサックマンたちの研究結果

H. Sackman, W. J. Erikson, and E. E. Grant "Exploratory Experimental Studies Comparing Online and Offline Programing Performance", Communications of the ACM Volume 11, Issue 1 (Jamuary 1968)

PM:震災地ボランティアと遅延プロジェクトの回復 - @IT MONOist

震災地ボランティアと遅延プロジェクトの回復 - @IT MONOist

遅れを取り戻す4つの方法

 遅れているプロジェクトを正常状態に戻すには、一般的に以下の4つの方策が取られる(2つ以上を同時に導入する場合もある)

(1)スケジュールの延長
(2)トリアージュ
(3)人員投入
(4)ダイハード方式

2009年6月18日木曜日

Java:Javaトラブルシューティング jstatを使用するための注意点

Javaトラブルシューティング メールマガジン バックナンバー一�:
jstat&jpsを使用するための注意点。

jstatやjpsは、Javaプロセスが立ち上げ時に作成するhsperfdata_(ユーザ名)というファイルを参照して、
Javaプロセスの存在や、Javaプロセスの情報を取得する。
しかし、Linuxは/tmp以下に作成されるため、/tmp以下のhsperfdataファイルは、
/etc/cron.daily/tmpwatch
によって、起動から1週間くらいで削除されてしまう。
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/342deltmpdirfile.html

その対策として、tmpwatchに、hsperfdata_infowebのディレクトリは除外するという記載を行えばよい
→ ”-x /tmp/hsperfdata_infoweb”を追加

2009年6月12日金曜日

運用:ZABBIX-JP - Un-Official Support Page

ZABBIX-JP - Un-Official Support Page

統合監視ソフトウェア

運用:一般的な監視項目

・一般的な監視項目
■ログ監視
 >アクセス ログ
 >エラー・ログ
■ネットワーク監視
 >通信(PING)
 >トラフィック
■サーバ監視
 >リソース(ディスク容量)
 >プロセス
 >サーバの負荷(CPU)
■サービス監視
 >画面(HTTP)
 >応答時間

Java:「メモリーを意識してみよう」第1回 ヒープがどのくらい使わ�

「メモリーを意識してみよう」第1回 ヒープがどのくらい使わ�

アプリケーションの中でヒープの使用量を調べるには2つの方法がある。

・J2SE 1.4以前の場合,java.lang.RuntimeクラスのmaxMemoryメソッドとfreeMemoryメソッドを使用
MXBeanを使用する方法
 →JMXを使用してMXBeanを参照する場合,javaの起動時オプションとして-Dcom.sun.management.jmxremoteを使用する

Java:「Java SE 6完全攻略」第5回 プロファイラ hprofとよき相棒 jhat:ITpro

「Java SE 6完全攻略」第5回 プロファイラ hprofとよき相棒 jhat:ITpro:


Java SEにも標準でプロファイラが付属している。
→hprof

Java 2 SE 5.0からは「-agentlib:hprof」という起動オプションでhprofを起動できます
(J2SE 1.4.までは「-Xrunhprof」)。使い方はヘルプ・オプションで表示できる

2009年6月8日月曜日

Oracle:Diagnostics Pack説明サイト

========================================================================
http://www.oracle.com/technology/global/jp/columns/easy/oracle10gr2/linux.html
http://www.oracle.com/technology/global/jp/columns/easy/index.html
「どのようなシステムに対しても有効なチューニング方法というものは無く、ボ
トルネックを発見し(調査・解析)、問題を修正(適用・確認)したら、次のボ
トルネックへ という繰り返しでシステムの改善をはかることになります。」
========================================================================

========================================================================
http://otn.oracle.co.jp/skillup/stats_diag/3/index.html
http://otn.oracle.co.jp/skillup/stats_diag/
> ● まとめ
> AWRのスナップショットはShared Poolのデータを参照しているので、Shared Poolにない情報は保存できません。SQLの情報を多く保存したいのであれば、スナップショットを作成する間隔を短くするなどの工夫が必要であることがわかります。しかし、スナップショットの負荷も無視できないため、情報量を増やすことと負荷を下げることは、トレードオフの関係にあることを意識する必要があります。そこで、「通常運用時は1時間に1回程度とし、より詳細な情報を取得する必要がある場合のみスナップショットの間隔を短くする」などの工夫が必要となります。基本的なこととして、「AWRは実行されたすべてのSQLを保存することを目的とした機能ではない」ことを忘れないようにしましょう。
========================================================================
http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/server.102/B40062-02/toc.htm
→Oracle Database 2日でパフォーマンス・チューニング・ガイド
10g リリース2(10.2)


実際の運用を考えると、頻度は注意すべきであるが、
実際に動かしてみてどのくらい負荷がかかるかをチェックし、
負荷が高いようであれば、間隔を長くすれば良いか?

Oracle:「意外と簡単!?」 シリーズ

「意外と簡単!?」 シリーズ: "「意外と簡単!?」 シリーズ"

特に運用周りは丁寧な説明がされています。

■Diagnostics Pack
・自動ワークロード・リポジトリ (AWR)
・Automatic Database Diagnostic Monitor(ADDM)
 ・SQL Tuning
 ・DB Configuration
 ・Segment Tuning
 ・Application Analysis
 ・Host Configuration
・パフォーマンス・アドバイザ
 ・SQLチューニング・アドバイザ
 ・SQLアクセス・アドバイザ
 ・メモリー・アドバイザ
 ・セグメント・アドバイザ

WebLogic:ノード マネージャを使用したサーバの制御

ノード マネージャを使用したサーバの制御

ノード マネージャの機能

管理サーバの起動、停止、および再起動

管理対象サーバの起動、停止、中断、および再起動

管理サーバおよび管理対象サーバの再起動

サーバのモニタとログ データの表示

WebLogic:WebLogicマニュアルURL(パフォーマンス中心)

・Oracle WebLogic Integration 10g Release 3 (10.3)
http://otndnld.oracle.co.jp/document/products/owli/docs10gr3/index.html

・Oracle WebLogic Server Process Edition 10g Release 3 (10.3)
http://otndnld.oracle.co.jp/document/products/owli/docs10gr3/wlspe.html

・BEA WebLogic Server 9.2 マニュアル
 WebLogic Server パフォーマンス チューニング ガイド
http://otndnld.oracle.co.jp/document/products/wls/docs92/perform/index.html

・BEA WebLogic Server 8.1 ドキュメント
 WebLogic Server パフォーマンス チューニング ガイド
http://otndnld.oracle.co.jp/document/products/wls/docs81/perform/index.html

2009年6月7日日曜日

ITIL:V3とV2の違い

ITIL V3はV2からどこが変わったか - @IT情報マネジメント: "ITIL V3とV2"

 ITIL V2では、
「サービスマネジメント導入計画立案」
「サービスサポート」
「サービスデリバリ」
「アプリケーション管理」
「ICTインフラストラクチャ管理」
「セキュリティ管理」
「ビジネス観点」
の7冊が主要内容として定義されています。

 これに対してITIL V3は、
「サービス戦略」を核にして、
「サービス設計」、
「サービス移行」、
「サービス運用」、
「継続的なサービス改善」
という5冊に凝縮(ぎょうしゅく)されました。

ITIL:@IT:SLAとサービスレベル管理

@IT:SLAとサービスレベル管理

* サービスレベルを上げるためにはコストも上がる
* サービスレベルとコストは単純な比例関係ではない

5分で絶対に分かるITIL - @IT情報マネジメント

5分で絶対に分かるITIL - @IT情報マネジメント:

ITILでは、
プロセス(Process)★★
ピープル(People)★★★
プロダクト(Product)★
の「3つのP」が重要(重要度★)

2009年6月3日水曜日

Gmailが落ちたときに“アクセス”する方法を考える - @IT自分戦略

Gmailが落ちたときに“アクセス”する方法を考える - @IT自分戦略:

以下どれかのURL経由だと、Gmailが落ちてもメールがみられるかもしれない。

"ログインURL 備考
1 http://gmail.com/ 非SSL
2 http://mail.google.com/mail/ PC用URL。非SSL
3 https://mail.google.com/mail/ PC用URLのSSL版
4 https://mail.google.com/mail/?ui=1 旧バージョンを表示するURL
5 https://mail.google.com/mail/?ui=2 新バージョンを表示するURL
6 http://mail.google.com/mail/h/ 簡易バージョン。Ajax未対応ブラウザ用
7 https://mail.google.com/mail/h/ 簡易バージョンのSSL版
8 http://m.gmail.com/ モバイル用。非SSL
9 https://mail.google.com/mail/x/ モバイル用のSSL版
10 http://mail.google.com/mail/x/gdlakb-/gp/ iPhone用
11 https://mail.google.com/mail/x/gdlakb-/gp/ iPhone用のSSL版
12 https://mail.google.com/mail/feed/atom/ Atomフィード版"

2009年6月1日月曜日

Oracle:SQLチューニングの基盤となる統計情報(4/4) - @IT

SQLチューニングの基盤となる統計情報(4/4) - @IT: "SQLチューニングの基盤となる統計情報"

遅いSQLは、
SET AUTOTRACE ON
で確認せよ。

■SQL統計情報の基本的な見方

まずは、
・consistent gets:SQLが検索のためにアクセスしたブロック数
         →実行に費やすCPU時間はほぼこれに比例する
・physical reads:ディスクから読み込んだブロック数
を見る。

その後
・recursive calls:再帰SQLの実行を見る。
何回か同じSQLを実行しても、この値が大きい場合は、バッファキャッシュを使い果たしている
可能性が高い。

Linux:ユーザアプリ使用メモリサイズ

Linux、負荷まわりの話 - goungoun技術系雑記帳:
"ユーザアプリ使用メモリサイズ=
MemTotal
-MemFree
-Buffers
-Cached
-SwapCached
-Slab
-PageTables
-VmallocUsed
"

Linux ページキャッシュ - naoyaのはてなダイアリー

Linux のページキャッシュ - naoyaのはてなダイアリー

* Linux はメモリがある限りページ単位でブロック型デバイスの入出力をキャッシュする
* I/O はページキャッシュに任せよう
* ページキャッシュの状態は sar -r で確認できる
* DB はメモリにフィットさせよう (http://d.hatena.ne.jp/stanaka/20070427/1177651323)
* ページキャッシュがクリアされてしまったら read してキャッシュに載せよう
* VFS 周りの実装はインタフェースにコールバックを登録していく実装になっている
* tmpfs は read / write が tmpfs 用に実装されている。I/Oに伴うページキャッシュの扱いが通常と違う。