WEB API XML サンプル (LiveDoor Weather)

# WEB API XML サンプル
#!c:/Perl/bin/perl.exe

use encoding 'UTF-8', STDOUT => 'cp932';

use HTTP::Request;
use LWP::UserAgent;

use LWP::Simple;

use XML::Simple;

$result = LWP::Simple::get("http://weather.livedoor.com/forecast/webservice/rest/v1?city=70&day=today");


$xml = new XML::Simple();
$sample = $xml->xml_in($result);

print "\n\n";

## スカラーテスト

$result = $sample->{title};
print $result."\n\n";

$result = $sample->{description};
print $result."\n\n";


## 配列アクセス


foreach my $loc (@{$sample->{pinpoint}->{location}}) {

print $loc->{title}." ".$loc->{link}."\n";

}

ntpq が表示する項目

ntpq が表示する項目

それぞれの項目

ntpq が出力する項目の意味は次のようになります。

remote タイムサーバ名と、そのサーバがどのような立場にあるかを表示します。
refid remote がどこから時刻を同期しているかを表します。不明の場合は 0.0.0.0 を示します。
st サーバの階層を示す stratum 番号が表示されます。一般に、この番号が大きくなるほど、時間の信頼性が薄らいでいきます。
t 階層の種類です。( l: local, u: unicast, m: multicast, b:broadcast )
when remote から最後にパケットを受け取ってからの時間です。
poll ポーリング間隔を表示します。
reach 到達可能レジスタデータを8進数で示すそうです。
delay 時間の遅延見積もりをミリ秒単位で表示します。
offset remote との時刻のずれをミリ秒単位で表示します。
jitter remote の分散 (ばらつき) をミリ秒単位で表示するそうです。

 

サーバの状態を表す記号

remote で示されたサーバ名の先頭には、そのサーバをどのように認識しているかを示す記号が付加されています。

  距離が遠いために使用しないサーバです。
x falseticker 検査で捨てられたサーバです。
. 参照サーバが多いために使用しないサーバです。
- クラスタリング検査で捨てられたサーバです。
+ いつでも使用可能なサーバです。
# 同期距離は遠いものの参照可能なサーバです。
* 同期中のサーバです。
o 同期中のサーバです。(同期は PPS 信号から間接的に行なう)

SDS内蔵 Disk障害対応

SDS内蔵 Disk障害対応

● 切り離し
metadetach -f d0 d10
metadetach -f d1 d11
metadetach -f d3 d13
metadetach -f d4 d14
metadetach -f d5 d15
metadetach -f d6 d16


metadb -d /dev/dsk/c1t0d0s7


● DISK 交換


● スライス確認
partition> p
Current partition table (original):
Total disk cylinders available: 24620 + 2 (reserved cylinders)

Part Tag Flag Cylinders Size Blocks
0 root wm 0 - 181 256.74MB (182/0/0) 525798
1 swap wu 182 - 3017 3.91GB (2836/0/0) 8193204
2 backup wm 0 - 24619 33.92GB (24620/0/0) 71127180
3 var wm 3018 - 12942 13.67GB (9925/0/0) 28673325
4 usr wm 12943 - 14006 1.47GB (1064/0/0) 3073896
5 unassigned wm 14007 - 21095 9.77GB (7089/0/0) 20480121
6 home wm 21096 - 24611 4.84GB (3516/0/0) 10157724
7 unassigned wm 24612 - 24619 11.29MB (8/0/0) 23112


● 構成情報追加
metadb -a -c 3 /dev/dsk/c1t0d0s7

# metadb
flags first blk block count
a m p luo 16 1034 /dev/dsk/c1t0d0s7
a p luo 1050 1034 /dev/dsk/c1t0d0s7
a p luo 2084 1034 /dev/dsk/c1t0d0s7
a u 16 1034 /dev/dsk/c1t1d0s7
a u 1050 1034 /dev/dsk/c1t1d0s7
a u 2084 1034 /dev/dsk/c1t1d0s7





● 同期
metattach d0 d10
metattach d1 d11
metattach d3 d13
metattach d4 d14
metattach d5 d15
metattach d6 d16

