バイナリパッケージ動作確認

バイナリパッケージ利用上の注意

  • 各ソフトウェアの基本的な動作およびインストールの正常完了は確認しておりますが、全機能のテストを行っているわけではありません
  • 各ソフトウェアを用いた運用結果などを弊社で保証するものではございません
  • 各ソフトウェアの設定等に関する質問には、お答えできないことがあります
  • バイナリパッケージの更新は不定期に行っているため、最新のバージョンではないことがありますのでご注意ください

構築環境

  • 対象モデル : OpenMicroServer (型番:OMS400-AL/128)
  • 対象ファームウェア: 0.4-RELEASE-20071208 IPv4/IPv6対応版
  • uname -svrmo : Linux 2.6.16 #3 Fri Dec 7 01:49:11 JST 2007 mips SSD/Linux 0.4-20071206
  • gcc : 4.1.2
  • glibc : 2.3.6

archivers/bzip2

bzip2形式ファイル用の圧縮および解凍プログラム

  • 2007/12/25 : bzip2-1.0.4 : 結果 OK

実行

# bzip2 -z < /etc/rc.conf > rc.conf.bz2
# bzip2 -d rc.conf.bz2
# md5sum /etc/rc.conf rc.conf
05077c73491828b0d50d6a84f39c2c57  /etc/rc.conf
05077c73491828b0d50d6a84f39c2c57  rc.conf

md5sumの結果に相違がないことを確認

archivers/gzip

gzip形式ファイル用の圧縮および解凍プログラム

  • 2007/12/25 : gzip-1.2.12 : 結果 OK
  • 2007/12/28 : gzip-1.2.12nb1 : 結果 OK

実行

# gzip < /etc/rc.conf > rc.conf.gz
# gzip -d rc.conf.gz
# md5sum /etc/rc.conf rc.conf
05077c73491828b0d50d6a84f39c2c57  /etc/rc.conf
05077c73491828b0d50d6a84f39c2c57  rc.conf

md5sumの結果に相違がないことを確認

archivers/lha

lha形式ファイル用の圧縮および解凍プログラム

  • 2007/12/25 : lha-114.9nb3 : 結果 OK

実行

# lha -a rc.conf.lzh /etc/rc.conf
# lha -x rc.conf.lzh
# md5sum /etc/rc.conf etc/rc.conf
05077c73491828b0d50d6a84f39c2c57  /etc/rc.conf
05077c73491828b0d50d6a84f39c2c57  etc/rc.conf

md5sumの結果に相違がないことを確認

archivers/php-bz2

PHP用のbzip2拡張

  • 2007/12/25 : php5-bz2-5.2.5 : 結果 OK

php-bz2.php

<?php
/* www.php.net上のサンプルコードをベースにしています */

$start_str = "Test string";
$bzstr = bzcompress($start_str);

echo "Compressed String: ";
echo $bzstr;

echo "\n";

$str = bzdecompress($bzstr);
echo "Decompressed String: ";
echo $str;
?>

実行

# php php-bz2.php
Compressed String: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ← bz2形式のバイナリデータが表示される
Decompressed String: Test string

補足

archivers/php-zip

PHP用のzip拡張

  • 2007/12/25 : php5-zip-5.2.5.1.0 : 結果 NG

php-zip.php

<?php
/* www.php.net上のサンプルコードをベースにしています */

$zip = new ZipArchive();
$filename = "./php5-zip.zip";

if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {
    exit("cannot open <$filename>\n");
}

$zip->addFromString("testfilephp.txt" . time(), "#1 This is a test string added as testfilephp.txt.\n");
$zip->addFromString("testfilephp2.txt" . time(), "#2 This is a test string added as testfilephp2.txt.\n");
$zip->addFile($thisdir . "/too.php","/testfromfile.php");
echo "numfiles: " . $zip->numFiles . "\n";
echo "status:" . $zip->status . "\n";
$zip->close();
?> 

実行

# php php-zip.php
numfiles: 2
status:11

実行 NGの例

# php php-zip.php
PHP Fatal error:  Class 'ZipArchive' not found in /root/php-zip.php on line 3

補足

archivers/php-zlib

PHP用のzlib拡張

  • 2007/12/25 : php5-zlib-5.2.5 : 結果 OK

php-zlib.php

<?php
/* www.php.net上のサンプルコードをベースにしています */