Solaris DISK ミラー作成

Solaris DISK ミラー

(1) meadb作成領域の確保
metadbと呼ばれるRAID情報の状態データベースを作る必要があり、
これは独立したスライスに作らないとダメです。
既にスライスを全部使ってる場合はスライス構成の切り直しとか
metadb領域を考えたスライスにしてOS再インストールになるので
ご注意。たいていはswapを切り出すとかでしのぎます。

Solaris10ではformatコマンドでいじろうとするときに
/etc/vfstabに使う用に記述があったら、そこの箇所は
操作できないので注意必要


(2) ミラー先HDDのパーティションを切る
formatコマンドでちまちま合わせてもいいですけど、
ミラー元、ミラー先のディスク容量とか全く同じものであれば

# prtvtoc -s /dev/rdsk/c0t0d0s2 > /tmp/disk0
# fmthard -s /tmp/disk0 /dev/rdsk/c1t0d0s2


(3) metadbの作成
metadbを作ります。Diskあたり2個ずつでもいいけど
3個ずつがおすすめ。理由は深く語らない。

# metadb -a -f -c 3 /dev/dsk/c0t0d0s3
# metadb -a -c 3 /dev/dsk/c1t0d0s3

# metadb で作成できたか確認。


(4) md.tabの変更
metainitコマンドだけで直接metaデバイスの作成実行しても
いいですけど、後のメンテナンスの為に/etc/lvm/md.tabに
どういう構成にするのか記述しとくのがベター。

・・・/etc/lvm/md.tab抜粋・・・
# root mirror
d10 1 1 /dev/dsk/c0t0d0s0
d20 1 1 /dev/dsk/c1t0d0s0
d0 -m d10
# swap mirror
d11 1 1 /dev/dsk/c0t0d0s1
d21 1 1 /dev/dsk/c1t0d0s1
d1 -m d11
# /export/home mirror
d17 1 1 /dev/dsk/c0t0d0s7
d27 1 1 /dev/dsk/c1t0d0s7
d7 -m d17


(5) 重要ファイルのバックアップ
/etc/systmと/etc/vfstabは書き替わっちゃうので
コピーして取っておきます。

# cp -p /etc/system /etc/system_ORG
# cp -p /etc/vfstab /etc/vfstab_ORG


(6) metaデバイスの作成
普通の物理パーティションを仮想のデバイスに割り当てる感じ

# metainit d20
# merainit d21
# metainit d27

マウントしてところは -fつけないとダメ
# metainit -f d10
# metainit -f d11
# metainit -f d17

確認はmetastatコマンド。
いまのところ全部、連結/ストライプデバイスなはず。



(7) 片面ミラーの構築

# metainit d0
# metainit d1
# metainit d7


確認はmetastatコマンド。
d0のミラー構成の一部としてd10がいる感じになってるはずです。


(8) metaデバイスでbootできるように細工

# metaroot d0

/etc/vfstabのroot部分(c0t0d0s0)が書き替わってますので
c0t0d0s1とc0t0d0s7もそれぞれd1、d7でマウントするように
記述変更。fsckのデバイスの変更もお忘れなく。


(9) 片面ミラーでbootしてみる。
# init 6 してみましょう。
再起動してdfコマンドで確認したら各パーティションのデバイス
/dev/md/dsk/d0が/(root)、/dev/md/dsk/d7が/export/home、
になってるはず。
swapコマンドで確認したら/dev/md/dsk/d1がswapのはず

(10)ミラーを組む

# metattach d0 d20
# metattach d1 d21
# metattach d7 d27

確認はmetastatコマンド。それぞれで再同期中ってなります。
この再同期が全部終わって正常に変わればミラー完成。
再同期中にリブートしてもいいけど、最初から同期やり直しに
なるのでattachかけたら放置するのがよいかと。


(11)あと細々した作業
coreダンプを取るところのデバイスが変わってるので
# dumpadm -d swap としましょう。

SPARCマシンであればOBPのboot-deviceを2つのHDDのどちらでも
起動できるように変更しといたほうがいいでしょう。

x86マシンだとミラー先HDDに対してGrubのインストールが必要。
Solaris10でも古いのだったらpbootのインストール必要)
ミラー先HDDから起動するためのGrubメニューの追記も必要かな

Solaris10 SMF設定について

Solaris10では telnetftpなどinetd経由で接続するものが
SMFなるものに変わっています。

参考
http://sy2920.s151.xrea.com/solaris/smf-inetd.html



test# inetadm -l ftp
SCOPE NAME=VALUE
name="ftp"
endpoint_type="stream"
proto="tcp"
isrpc=FALSE
wait=FALSE
exec="/usr/local/sbin/in.proftpd"
user="root"
default bind_addr=""
default bind_fail_max=-1
default bind_fail_interval=-1
default max_con_rate=-1
default max_copies=-1
default con_rate_offline=-1
default failrate_cnt=40
default failrate_interval=60
default inherit_env=TRUE
default tcp_trace=FALSE
tcp_wrappers=TRUE


test# inetadm -m ftp exec="/opt/prpftpd/sbin/in.proftpd"

itest# inetadm -l ftp
SCOPE NAME=VALUE
name="ftp"
endpoint_type="stream"
proto="tcp"
isrpc=FALSE
wait=FALSE
exec="/opt/prpftpd/sbin/in.proftpd"
user="root"
default bind_addr=""
default bind_fail_max=-1
default bind_fail_interval=-1
default max_con_rate=-1
default max_copies=-1
default con_rate_offline=-1
default failrate_cnt=40
default failrate_interval=60
default inherit_env=TRUE
default tcp_trace=FALSE
tcp_wrappers=TRUE

SolarisでNICのステータスを確認

SolarisNICのステータスを確認

するには、「dladm show-dev」コマンドを使います。


# dladm show-dev

bge0   link: up   speed: 100 Mbps   duplex: full

bge1   link: up   speed: 100 Mbps   duplex: full

ce0   link: unknown   speed: 100 Mbps   duplex: full

ce1   link: unknown   speed: 0  Mbps   duplex: unknown

ce2   link: unknown   speed: 0  Mbps   duplex: unknown

ce3   link: unknown   speed: 0  Mbps   duplex: unknown

ただし、Generic LAN Driver v3対応(bge・e1000g・nxge)以外のドライバは、dladmでは非対応のようです。

Windows Server 2003 で SMTP サービスを手動でテストする方法

Windows Server 2003SMTP サービスを手動でテストする方法
対象製品
文書番号 : 323350
最終更新日 : 2006年1月24日
リビジョン : 6.1
目次
概要
SMTP サービスをテストする
loadTOCNode(2, 'summary');
概要
この資料では、さまざまなシステムで使用される SMTP (Simple Mail Transfer Protocol) サービスのテスト方法について説明します。

先頭へ戻る
SMTP サービスをテストする
SMTP サービスのテストを行うには、以下の手順を実行します。
1. Windows Server 2003 を実行しているコンピュータのコマンド プロンプトに Telnet と入力して Enter キーを押します。
2. Telnet プロンプトに、set localecho と入力して Enter キーを押します。次に、open 25 と入力して Enter キーを押します ( には、コンピュータ名を指定します)。

次のような出力が表示されます。

220 computername.microsoft.com ESMTP Server (Microsoft Exchange Internet Mail Service 5.5.2651.58) ready

3. helo me と入力して Enter キーを押します。

次のような出力が表示されます。

250 OK

4. mail from:email@domain.com と入力して Enter キーを押します。

次のような出力が表示されます。

250 OK - mail from

5. rcpt to:youremail@yourdomain.com と入力して、Enter キーを押します。

次のような出力が表示されます。

250 OK - Recipient

6. Data と入力して、Enter キーを押します。

次のような出力が表示されます。

354 Send data. End with CRLF.CRLF

7. Subject:This is a test と入力して、Enter キーを 2 回押します。
8. Testing と入力して、Enter キーを押します。
9. Enter キーを押して、ピリオド (.) を入力し、Enter キーを押します。

次のような出力が表示されます。

250 OK

10. quit と入力し、Enter キーを押します。 次のような出力が表示されます。

221 Closing Port / Mail queued for delivery