$filename = tempnam('/tmp', 'zlibtest') . '.gz';
$s = "Only a test, test, test, test, test, test, test, test!\n";
$zp = gzopen($filename, "w9");
gzwrite($zp, $s);
gzclose($zp);
$zp = gzopen($filename, "r");
echo "Compressed String: $s";
echo "Decompressed String: ";
gzpassthru($zp);
gzclose($zp);
?>

実行

# php php-zlib.php
Compressed String: Only a test, test, test, test, test, test, test, test!
Decompressed String: Only a test, test, test, test, test, test, test, test!

補足

archivers/zip & archivers/unzip

zip形式ファイル用の圧縮および解凍プログラム

  • 2007/12/25 : zip-2.32, unzip-5.52nb3 : 結果 OK

実行

# zip rc.conf.zip /etc/rc.conf
# unzip rc.conf.zip
# md5sum /etc/rc.conf etc/rc.conf
05077c73491828b0d50d6a84f39c2c57  /etc/rc.conf
05077c73491828b0d50d6a84f39c2c57  etc/rc.conf

md5sumの結果に相違がないことを確認

benchmarks/bonnie++

ファイルシステム I/O のベンチマークプログラム

  • 2007/12/25 : bonnie++-1.03anb3 : 結果 OK

実行

# bonnie++ -u root -s 10 -r 5
Using uid:0, gid:0.
Writing with putc()...done
Writing intelligently...done
Rewriting...done
Reading with getc()...done
Reading intelligently...done
start 'em...done...done...done...
Create files in sequential order...done.
Stat files in sequential order...done.
Delete files in sequential order...done.
Create files in random order...done.
Stat files in random order...done.
Delete files in random order...done.
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
oms401.hqlabo.p 10M  2577  95 10263  99 +++++ +++  3572 100 +++++ +++  6936  97
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16   140  88 +++++ +++  4075  67   141  87 +++++ +++   167  35
oms401.hqlabo.plathome.co.jp,10M,2577,95,10263,99,+++++,+++,3572,100,+++++,+++

benchmarks/nttcp

TCP/UDPでのネットワーク送受信のベンチマークプログラム

  • 2007/12/25 : nttcp-1.47nb1 : 結果 OK

実行

# nttcp -T nttcpsvr
     Bytes  Real s   CPU s Real-MBit/s  CPU-MBit/s   Calls  Real-C/s   CPU-C/s
l  8388608    1.72    1.72     39.1060     39.1077    2048   1193.42    1193.5
1  8388608    1.72    0.04     39.0909   1525.1321    4197   2444.75   95382.0
# nttcp -T -u nttcpsvr
     Bytes  Real s   CPU s Real-MBit/s  CPU-MBit/s   Calls  Real-C/s   CPU-C/s
l  8388608    0.74    0.74     90.8831     90.8104    2051   2777.59    2775.4
1  8388608    0.74    0.02     90.8230   3355.2754    2049   2773.05  102444.9

補足

  • nttcpのサーバ機能を別途用意する必要があります

comms/ruby-termios

Rubyで termios(3) を利用するためのライブラリ

  • 2007/12/28 : ruby18-termios-0.9.5 : 結果 OK

実行

# ruby /usr/pkg/share/examples/ruby18/termios/secret_input1.rb
noecho> (入力した文字が見えない)
"\tsecret\n"

benchmarks/httperf

HTTPでのベンチマークプログラム

  • 2007/12/25 : httperf-0.8 : 結果 OK

実行

# httperf --server www --port 80 --uri / --rate 10 --num-conn 100  --num-call 1
--timeout 5
httperf --timeout=5 --client=0/1 --server=www --port=80 --uri=/ --rate=10 --send-buffer=4096 --recv-buffer=16384 --num-conns=100 --num-calls=1
Maximum connect burst length: 1

Total: connections 100 requests 100 replies 100 test-duration 9.903 s

Connection rate: 10.1 conn/s (99.0 ms/conn, <=1 concurrent connections)
Connection time [ms]: min 2.0 avg 3.0 max 9.9 median 3.5 stddev 0.7
Connection time [ms]: connect 0.0
Connection length [replies/conn]: 1.000

Request rate: 10.1 req/s (99.0 ms/req)
Request size [B]: 54.0

Reply rate [replies/s]: min 10.0 avg 10.0 max 10.0 stddev 0.0 (1 samples)
Reply time [ms]: response 3.0 transfer 0.0
Reply size [B]: header 252.0 content 3586.0 footer 0.0 (total 3838.0)
Reply status: 1xx=0 2xx=100 3xx=0 4xx=0 5xx=0

CPU time [s]: user 1.29 system 8.61 (user 13.1% system 86.9% total 100.0%)
Net I/O: 38.4 KB/s (0.3*10^6 bps)

Errors: total 0 client-timo 0 socket-timo 0 connrefused 0 connreset 0
Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0

補足

  • WEBサーバを別途用意する必要があります

converters/nkf

JIS/Shift JIS/EUC-JP/UTF-8等に対応した文字コード変換プログラム

  • 2007/12/25 : nkf-2.05 : 結果 OK

実行

# nkf --utf8 < euc-jp.txt

シリアルコンソール端末やSSHクライアントにて受信文字コードをUTF-8に設定して、正しく表示できることを確認。

converters/php-iconv

PHP用のiconv拡張

  • 2007/12/25 : php5-iconv-5.2.4 : 結果 OK

php-iconv.php

<?php
/* www.php.net上のサンプルコードをベースにしています */
echo iconv("EUC-JP", "UTF-8", "あいうえお\n");
?>

実行

# php php-iconv.php
あいうえお

シリアルコンソール端末やSSHクライアントにて受信文字コードをUTF-8に設定して、正しく表示できることを確認。

補足

comms/ruby-termios

Rubyで Unicode 変換を行うためのライブラリ

  • 2007/12/28 : ruby18-uconv-0.4.12nb4 : 結果 OK

ruby-uconv.php

#!/usr/pkg/bin/ruby 

$KCODE='e'

require 'uconv'

eucstr = "あいうえお"

puts "euc: " + eucstr
puts "utf-8: " + Uconv.euctou8(eucstr)

実行

# ruby ruby-uconv.rb
euc: xxxxxxxxxx ←表示できない
utf-8: あいうえお

シリアルコンソール端末やSSHクライアントにて受信文字コードをUTF-8に設定して、正しく表示できることを確認。

補足

  • エンコーディングの変換の為、「ssdlinux-locales」が別途必要です

databases/mysql5-server

RDBMS「Mysql」のサーバ機能

  • 2007/12/25 : mysql-server-5.0.51 : 結果 OK

実行

# /usr/pkg/etc/rc.d/mysqld start

補足

  • インストール時「mysql」ユーザ・「mysql」グループが登録されます

databases/mysql5-client

RDBMS「Mysql」のクライアント機能

  • 2007/12/25 : mysql-client-5.0.51 : 結果 OK

実行

# mysql
mysql> use mysql
Database changed
mysql> show tables;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
〜 中略 〜
| user                      |
+---------------------------+
17 rows in set (0.00 sec)

補足

  • Mysqlサーバ機能を別途用意する必要があります

databases/openldap

LDAPのサーバ・クライアント機能

  • 2007/12/25 : openldap-2.3.39 : 結果 OK

実行

# chown -R slapd:ldap /usr/pkg/var/openldap/openldap-data/*
# chown :ldap /usr/pkg/etc/openldap/slapd.conf
# chmod 640 /usr/pkg/etc/openldap/slapd.conf
# /usr/pkg/etc/rc.d/slapd start
Starting slapd.
# ldapsearch -x
※ 表示の便宜上、行頭の「#」は削除しています
extended LDIF

LDAPv3
base <> with scope subtree
filter: (objectclass=*)
requesting: ALL

search result
search: 2
result: 32 No such object

numResponses: 1

補足

  • インストール時「slapd」「slurpd」ユーザ・「ldap」グループが登録されます
  • 「slurpd」デーモンを利用するには、/usr/pkg/etc/rc.d/slurpd の修正が必要です

/usr/pkg/etc/rc.d/slurpd 抜粋

  slurpd_user="slurpd"
  _RCCMD_su="/usr/pkg/bin/gsu" # ←追記 &「coreutils」パッケージのインストール

  load_rc_config $name
  run_rc_command "$1"	
  

databases/postgresql81

RDBMS「PostgreSQL」のサーバ・クライアント機能

  • 2007/12/25 : postgresql81-8.1.10 : 結果 OK

実行

# usermod -d /usr/pkg/pgsql pgsql
# vi /usr/pkg/etc/rc.d/pgsql
/bin/su を /usr/pkg/bin/gsu に書き換えます (2箇所)
# /usr/pkg/etc/rc.d/pgsql start
The files belonging to this database system will be owned by user "pgsql".
This user must also own the server process.

The database cluster will be initialized with locale C.

creating directory /usr/pkg/pgsql/data ... ok
〜 中略 〜
Starting pgsql.
# psql -U pgsql -l
       List of databases
   Name    | Owner | Encoding
-----------+-------+-----------
 postgres  | pgsql | SQL_ASCII
 template0 | pgsql | SQL_ASCII
 template1 | pgsql | SQL_ASCII
(3 rows)

補足

  • インストール時「pgsql」ユーザ・「pgsql」グループが登録されます
  • gsu コマンドの為、「coreutils」が別途必要です

databases/rrdtool

数値を蓄積し、グラフ化/再サンプリングするプログラム

  • 2007/12/25 : rrdtool-1.2.26 : 結果 OK

オフィシャルチュートリアルを参考に実行

実行

# rrdtool create test.rrd --start 920804400 DS:speed:COUNTER:600:U:U RRA:AVERAGE:0.5:1:24 RRA:AVERAGE:0.5:6:10
# rrdtool update test.rrd 920804700:12345 920805000:12357 920805300:12363
# rrdtool update test.rrd 920805600:12363 920805900:12363 920806200:12373
# rrdtool update test.rrd 920806500:12383 920806800:12393 920807100:12399
# rrdtool update test.rrd 920807400:12405 920807700:12411 920808000:12415
# rrdtool update test.rrd 920808300:12420 920808600:12422 920808900:12423
# rrdtool fetch test.rrd AVERAGE --start 920804400 --end 920809200
〜 中略 〜
 920808300: 1.6666666667e-02
 920808600: 6.6666666667e-03
 920808900: 3.3333333333e-03
 920809200: nan
 920809500: nan
# rrdtool graph speed.png --start 920804400 --end 920808000 DEF:myspeed=test.rrd:speed:AVERAGE LINE2:myspeed#FF0000

できあがった speed.png を操作端末上で表示して結果を確認

databases/sqlite3

クライアント・サーバー方式ではない、ファイル形式のデータベース

  • 2007/12/25 : sqlite3-3.5.2 : 結果 OK

実行

# sqlite3 test.db
SQLite version 3.4.2
Enter ".help" for instructions
sqlite> CREATE TABLE data ("id" INTEGER PRIMARY KEY NOT NULL, "name" varchar(100) DEFAULT NULL);
sqlite> insert into data ("name") values ("test data");
sqlite> select * from data;
1|test data

devel/scmcvs

CVSによるソース管理を行うためのプログラム

  • 2007/12/28 : cvs-1.11.21 : 結果 OK

実行

# export CVSROOT=:pserver:anoncvs@cvs.plathome.co.jp:/cvs/ssdlinux
# cvs login
Logging in to :pserver:anoncvs@cvs.plathome.co.jp:2401/cvs/ssdlinux
CVS password: (anoncvs と入力)
# cvs co src
以下省略

editors/vim

vim エディター

  • 2007/12/28 : vim-7.1.175 : 結果 OK

実行

# vim /file/to/path

補足

  • エンコーディングの変換を行う場合、「ssdlinux-locales」が別途必要です

lang/php5

プログラミング言語「PHP

  • 2007/12/25 : php-5.2.5 : 結果 OK

hello.php

#!/usr/bin/env php
<?php
echo ("Hello, world!\n");
?>

実行

# chmod a+x hello.php
# ./hello.php
Hello, world!

補足

lang/pear

PHP」で利用可能なライブラリをネットワーク経由でインストールするためのプログラム

  • 2007/12/25 : php5-pear-1.5.4nb1 : 結果 OK

実行

# pear install DB
WARNING: "pear/DB" is deprecated in favor of "pear/MDB2"
downloading DB-1.7.13.tgz ...
Starting to download DB-1.7.13.tgz (132,246 bytes)
............done: 132,246 bytes
install ok: channel://pear.php.net/DB-1.7.13

lang/perl5

プログラミング言語「Perl

  • 2007/12/25 : perl-5.8.8nb6 : 結果 OK

hello.pl

#!/usr/bin/env perl
print "Hello, world!\n";

実行

# chmod a+x hello.pl
# ./hello.pl
Hello, world!

lang/python24

プログラミング言語「Python」

  • 2007/12/25 : python24-2.4.4 : 結果 OK

hello.py

#!/usr/bin/env python2.4
print "Hello, world!"

実行

# chmod a+x hello.py
# ./hello.py
Hello, world!

lang/ruby

プログラミング言語「Ruby」

  • 2007/12/25 : ruby-1.8.6.111 : 結果 OK

hello.rb

#!/usr/bin/env ruby
puts("Hello, world!")

実行

# chmod a+x hello.rb
# ./hello.rb
Hello, world!

misc/less

テキストファイルの中身を表示するためのページャー

  • 2007/12/25 : less-394 : 結果 OK

実行

# less /etc/rc.conf

net/fping

詳細なパラメータ指定の可能な icmp用の ping プログラム

  • 2007/12/25 : fping-2.4b2nb1 : 結果 OK

実行

# fping ns www
ns is alive
www is alive

net/fping6

net/fping の IPv6対応版

  • 2007/12/25 : fping6-2.4b2 : 結果 NG

実行

# fping6 ::1/128

実行 NGの例

# fping6 ::1/128
※ 何も表示されない

net/hping

TCP/UDP/ICMP等のプロトコルを用い、詳細なパラメータ指定の可能な ping プログラム

  • 2007/12/25 : hping-2.0.0.3 : 結果 OK

実行

# hping -c 3 --syn -p 80 www
HPING www (eth1 172.16.14.12): S set, 40 headers + 0 data bytes
len=46 ip=172.16.14.12 ttl=64 DF id=0 sport=80 flags=SA seq=0 win=5840 rtt=1.2 ms
len=46 ip=172.16.14.12 ttl=64 DF id=0 sport=80 flags=SA seq=1 win=5840 rtt=1.0 ms
len=46 ip=172.16.14.12 ttl=64 DF id=0 sport=80 flags=SA seq=2 win=5840 rtt=0.9 ms

--- www hping statistic ---
3 packets tramitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 0.9/1.0/1.2 ms

補足

  • テストではTCP 80番へSYNパケットを送っています

net/httping

HTTP専用の ping プログラム

  • 2007/12/25 : httping-1.2.5 : 結果 OK

実行

# httping -c3  -g http://www.example.jp/
PING www.example.jp:80 (http://www.example.jp/):
connected to www.example.jp:80, seq=0 time=19.50 ms
connected to www.example.jp:80, seq=1 time=12.40 ms
connected to www.example.jp:80, seq=2 time=13.50 ms
--- http://www.example.jp/ ping statistics ---
3 connects, 3 ok, 0.00% failed
round-trip min/avg/max = 12.4/15.1/19.5 ms

net/iperf

TCP/UDPでのネットワーク送受信のベンチマークプログラム

  • 2007/12/25 : iperf-2.0.2 : 結果 OK

実行

# iperf -c iperfsvr
------------------------------------------------------------
Client connecting to iperfsvr, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[  5] local 172.16.14.18 port 4884 connected with 172.16.14.12 port 5001
[  5]  0.0-10.0 sec  48.1 MBytes  40.4 Mbits/sec

# iperf -c iperfsvr -u -b 1024M
------------------------------------------------------------
Client connecting to iperfsvr, UDP port 5001
Sending 1470 byte datagrams
UDP buffer size:   105 KByte (default)
------------------------------------------------------------
[  5] local 172.16.14.18 port 1025 connected with 172.16.14.12 port 5001
[  5]  0.0-10.0 sec  40.6 MBytes  34.0 Mbits/sec
[  5] Sent 28935 datagrams
[  5] Server Report:
[  5]  0.0-10.0 sec  40.6 MBytes  34.0 Mbits/sec  0.125 ms    0/28934 (0%)
[  5]  0.0-10.0 sec  1 datagrams received out-of-order

補足

  • iperfのサーバ機能を別途用意する必要があります

net/lftp

FTPクライアント

  • 2007/12/25 : lftp-3.5.11 : 結果 OK

実行

# lftp ftpsvr
lftp ftpsvr:~> ls
drwxr-xr-x   3 ftp      ftp          4096 Aug 11 17:53 pub

net/mping

複数のホストへ同時にicmp pingを実行するプログラム

  • 2007/12/25 : mping-2.01 : 結果 OK

実行

# mping -c 100 host1 host2
64 bytes from host1                             : icmp_seq=100 time=0.986 msec
64 bytes from host2                             : icmp_seq=100 time=1.072 msec
〜 中略 〜

---- MPING Statistics----
100 packets transmitted to each host

host1: 100 packets received, 0% packet loss
round-trip (msec)  min/avg/max/square-sum = 0.966/1.038/1.306/108.114

host2: 100 packets received, 0% packet loss
round-trip (msec)  min/avg/max/square-sum = 0.659/0.973/1.766/98.470
ページの先頭へ戻る