2012年12月28日金曜日

オープンソースのアンケートシステム「LimeSurvey」を使ってみよう ~設定編~

こんにちは。サイオステクノロジーの貝野です。

「LimeSurvey」のご紹介の続きです。

前回は、LimeSurvey を使うに当たっての前準備と、インストールの手順についてご紹介しました。
では早速アンケートを作成して公開!…といきたいところですが、その前にアンケート管理を行うための
各種設定についてご紹介します。

※こちらの手順は、アンケート作成において必須ではありませんので、設定を行わなくても
アンケート作成はできます。

2012年12月27日木曜日

オープンソースのアンケートシステム「LimeSurvey」を使ってみよう ~インストール編~

こんにちは。サイオステクノロジーの貝野です。

今回は、「LimeSurvey」のご紹介をしたいと思います。

LimeSurvey とは、Web アンケートシステムの名称です。
オープンソースでありながら、多くの機能(メール通知、結果の集計)が搭載されていることが特徴です。

今回は、LimeSurvey のインストールから設定の手順までをご紹介します。

2012年12月26日水曜日

Oracle Linux 第6回: DTrace for Oracle Linux の利用

こんにちは。サイオステクノロジーの小川です。
今年最後の Oracle Linux 連載は DTrace の使用方法と動作についての紹介をします。

DTrace for Oracle Linux は稼働中のカーネルやアプリケーションの情報を取得し、リアルタイムでのトラブルシューティングを可能にする動的トレーシング機能です。

DTrace の概要は "DTrace for Oracle Linux GA 発表" の記事にて詳細をご案内しております。

ここから DTrace の使用方法と動作を紹介していきます。
まず、ULN にて、該当 Oracle Linux に DTrace のチャンネルを追加します。

  • チャンネル名: Dtrace for Oracle Linux 6 (x86_64) - Latest
  • チャンネルラベル: ol6_x86_64_Dtrace_latest

コマンドラインから確認して、ol6_x86_64_Dtrace_latest が追加されていれば準備は完了です。

[root@ol63uek ~]# rhn-channel --list
ol6_x86_64_Dtrace_latest
ol6_x86_64_MySQL
ol6_x86_64_UEK_latest
ol6_x86_64_addons
ol6_x86_64_latest
ol6_x86_64_oracle

2012年12月25日火曜日

DTrace for Oracle Linux GA 発表

こんにちは。サイオステクノロジーの小川です。

先日 Oracle Linux 用 DTrace の GA 版が発表されました。

 Announcement: DTrace for Oracle Linux General Availability
 https://blogs.oracle.com/linux/entry/announcement_dtrace_for_oracle_linux

2012年12月18日火曜日

Oracle Linux 第5回 Unbreakable Enterprise Kernel (UEK)

Oracle Linux の主な特徴として、「ダウンタイムゼロでパッチの適用ができる Ksplice」を紹介しましたが、今回はもう一つの大きな特徴である、Unbreakable Enterprise Kernel (UEK) についてご紹介したいと思います。

Oracle Linux は Red Hat Enterprise Linux (RHEL) 互換 OS ですが、RHEL 互換 kernel とは別に Oracle 社が独自に改良を加えた Unbreakable Enterprise Kernel (UEK) が含まれています。

2012年12月10日月曜日

Jenkins 活用方~Jenkins を用いたジョブ管理~

こんにちは。サイオステクノロジーの貝野です。

本日は、「jenkins」の活用法をご紹介したいと思います。

jenkins とは、オープンソースのCIサーバの名称です。
jenkins には様々なプラグインがあり、テストやビルド以外にも色んな用途があります。

そこで、用途のひとつとして jenkins で job を管理する方法についてご紹介します。

2012年12月7日金曜日

Oracle Linux 第4回 ゼロ・ダウンタイム アップデート機能「Ksplice」管理編

Ksplice も概要編、導入編とご紹介してきましたが、今回は Ksplice 管理編をご紹介します。

Ksplice では、コマンドラインからの管理と Web の管理画面 「Uptrack website」 からの管理が行えます。今回は Uptrack website を中心に、Ksplice の管理についてご紹介します。

2012年12月6日木曜日

Oracle Linux 第3回 ゼロ・ダウンタイム アップデート機能「Ksplice」導入編

Oracle Linux 連載記事の第2回にて「Ksplice」の機能概要についてご案内しましたが、今回は実際にどのように「Ksplice」を使用するのかをご案内します。

既に Oracle Linux 連載記事の第1回で、Unbreakable Linux Network (ULN) 登録までをご案内しています。今回は登録後の状態から話を進めていきます。ULN の登録で不明な点がありましたら、第1回の内容をご参照ください。

2012年12月5日水曜日

Red Hat Enterprise Virtualization 3.1 リリース!

こんにちは、OSSテクノロジーセンターの原です。

米 Red Hat より Red Hat Enterprise Virtualization 3.1 (RHEV3.1) がリリースされました

この RHEV3.1 はマイナーアップデートながら、RHEV3.0 から非常に多くのアップデートが含まれています。

以前の RHEV3.0 はプラットフォームとして JBoss EAP5 を使用していましたが、このアップデートからは EAP6 を使用して提供されます。また、RHN の RHEV-M の提供チャンネルも追加変更されているので、RHEV3.1 を利用する場合、以下のチャンネルを有効にします。(Red Hat Network クラシック管理の場合)

  • Red Hat Enterprise Virtualization Manager (v.3.1 x86_64)
    • 別称: rhel-x86_64-server-6-rhevm-3.1
    • Red Hat Enterprise Virtualization Manager を提供します。
  • JBoss Application Platform (v 6) for 6Server x86_64
    • 別称: jbappplatform-6-x86_64-server-6-rpm
    • Manager を稼働させるアプリケーションプラットフォームの対応リリースを提供します。

2012年11月30日金曜日

mod_cluster で簡単クラスタリング ~ JBoss EAP 編

ご無沙汰しています。サイオステクノロジーの鎌田です。

今回は JBoss のプロジェクトの一つである mod_cluster を使って、クラスタリング構成を簡単に実現するレシピを紹介します。

2012年11月29日木曜日

JBossコマンドラインインタフェースのモード

こんにちは、JBossテクニカルチームの寺田です。 今回は前回に引き続き、JBossコマンドラインインタフェースのモード について紹介していきます。

JBossコマンドラインインタフェースを使ってみる

JBoss テクニカルチームの 寺田 です。
今回は、JBoss EAP6の管理に使用するコマンドラインインタフェースを紹介します。 古いバージョンのJBossでは、twiddle.shと呼ばれるコマンドラインインタフェースで、 コネクションプールの状態、JVMの状態などを取得していました。 EAP6で同じことをしようとすると、jboss-cliと呼ばれるコマンドラインインタ フェースを使うことになります。
今回はこのコマンドラインインタフェースを紹介します。

2012年11月28日水曜日

Oracle Linux 第2回 ゼロ・ダウンタイム アップデート機能「Ksplice」

現在のシステム運用では Linux Kernel のアップデートが必要な場合にはマシンの再起動が必要となるため、適用を先送りにされるケースが多々あるかと思います。しかしながら、セキュリティホールを狙う攻撃は跡を絶たず、これまでも何件もの情報漏えい事故が発生し、社会問題になるケースも数多くあります。

セキュリティソフトで不要なポートを遮断し、ウィルスからサーバを守ることはできますが脆弱性を狙った攻撃に対しては、セキュリティソフトによる対策よりも、対象の脆弱性に対するアップデートパッチを適用することが重要となります。また、 kernel のアップデートパッチにはバグ修正も含まれており、システムをクラッシュさせてしまう問題の修正なども行われております。

クライアントの PC に対しては、常に最新のセキュリティパッチ適用を呼びかけている企業が多い中で、より重要なデータが格納されているサーバに対してはサービスを停止することが出来ないという理由から、最新のセキュリティパッチは当てられていないという現状には矛盾を感じないでしょうか。

ダウンタイムが発生するからアップデートを当てていないという理由でリスクをそのままにしてしまうのであれば、ダウンタイムが発生しない技術があればこの問題は解決できるのではないでしょうか。

2012年11月26日月曜日

Oracle Linux 第1回 導入編 My Oracle Support 登録 ~ Unbreakable Linux Network 登録まで

こんにちは。サイオステクノロジーの小川です。

弊社では幾つか Linux の製品サポートをしておりますが、その中から今回は Oracle Linux について紹介をしていきます。

Oracle Linux の主な特徴として、「ダウンタイムゼロでパッチの適用ができる」という点があります。パッチの適用で、たとえばカーネルアップデートを実施する場合、通常は OS の再起動を行う必要がありますが、Oracle Linux の場合は OS の再起動をすることなくカーネルアップデートができます

ミッションクリティカルなシステムでサービス停止はビジネスに多大な影響を及ぼしますので、パッチ適用時のダウンタイム発生の課題を抱えるお客様にとって Oracle Linux の導入はベストプラクティスになります。

※ なお、ダウンタイムゼロを実現できるソフトウェアを Ksplice といいます(プレミアムサポートでのみ利用可能。)。使い方などの詳細は次回以降の記事でご紹介します。

また、Oracle Linux のライセンスは、Oracle 社が提供するポータルサイトを通じて Oracle 社のバックエンドサポートが受けられることや、バグフィックスや ERRATA 情報、パッチの取得などのサービスを受けることもできます。

本記事では Oracle Linux を利用するうえで必要な Oracle アカウントの作成や My Oracle Support の登録方法、Oracle Linux 6 のインストールまでを紹介していきます。


2012年11月20日火曜日

webmin ~リモートでサーバ管理~ 管理項目編

お久しぶりです。稲垣です。

前回の記事では、webmin のインストールから最低限行うべき設定変更までご紹介しました。

まだ読んでいない方は、webmin ~リモートでサーバ管理~ インストール編 をまずは読んでみてください。

それでは、前回 https で接続するように設定変更したので、https://[ホスト名 または IP アドレス]:10000/ にアクセスします。

表示されたトップページの左側のメニューに管理可能な項目があります。

全ての管理項目についてご紹介することはできないので、いくつかピックアップしてご紹介いたします。

2012年11月12日月曜日

Zabbix 2.0.3 セットアップ編

こんにちは、サイオステクノロジーの小川です。

今回はオープンソース統合監視ソフトウェア Zabbix の紹介です。

Zabbix は、ライセンス費用無料、かつ 機能が豊富 にあるため、既に多くの企業様が Zabbix に注目し、数々の 導入事例 があります。弊社でもお客様より Zabbix のサポートのご相談を受けることがあり、Zabbix を使用した統合監視ソリューションの需要を感じます。

さて、今回は Zabbix 2.0.3 のセットアップの話ですが、この前 Zabbix 日本法人代表の寺島様が Twitter で、Zabbix 2.0.3 のオフィシャルテスト版 RPM パッケージをアップロードした、とツイートされていたので、早速インストールしてみました。Zabbix 1.8 系を RPM パッケージでインストールするときと同じ感じでできます。

(1.8 系のインストールは ZABBIX-JP の Zabbixのインストール(RPM編) が参考になります。Zabbix の特徴は こちら に記載されています。)

本記事で使用する OS は CentOS 6.3 64bit 最小構成でインストールしています。

2012年11月8日木曜日

rsyslog のログを DB で管理する ( MySQL / PostgreSQL )

こんにちは。サイオステクノロジーの小川です。

前回は rsyslog でログを転送管理する設定をご紹介しました。今回は rsyslog のログを MySQL または PostgreSQL のデータベースに保存する方法をご紹介します。

rsyslog はデフォルトの設定ではログをテキストファイルで保存しますが、rsyslog にモジュールを追加し機能を拡張することでデータベースにログを保存できるようになります。

rsyslog で提供されているモジュールは MySQL の ommysqlPostgreSQL の ompgsql があり、これらのモジュールを追加することで、データベースにログを書き込むことができるようになります。サーバのログをデータベースで一元管理したい、 というような場合は rsyslog のモジュールを是非活用してみてください。

本記事で使用する OS は前回と同様 CentOS 6.3 64bit です。rsyslog やデータベースの使用で必要なパッケージはすべて CentOS に同梱されているものを使用します。 パッケージのバージョンは rsyslog 5.8.10、rsyslog-mysql-5.8.10、mysql-server-5.1.61、rsyslog-pgsql 5.8.10、postgresql-server 8.4.11 です。

2012年11月7日水曜日

rsyslog でリモートホストにログを転送管理する

こんにちは、サイオステクノロジーの小川です。

今回は rsyslog でリモートホストにログを転送する設定と TIPS のご紹介です。

まず、syslog はカーネルやアプリケーションが出力したメッセージをファイルに記録するプログラムですが、今回ご紹介する rsyslog には頭文字に「r」がついています。この「r」は何を示しているのかというと、「reliable」の頭文字で信頼性のある syslog という意味があります。

信頼性があるといえる理由の一つとして、rsyslog はリモートホストに TCP でログメッセージを転送できるという点があります。

syslog のデーモンプログラム syslogd では、ログを別のホストに転送する際に UDP 通信を行うので、送信したログメッセージが相手に届くという保証はありませんが、rsyslog では TCP も使用できるため、ログメッセージの転送を保障します。

障害発生で原因を追跡する際に大事なログが欠落していた、なんて事になったら致命的ですよね。今回はまず、TCP でログメッセージを別のホストに転送する設定を紹介をします。本設定はログのバックアップやログの集中管理を行いたい場合に有効です。

本記事では CentOS 6.3 64 bit、CentOS 同梱の rsyslog 5.8.10 使用しています。なお、CentOS 6.3 では標準で rsyslog はインストールされます。(最小構成でインストールした場合も rsyslog のパッケージが入り、自動的に起動されます。)

2012年11月6日火曜日

RPM パッケージのビルドと作成と公開 (6)

こんにちは、サイオステクノロジーの山田です。

前回repo ファイルを作成し、repo ファイルと鍵をインストールするだけの単純なパッケージを作成しました。

今回はパッケージを公開するサーバー上でリポジトリを作成し、クライアントでリポジトリの内容を表示したり、パッケージのインストールができることを確認します。

リポジトリ

yum サーバーにリポジトリを作成します。

リポジトリの URLhttp://yumserver.labs.sios.com/sios としたので、これに対応する sios というディレクトリを作成し、その配下に i386x86_64SRPMS の3つのディレクトリを作成します。

# cd [ドキュメントルートとなっているディレクトリ]
# mkdir sios 
# cd sios 
# mkdir i368 x86_64 SRPMS

作成したディレクトリに、それぞれ i386 で作成した RPM パッケージ (noarch も含める)、x86_64 で作成したパッケージ (noarch も含める)、ソースコード・パッケージ (i386 で作成したものも x86_64で作成したものも同一なので i386 のもの) をコピーします。

サーバの環境構築自動化を考える vol.5: KickStart ~ ks.cfg スタンダード構成編

こんにちは、OSSテクノロジーセンターの原です。

前回は主に ks.cfg の読み方について説明しましたが、そのままの設定ですと必須項目も足りないためインストールを行う事ができません。

今回はその必須項目も合わせて設定し、まずはスタンダードな構成で動くように調整します。

まず前回の ks.cfg ファイルを確認してみましょう。

# Kickstart file automatically generated by anaconda.

#version=DEVEL
install
cdrom
lang en_US.UTF-8
keyboard us
network --onboot no --device eth0 --bootproto dhcp --noipv6
rootpw  --iscrypted XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
firewall --service=ssh
authconfig --enableshadow --passalgo=sha512
selinux --enforcing
timezone --utc Asia/Tokyo
bootloader --location=mbr --driveorder=vda --append="crashkernel=auto rhgb quiet"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart --linux --drives=vda
#volgroup VolGroup --pesize=4096 pv.01
#logvol / --fstype=ext4 --name=lv_root --vgname=VolGroup --grow --size=1024 --maxsize=51200
#logvol swap --name=lv_swap --vgname=VolGroup --grow --size=2016 --maxsize=2016
#part /boot --fstype=ext4 --size=500
#part pv.01 --grow --size=1

%packages
@core
@server-policy
%end

インストールソースの指定や、ディスク配置の指定など、必須項目が抜けていることがわかります。

これらの必須項目を埋め、ks.cfg ファイルとして利用できるように編集していきましょう。

2012年11月1日木曜日

yum, rpm vs apt-get, dpkg 対応表

こんにちは、サイオステクノロジーの山田です。

サイオスの「OSS よろず相談室」では Red Hat 系の OS だけでなく Debian 系の OS についてもサポートを行なっています。そこで今回の内容は Red Hat 系と Debian 系のパッケージ管理に関してです。

ネットで検索してみると Red Hat 系のパッケージ管理をまとめた記事は Red Hat 系で閉じていて、Debian 系のパッケージ管理をまとめた記事は Debian 系で閉じているものが多く、両方を対照的に書いた記事はあまり見当たりません。そこで今回は両方のパッケージ管理の対応についてまとめました。

両方のパッケージが完全に同じ操作や表示を行うとは限りませんが、大体同じような内容のものだという感覚で利用して下さい。

2012年10月30日火曜日

WebコンソールのDatasource設定項目について

こんにちは、JBoss テクニカルチームの 馬塲 です。

前回の「WebコンソールからのDatasourceの登録手順について」に続き、WebコンソールのDatasource設定項目についてご紹介します。


◆Datasourceの設定変更画面について

JBossのWebコンソールで [Profile]-[Connector]-[DataSources] から呼び出した画面内にある Selection(赤枠内) にて、対象のデータソースに関する各種設定を変更する事が可能です。

サーバの環境構築自動化を考える vol.4: KickStart ~ ks.cfg 基礎編

こんにちは、OSSテクノロジーセンターの原です。

少し時間が空いてしまいましたが、前回までで KickStart 環境構築準備の手順としては完了しました。


4回目である今回は、KickStart 環境のキモである、レシピとなる ks ファイルの基本的な作成方法を見ていきます。

ks ファイルのテンプレートとして利用できるファイルは、OS インストール時に /root/anaconda-ks.cfg に作成されます。

まずは minimal インストールを行なった際に生成された、anaconda-ks.cfg を見ていきましょう。

オープンソース CMS:Joomla (1)

こんにちは。OSS テクノロジーセンタの村田です。
最近は Apple 社の新製品の発表や、Microsoft 社の Windows 8 の発売で一部が盛り上がりを見せていましたが、サイオステクノロジーの OSS チームもその熱に負けないように OSS 情報を発信していきたいと思います。
とは言え、私も技術者の端くれなので、新しい MacBook Pro と Windows 8 は気になっていたりします。

さて、話が少々脱線してしまいましたが、最近 OSS よろず相談室関連でオープンソース CMS 関連のお話を耳にする機会が多くなっています。この流れに乗ってしまおうということで、「最新のオープンソース CMS を片っ端から導入してみよう」というシリーズを考えています。

まず、最初に取り上げるのは Joomla 3.0 です。Joomla の知名度は、まわりの反応や実績を見る限り、日本ではそこまで高くはないように感じますが、世界的には IKEA や GE など有名企業での導入実績があります。また、Packt Publishing という英国にある出版社が行なっている CMS のコンテストで、2011 年度の 1 位を獲得した実績のあるオープンソース CMS です。


Joomla! The CMS Trusted By Millions for their Websites
http://www.joomla.org/

2012 年 9 月 27 日に Joomla 3.0 を公開したばかりなので、早速最新のバージョンを CentOS 6.3 に入れてみたいと思います。
Joomla 3.0 のインストールガイドは10月24日の時点では確認することが出来ないため、旧バージョンである 2.5 向けのドキュメントをベースにしています。

2012年10月26日金曜日

WebコンソールからのDatasourceの登録手順について

こんにちは、JBoss テクニカルチームの 馬塲 です。

前回の「JBoss EAP 6 Webコンソールのメニュー概要」に続きまして、今回はWebコンソールからのDatasourceの登録手順についてご説明します。


◆使用環境について

使用しているミドルウェアは以下になります。

  • アプリケーション・サーバー: JBoss Enterprise Application Platform 6.0
  • データベース・サーバー: PostgreSQL 9.2.0

接続先となるデータベースの情報は以下のとおりです。

  • ポート: 5432
  • データベース名: Sample
  • ユーザー名: postgres
  • パスワード: postgres

なお、今回は以下のJDBCドライバを使用して接続します。

  • JDBCドライバ: postgresql-9.1-902.jdbc4.jar

bind で minimal-responses yes; とした際の動作 (CVE-2012-5166 に関連して)

こんにちは、サイオステクノロジーの金田です。

ネームサーバ (DNS) ソフト BIND の脆弱性、CVE-2012-5166 についての 情報 (ISC.org、日本語) において、「一時的な回避策: "minimal-responses"オプションを"yes"に設定することで回避可能です。」という情報が掲載されています。

minimal-responses のマニュアル*1記載内容は、以下のとおりで、

minimal-responses
If yes, then when generating responses the server will only add records to the authority
and additional data sections when they are required (e.g. delegations, negative responses).
This may improve the performance of the server.
The default is no.

委任応答 (delegations) あるいは ネガティブ応答 (negative responses) といった応答で、必要に応じて、AUTHORITY データセクションと ADDITIONAL データセクションをレコードに追加する」、と読めます。

*1: BIND 9.5 Administrator Reference Manual から options Statement Definition and Usage または、/usr/share/doc/bind-9.8.2/arm/Bv9ARM.ch06.html

そこで今回は、BIND で "minimal-responses"オプションを"yes" と設定した際、どのような動作になるかをご紹介します。

2012年10月24日水曜日

webmin ~リモートでサーバ管理~ インストール編

皆様、お久しぶりです。稲垣です。

今回は、webmin についてご紹介していきます。

webmin とは、Web ブラウザからリモート操作して、UNIX/LINUX のシステムの管理を行うことができるソフトウェアです。デフォルトで管理できる項目としては、ユーザー管理、HTTP、FTP、DNS、NFS といった基本的なものから、ログの閲覧やクラスタ関係といったものなど様々です。また、モジュールを追加することにより、さらにたくさんのサービスの管理を行うことができます。

今回の記事では、webmin インストール、主な使用方法についてご紹介します。

2012年10月18日木曜日

RPM パッケージのビルドと作成と公開 (5)

こんにちは、サイオステクノロジーの山田です。

前回Mozc のインストールと設定およびMozcの特徴について解説しました。

今回は、いよいよ作成したパッケージを独自リポジトリを作成して公開する方法について解説していきます。


独自リポジトリによるパッケージの公開

mozc の作成に関連して作成したパッケージとソースコードを独自リポジトリを作成して公開してします。

リポジトリを公開するにあたり必要になるものを列記します。

  • 公開するのに使う WEB サーバー
  • どのサーバーのどこにパッケージがあるか等の情報を含んだリポジトリ・ファイル
  • リポジトリそのもの
  • これだけのものを作成すれば独自リポジトリでパッケージを公開することができます。


    2012年10月11日木曜日

    OpenAM を使ってシングルサインオンを構築する (Google Apps 連携編)

    こんにちは。サイオステクノロジーの小川です。

    前回まで OpenDJ と Tomcat を使用して LDAP サーバとアプリケーションサーバの構築を行いました。


    今回はこれらを利用して OpenAM のインストールから Google Apps との連携までの設定をしていきます。以下に手順を記載します。


    2012年10月9日火曜日

    RPM パッケージのビルドと作成と公開 (4)

    こんにちは、サイオステクノロジーの山田です。

    前回までは mozc パッケージの作成方法とパッケージに署名を入れる方法について見てきました。

    ここまでで mozc を動作させるのに必要なパッケージはすべて作成されているので、今度は mozc のインストールと設定方法について見ていくことにします。

    まず、mozc のソース・パッケージから作成されるパッケージについて見ていきます。

    $ cd ~/rpmbuild/RPMS/x86_64
    $ ls *mozc*
    emacs-common-mozc-1.5.1090.102-2.fc17.x86_64.rpm
    ibus-mozc-1.5.1090.102-2.fc17.x86_64.rpm
    mozc-1.5.1090.102-2.fc17.x86_64.rpm
    mozc-debuginfo-1.5.1090.102-2.fc17.x86_64.rpm
    $ cd ~/rpmbuild/RPMS/noarch
    $ ls *mozc*
    emacs-mozc-1.5.1090.102-2.fc17.noarch.rpm
    emacs-mozc-el-1.5.1090.102-2.fc17.noarch.rpm
    xemacs-mozc-1.5.1090.102-2.fc17.noarch.rpm
    xemacs-mozc-el-1.5.1090.102-2.fc17.noarch.rpm
    

    iBus 上で mozc を利用するには mozcibus-mozc パッケージが必要になります。

    emacs-mozc*emacsmozc を利用するためのパッケージ、 xemacs-mozc*xemacsmozc を使うためのパッケージとなります。

    iBus 上でmozc を利用するので mozc と ibus-mozc をインストールします。

    $ sudo rpm -ivh mozc-1.5.1090.102-2.fc17.x86_64.rpm ibus-mozc-1.5.1090.102-2.fc17.x86_64.rpm
    準備中...                ########################################### [100%]
       1:mozc                   ########################################### [ 50%]
       2:ibus-mozc              ########################################### [100%]
    

    2012年10月2日火曜日

    RPM パッケージのビルドと作成と公開 (3)

    こんにちは、サイオステクノロジーの山田です。

    前回mozc のビルドを開始し、CentOSFedra EPELの範囲でビルドに必要なパッケージをインストールし、そこには含まれていなかった zinniaFedora のソース・パッケージからビルドして、zinnia と関連するパッケージをインストールしました。

    今回は、mozc のビルドに必要なパッケージが揃ったので、mozc そのものをビルドしていきます。

    $ cd ~/rpmbuild/SPECS/
    $ rpmbuild -ba mozc.spec
    実行中(%prep): /bin/sh -e /var/tmp/rpm-tmp.p57ke1
    + umask 022
    + cd /home/packager/rpmbuild/BUILD
    + LANG=C
    ............................................................................
    Package gtk+-2.0 was not found in the pkg-config search path.
    Perhaps you should add the directory containing `gtk+-2.0.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'gtk+-2.0' found
    Package gdk-2.0 was not found in the pkg-config search path.
    Perhaps you should add the directory containing `gdk-2.0.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'gdk-2.0' found
    ............................................................................
    

    エラーとなって終了してしまいました。出力されたメッセージに

    gtk+-2.0 was not found in the pkg-config search path ....
    という部分があります。

    gtk+-2.0pkg-config サーチ・パスにないためにエラーとなっています。gtk+-2.0をパスに含んだパッケージがないか捜してみます。

    LinuxにAndroid開発環境を構築してみよう

    はじめまして。サイオステクノロジーの貝野です。
    どうぞよろしくお願いします。

    私は今年の3月に SIOS に入社したのですが、それまでは Java を中心としたアプリケーション開発に携わっていました。

    そこで今回は、Linux に Android アプリケーション開発環境を構築する手順をご紹介したいと思います。

    2012年10月1日月曜日

    kdump でクラッシュダンプを取得しよう

    ご無沙汰しています。サイオステクノロジーの鎌田です。

    OSS よろず相談室でよくお問い合わせいただくものの中に、OS がハングアップしたり、kernel がクラッシュしてシステムが停止する事例があります。画面上やログに、その問題が起きた形跡が記録されていると、ある程度調査を行うことは可能ですが、より詳細に調査を行うためにはクラッシュダンプが必要になります。

    今回は、そのクラッシュダンプを取得する方法である kdump について書きたいと思います。

    2012年9月28日金曜日

    JBoss EAP 6 Webコンソールのメニュー概要

    こんにちは、JBoss テクニカルチームの 馬塲 です。

    今回は、JBoss EAP が 6 へバージョンアップしたことで、メンテナンス性が向上したという管理ツール「Webコンソール」について、簡単ではありますがご紹介します。

    サーバの環境構築自動化を考える vol.3: KickStart ~ TFTP 構築ほか

    こんにちは、OSSテクノロジーセンターの原です。

    前回は環境構築の前段として、DNS(BIND) の構築を行いました。

    3回目である今回は、TFTP や yum repos など周辺の環境を一気に整えてしまいましょう。

    2012年9月27日木曜日

    OpenAM を使ってシングルサインオンを構築する (Tomcat 設定編)

    こんにちは。サイオステクノロジーの小川です。

    前回の「OpenAM を使ってシングルサインオンを構築する (OpenDJ セットアップ編)」では、OpenDJ を使った LDAP サーバの構築を行いました。今回は Tomcat を使用してアプリケーションサーバの構築を行います。この後の作業で OpenAM の jar ファイルをアプリケーションサーバにデプロイして OpenAM のセットアップを行っていきます。本記事では CentOS6.3 64bit、Tomcat6、OpenJDK1.6 を使用しています。

    2012年9月26日水曜日

    サーバの環境構築自動化を考える vol.2: KickStart ~ DNS 構築

    こんにちは、OSSテクノロジーセンターの原です。

    前回は環境構築の手順として、DHCP の構築を行いました。

    2回目である今回は、KickStart とは直接関係はしないのですが、より効率的な管理のため、DNS(BIND) を構築を紹介したいと思います。

    ownCloudでオンラインストレージを構築する

    こんにちは。サイオステクノロジーの小川です。

    今回はオンラインストレージを構築できるオープンソースソフトウェア ownCloud のご紹介をします。

    オンラインストレージといえば、最近は Google Drive や Dropbox のようなクラウドサービスで提供され、プライベートやビジネスで活用でき、大変便利な時代になりました。これらのクラウドサービスでは、サービスベンダが用意したサーバやストレージ、ネットワークを利用しますが、ownCloud は自前で環境を用意し、ストレージサーバを構築することができるので、自由度があります。

    また、現在はストレージの価格が昔に比べて下がっているので、有償サービスを使うよりも大容量で安く済む場合があるといったメリットもあります。

    本記事では、ownCloud サーバとクライアントソフトのインストールと簡単な利用方法について紹介します。 OS は openSUSE12.2 64 bit を使用しています。

    2012年9月25日火曜日

    サーバの環境構築自動化を考える vol.1: KickStart ~ DHCP 構築

    こんにちは、OSSテクノロジーセンターの原です。

    弊社ではイベントセミナーで、ハンズオンなどを精力的に行ない、製品や技術の展開を行なっています。

    ハンズオンを行なう場合、同じ内容を数回~数十回と行なう場合もあり、そのたびにリフレッシュされたサーバ環境が必要になります。 そのようなこともあり、サーバ環境構築の自動化が非常に重要だったりもします。

    今回からは、これまで紹介した oVitrRed Hat Enterprise Virtualization(RHEV) の "物理サーバ" 側の自動構築を行なう方法をご紹介したいと思います。

    oVitrRHEV のデプロイ用といっても、利用している技術はどれも非常にポピュラーなもので、いわゆる PXE Boot を利用した KickStart を用いています。

    KickStart は他の用途にもいくらでも使い道がありますし、周辺技術として Linux のサービス構築技術を得ることができますので、Linux 初心者の方も一度環境を構築してみると、いろいろと気づきや応用力が養えるので、お勧めです。

    また、KickStart だけでは足りないところを補足する技術として、PuppetChef があります。

    より高度な自動化を模索したい方は、そちらについても調べてみてはいかがでしょうか。

    前置きが長くなりましたが、まずは、今回ご紹介する環境をご紹介します。

    RPM パッケージのビルドと作成と公開 (2)

    こんにちは、サイオステクノロジーの山田です。

    前回mozc をビルドするのに必要な環境を整えるまでの解説をしました。

    今回からはいよいよ、mozc のソースをダウンロードしてビルド作業を開始します。

    ソースコードの入手

    それでは、今度は Fedora から mozc のソースコードを取ってきましょう。RPM 系のパッケージ管理を使っている場合、ソースコードを取ってくるにはyumdownloader というコマンドを使います。yumdownloader は RPM パッケージを取得するコマンドですが、--source というオプションをつけるとソース・パッケージ (.src.rpm) を取得します。

    また、 --enablerepo=repository1,repository2,... というオプションは、リポジトリ・ファイル(.repo) で enable=0 として無効化されているレポジトリを有効にします。

    $ yumdownloader --source --enablerepo=fedora,fedora-updates mozc
            ....................................................
    mozc-1.5.1090.102-2.fc17.src.rpm                         |  47 MB     00:09
    

    CentOS には mozc パッケージはないので、Fedora のレポジトリを有効にしてソースコード・パッケージをダウンロードしています。

    yumdownloader の詳しい使い方は man を参照して下さい。

    2012年7月現在、Fedora から入手できる mozc のソースコード・パッケージ は下記のバージョンになります。これは mozc プロジェクトの最新リリースと一致し ています。

    mozc-1.5.1090.102-2.fc17

    2012年9月21日金曜日

    OpenAM を使ってシングルサインオンを構築する (OpenDJ セットアップ編)

    こんにちは。サイオステクノロジーの小川です。

    今回は ForgeRock 社より提供されているシングルサインオンを実現するソフトウェア OpenAM のご紹介をします。

    社内で運用するシステムが増え続けていくなかで、システムごとに ID が異なるために ID 管理の負荷がかかったり、各サービスのログインで毎回認証を求められて手間がかかるといった問題があるかと思います。

    シングルサインオンの仕組みを取り入れることで、1 つの ID とパスワードで認証を行い、他のシステムの認証手続きを行わずにサービスを利用することができます。これにより、システム管理者やサービスを利用するユーザーへの負担を減らせるメリットがあります。

    OpenAM は認証連携のデファクトスタンダードである SAML2.0 仕様に対応をしているため、同一の認証プロトコルを使用する Google Apps や Salesforce などのサービスでシングルサインオンを実現できます。

    認証で使用するユーザー情報は LDAP ディレクトリサービスを使用して一元管理します。今回は LDAP を実装する Java ベースの OpenDJ を使用してユーザー情報の管理を行います。OpenDJ も ForgeRock 社より提供されているオープンソースソフトウェアです。

    OpenDJ は CUI 及び GUI でセットアップが行えますので、以下に手順を記載します。本記事では CentOS6.3 64bit、OpenDJ 2.4.5 を使用しています。


    2012年9月20日木曜日

    JBoss EAP6.0とEAP5.1.2の比較検証

    こんにちは、JBoss テクニカルチームの 手塚 です。
    まだまだ残暑が厳しいかと思いますが、皆様いかがお過ごしですか?

    先日は敬老の日で祝日があり、3連休でした。祝日と言えば、今年は例年に比べ、1年間を通しての休日が少ないらしいですが、2006年にも同じ様に例年に比べて休日が少なかったのはご存知でしょうか。
    2006年には、臨時祝日として「海苔の日」などを祝って臨時祝日としようとしたらしいですね。(臨時祝日になったのかは覚えていませんが・・・)

    そんな脈絡もない前書きではありますが、今回からJBossテクニカルチームは色々な検証を行い、その結果をブログとして報告していこうと思います。さて、JBossテクニカルチームとして初の投稿となる今回は『JBoss EAPの機能改善検証』を行なっていこうと思います。

    2012年9月18日火曜日

    RPM パッケージのビルドと作成と公開 (1)

    こんにちは、サイオステクノロジーの山田です。

    今回から数回に渡り、RHEL6 用の Mozc (Google 日本語入力のオープンソース版) をビルドして公開するまでの作業を通じて、RPM パッケージのビルド方法、作成方法、独自リポジトリの作成方法等について解説していきます。

    はじめに

    Google 日本語入力は、GoogleWindowsMacAndroid 向けにリリースしている日本語入力ですが、これは Google の検索エンジンで検索されている語句の情報を元に辞書が作成されています。 よく検索される新しい単語が登録されている他、候補に出てくる単語の順序等にも Google の検索技術が用いられているなど、Google の検索技術を生かした日本語入力となっています。

    Google 日本語入力は、Google の検索技術を利用しているため、プロプライエタリなソフトウェアとして提供されていてます。

    しかし、Google が公開できない部分を除外して、オープン・ソース・ソフトウェアとして Mozc というものを公開しています。

    Mozc には Google 日本語入力で一番重要な辞書の部分が一部しか入っていませんが、それでも Linux で利用できるオープンソースの日本語入力としては大変有力なものとなっています。

    FedoraUbuntu 等の Linux ディストリビューションでは、 すでにこの Mozc を取り込んでパッケージとして提供しています。

    本稿では Fedora が提供している Mozc のソース・パッケージを元に、CentOS 6 用 (Scientific Linux 6RHEL 6 でも動作可能) のパッケージ を作成していきます。

    作成の過程で RPM パッケージの作成の仕方を解説していきます。さらに、作成したパッケージを独自リポジトリーで公開する過程で、gpg の鍵により署名した RPM パッケージの作成方法やリポジトリの作成方法、リポジトリに登録されているパッケージの表示方法等についても解説します。

    2012年8月14日火曜日

    Windows Azure の IaaS について (2)

    こんにちは、サイオステクノロジーの山田です。

    前回は Windows Azure の IaaS を利用して、CentOS を OS とする 仮想マシンをディプロイするまでの方法を解説しました。

    今回は、ディプロイした仮想マシンについてどのような状態になっ ているのかを見いていくことにしましょう

    右の図は前回ディプロイした仮想マシン CentOS6-2 が稼働中であることをしめしています。

    "CentOS" の右側にある矢印 "→" をクリックすると仮想マシンのダッシュボード画面が現れます。

    左上は時系列で見た CPU 使用率、データの入出力量、ディスクのリード及びライトのスループットがグラフで示されます。

    その下の CPU の利用状況、ディスクの詳細が示されています。

    次に右側の "quick glance" のところを見ていきます。この部分を拡大すると下記のようになります。

    Windows Azure の IaaS について (1)

    こんにちは、サイオステクノロジー OSS テクノロジー・センターの山田です。

    Windows Azure の 90 日間評価版を使って Windows Azure の IaaS を試して
    みたので、使い方をまとめておきます。

    まず Windows Azure のホームページ左上に無料評価版へのリンクがあるので、ここから無料評価版の登録を行います。

    登録が完了したら、またホームページに戻り、画面上方のアカウントという部分をクリックします。すると次の画面が現れます。

    2012年7月5日木曜日

    Mac 風 OS「Pear Linux 5」beta 版を触ってみた ~Wine 付き~

    お久しぶりです。サイオスの稲垣です。

    以前に Mac 風 OS を触ってみましたが、今回は、その次のバージョンの beta 版が出ていることをたまたま発見したので、インストールしてみました。

    今回触ってみた OS は、Pear Linux です。

    前回触っていた Comice OS は、Pear OS の後継にあたるディストリビューションでした。バージョン 5 では 、名称が Pear Linux となるようです。

    ダウンロードは以下から。Pear Linux は Ubuntu12.04 ベースとなっており、現在 32bit 版で Beta2、64bit 版で Beta1 がリリースされています。

    Pear Linux 5 Beta 2 32 bit & beta 1 64 bit

    2012年6月27日水曜日

    virt-v2v を使用して Xen 環境から KVM 環境へ

    こんにちは。サイオステクノロジー OSS テクノロジーセンターの村田です。

    SIOS では、本日も RHEV ハンズオンセミナーを開催しております。 その、関連したトピックスとして v2v の機能をご案内したいと思います。


    Red Hat より Xen を標準搭載した Red Hat Enterprise Linux (RHEL) 5 が発売されたのが 2007年3月となるため、当時導入を行なわれたシステムも5年以上経過し、リプレースの時期が来ているのではないでしょうか。

    この時に Xen で仮想環境のシステムを導入された方の中には、現在動作している Xen 仮想ホスト上の VM はどのように移行しようかと、お悩みの方も中にはいるのではないかと思います。

    今回は、当時の Linux では標準的に提供されていた Xen 仮想ホストから KVM 仮想ホストへ移行を行う virt-v2v をご案内します。

    まずは簡単ですが、virt-v2v の概要と対応する仮想ホストを紹介します。

    virt-v2v とは

    virtual to virtual の略で Xen、KVM、VMware ESX 仮想プラットフォームの仮想マシンを libvirt で管理する KVM もしくは、 Red Hat Enterprise Virtualization (RHEV) で稼働するよう変換する機能です。


    virt-v2v が対応するソースハイパーバイザー(元となる仮想ホスト)

    - Xen
    - KVM
    - VMware ESX

    virt-v2v は、Xen 以外にも VMware ESX の仮想ゲストも移行できるので、プロプライエタリな製品からオープンソースへという流れもできそうですね。

    ここからは導入方法からコンバートまでを最小の手順で行ないたいと思います。

    SUSE Studio で仮想マシンを作成してみよう!

    こんにちわ。サイオステクノロジーの稲垣です。

    今回は、SUSE Studio についてご紹介します。

    既にご存知の方も多いとは思いますが、SUSE Studio は Web 上で仮想マシンの作成やハードディスクのイメージ作成、ライブ CD の作成などを行うことが出来るプログラムです。

    では、早速使用方法をみていきましょう。

    まずは、以下のリンクにアクセスします。

      SUSE Studio

    2012年6月22日金曜日

    RHEV のアップストリーム、oVirt 3.1beta を試してみました 第2回: GlusterFS 連携

    こんにちは、OSSテクノロジーセンターの原です。

    前回は oVirt3.1beta の engine 部分の導入を紹介いたしました。

    今回は、目玉の一つである GlusterFS 連携についてご紹介したいと思います。

    2012年6月21日木曜日

    SLES11SP2 新機能 「Snapper」

    ごきげんいかがですか。サイオステクノロジーの稲垣です。

    最近、遅ばせながら SLES11SP2 を触っています。

    今回は、その SLES11SP2 にて導入された新機能「Snapper」について紹介したいと思います。

    SLES11SP2 では、新たに Btrfs というファイルシステムがサポートされました。

    Btrfs の主な機能の 1 つとしてスナップショットを使用できる点が挙げられますが、そのスナップショットを GUI で管理できるようにする機能が Snapper となります。

    今回は、スナップショットと Snapper を使用して、PostgreSQL をインストールした後にインストール前の状態に戻すという作業を行なってみます。

    ※今回の環境は、OS インストール時にシステムディレクトリを Btrfs にフォーマットしています。

    では、早速使用してみましょう。

    2012年6月19日火曜日

    /etc/hosts に同一ホスト名で異なる IP アドレスを設定した場合の挙動

    おはようございます。サイオステクノロジーの稲垣です。

    今回は、/etc/hosts ファイルに 2 つ以上の異なるネットワーク上に存在する IP アドレスを記載した時の挙動について、ご紹介します。

    例えば、/etc/hosts ファイルに以下のような記載があるとします。

    【記載例】
    192.168.0.100         sample
    192.168.1.100         sample
    

    この場合、デフォルトの設定では最初に設定された IP アドレスが使用されます。

    この挙動は、/etc/host.conf ファイルの内容を変更することにより変化します。

    複数の IP アドレスを扱う設定値としては、"multi" または "reorder" になります。 いずれもデフォルト値は off です。

    "multi on" に設定することにより、最初に設定されたホスト名だけでなく、同一ホスト名で複数設定されているすべての IP アドレスを返します。

    "multi on" と設定し、さらに "reorder on" とすることにより、同一ホスト名で複数の IP アドレスが存在する場合、同じサブネット内の IP アドレスを先に返す挙動になります。

    なお、いずれの設定を行なってもラウンドロビン等は行われません。

    その他にも host.conf にて設定可能な項目はありますので、詳細については "man 5 host.conf" を参照してみてください。

    以上、稲垣でした。

    2012年6月18日月曜日

    RHEV のアップストリーム、 oVirt 3.1beta を試してみました 第1回

    こんにちは、OSSテクノロジーセンターの原です。

    以前ご紹介した oVirt 3.0 の最新開発版である 3.1beta が出ていましたので試して見ました。

    前回: オープンソース仮想化管理ソリューション oVirt 3.0 を使ってみました

    oVirt は Red Hat Enterprise Virtualization(RHEV) のアップストリームとなっており、これに取り込まれた機能たちは次の RHEV で取り込まれる可能性があります。

    というわけで早速新規インストールで試してみます。

    なお、以下の情報を参考に構築しました。

    途中までは 3.0 の時とほぼ同じ構築手順です。

    2012年6月8日金曜日

    ネイティブ API と抽象化 API のパフォーマンス

    こんにちは。サイオステクノロジー 渡辺です。

    今回は PostgreSQL へのアクセスにおけるネイティブ API と抽象化 API のパフォーマンスについて紹介をします。

    はじめに
    PostgreSQL は libpq と呼ばれる Cライブラリを提供しています。Cプログラムの場合、libpq ライブラリで提供された API を用いて PostgreSQL サーバを操作します。Ruby や PHPなど C言語で作成されたプログラムは、libpq を利用したモジュールを提供しています。Ruby では ruby-pg, PHP では pgsql や PDO の PostgreSQL ドライバが libpq を利用しています。

    2012年6月7日木曜日

    クラウド対応満載の Fedora17 リリース!

    こんにちは、OSSテクノロジーセンターの原です。

    去る 5月29日、待望の Fedora17(Beefy Miracle) がリリースされました。

    ここ 2~3年、自宅では Windows は全く使わず Fedora で生活しています。という訳で、早速環境を 17 にアップグレードしました。

    なお、通常 Fedora のバージョンをまたいだアップグレードは以下の方法で行いますが、今回はディレクトリ構成が変更され、/usr ディレクトリ下に /bin、/sbin、/lib が配置されるようになった関係もあり、一筋縄ではきません。

    # yum --releasever=17 --disableplugin=presto distro-sync
    

    具体的にはファイルシステムの変換が必要になります。

    詳しくは公式 Wiki の Upgrading Fedora using yum をご確認ください。

    Fedora17 の主な特徴は次のとおりとアナウンスされています。

    • GNOME 3.4 および KDE 4.8
    • OpenStack, Eucalyptus, CloudStack および Open Nebula
    • カラー印刷時の ICC プロファイル、他、色々と改良された GIMP
    • 仮想化環境へのさらなる対応強化

    ここで気になるのは、やはり 2個目と 4個目ですね。

    Fedora17 では、Cloud 関連がかなり強化されています。以下はリリースノートの引用です。

    2.6.1. CloudStack

    Fedora 17 は CloudStack パッケージを含みます。これは成熟した Infrastructure as a Service (IaaS) プラットフォームを提供します。

    2.6.2. OpenNebula

    Fedora 17 は新しく OpenNebula を追加しました。OpenNebula はデータセンター仮想化に適合した IaaS プラットフォームを提供します。環境の管理はコマンドラインまたはグラフィカルインターフェースを通して実行できます。Amazon EC2 the Open Cloud Computing Interface (OCCI) との互換性が含まれます。

    2.6.3. OpenStack

    Fedora 17 は OpenStack スイートの最新バージョン、コードネーム "Essex" が含まれています。この新しいリリースに含まれるのは、最新バージョンのウェブ管理インターフェース ("Horizon") および仮想ネットワーク ("Quantum") です。AQMP バックエンドに対する RabbitMQ の代替として Qpid が新しく Fedora 17 において使用されます。さらに、複数の仮想ディスク形式をサポートする libguestfs の利用により、Fedora の OpenStack はより柔軟性を提供できます。

    2.6.4. Open vSwitch

    Fedora 17 は Open vSwitch を含みます。これは仮想マシンにネットワークサービスを提供するために使用されるソフトウェアによるネットワークスイッチです。Open vSwitch は管理しやすくするために OpenFlow をサポートします。

    今をトキメク OpenStack、CloudStack、OpenNebula、Open vSwitch どれでも選び放題ですね!

    しかも、Fedora で導入された機能は、将来 RHEL に取り込まれる可能性があります。

    ということは・・・これからが実に楽しみですね。

    もちろん、先日紹介した oVirt に関しても、リポジトリに登録されました。

    みなさまもこの機会に、将来 RHEL に取り込まれるであろう機能たちを Fedora を通じて試してみてはいかがでしょうか。

    2012年5月23日水曜日

    OS比較 その2 ~GUIインストール編~

    お久しぶりです、サイオステクノロジーの稲垣です。

    今回は第 2 回としまして、GUI インストールを比較していきます。

    GUI インストールはテキストインストールと比べて選択する項目が多いことが予想されます。
    さて…結果やいかに…

    2012年5月14日月曜日

    連載「ZFS on Linux」第3回~重複削除~

    サイオステクノロジー 鎌田です。

    前回からかなり間が空いてしまいました。今回は ZFS の機能の一つである、重複削除について見ていきます。本連載記事のバックナンバーはこちら。

    2012年5月7日月曜日

    Linuxルーターを構築する(rp-pppoe設定編)

    こんにちは。サイオステクノロジーの小川です。

    本日は Linux ルーターの構築方法のご紹介をします。

    Linux ルーターを構築するメリットとしては、CPU やメモリ、NIC などを自分で選択できることや、ルーターで使用するコンピュータを他のサーバ用途で使用できることがあげられます。また、ルーターへの負荷の問題などを考慮した場合に、Linux を使用した方が制限のある市販のルーターと比べ、柔軟に対応ができることが考えられます。

    まずはじめに、プロバイダと PPPoE で通信を行うために rp-pppoe の設定を行いました。OS は CentOS 5 系と 6 系を使用しています。RPM パッケージからインストールした場合とソースコードからインストール場合を試したので、設定方法を下記に記載します。なお、本記事では NIC を 2 枚刺した PC 環境で設定を行っています。


    2012年5月2日水曜日

    PostgreSQL のルールを利用した書き込み専用データベースの構築

    こんにちは。サイオステクノロジー 渡辺です。

    今回は PostgreSQL のルールを利用した書き込み専用データベースを紹介します。

    はじめに

    PostgreSQL には他の RDBMS には見られないルールがあります。ルールはトリガと同様にクエリ発行時に自動処理を行う為の仕組みです。ルールシステムは初期の Postgres からサポートされ、現在の PostgreSQL 全てが持っている機能です。ルールを用いると簡単にサーバ側の処理を定義できます。ルールとトリガは似ています。しかし、全く別の機能です。PostgreSQL のオンラインマニュアルでは「ルールシステム」として解説されています。

    今回はルールを利用して、MySQL のアーカイブストレージエンジンのようなテーブルを作成してみます。

    2012年4月24日火曜日

    オープンソース ECM 「Alfresco」を導入する

    こんにちは。サイオステクノロジーの小川です。

    本日はオープンソース ECM (Enterprise Content Management) の Alfresco のご紹介をします。

    Alfresco はコンテンツ管理システムで、企業内で保管されている文書や Web コンテンツなどの情報を一元管理することができます。ECM としては世界初の OSS であり、行政機関や大企業など 600 社以上の企業で導入の実績があります。

    Alfresco は商用ライセンスの Enterprise 版と GPLライセンスのコミュニティ版があります。コミュニティ版に関しては無償ですので、ソフトウェアの導入コストの削減を考えている企業様はメリットがあるかと思います。また、プラットフォームに関しては、ハードウェアやソフトウェアをユーザー自身で選択することができますので、柔軟なシステムの構築ができるメリットもあります。

    今回は最新版の Alfresco 4.0.d の導入を行いました。OS は CentOS6.2 64bit を使用しています。以下に手順を記載しますので、ご参考いただければと思います。

    なお、Alfresco は GUI または CUI でのインストールが可能です。GUI でのインストールは手順 2 に、CUI でのインストールは手順 3 に掲載をしています。


    2012年4月11日水曜日

    GIN を利用したタグ検索の最適化

    こんにちは、OSS テクノロジーセンターの渡辺です。

    今回は PostgreSQL の配列型と GIN インデックスを使用したタグシステムについて解説します。

    はじめに

    データにタグを付けて分類するシステムは多くあります。タグはデータ分類を行う為によく利用される仕組みで、様々なアプリケーションに利用されています。

    タグを使ったシステムの特徴

    1. タグの名前が自由に登録できる
    2. 一つのデータに対して、タグを任意の数、設定できる
    3. 任意のタグ名を任意の数、指定して検索できる

    タグはデータを分類する仕組みとして柔軟で便利な仕組みですが、検索する場合のコストが大きくパフォーマンスがあまりよくありません。タグシステムは、MongoDB などのドキュメント指向のデータベース NoSQL と比べると、RDBMS と相性が良いと言えません。この事は、NoSQL が多くの Web サービスで利用される理由の一つになっています。

    PostgreSQL 場合、PostgreSQL 独自の配列型と GIN (Generalized Inverted Index) インデックスを利用し、他の RDBMS とは比較にならないほど効率的なタグシステムを構築できます。GIN インデックスは全文検索「専用」のインデックスと理解されている方も多いと思います。しかし、GIN インデックスは名前の通り「汎用」の転置インデックスです。この記事では、配列型と GIN インデックスを利用したタグ検索の効率化を紹介します。タグを利用したシステムとしてブログ型のアプリケーションを想定してベンチマークを行います。ブログシステムとしては、比較的大きめの 1000 万件の記事と 4000 万件のタグ情報を利用し、実行時間の違いを検証します。

    今回の記事執筆に利用した環境

    • Linux 2.6.35 x86_64
    • PostgreSQL 9.1.3
    • PHP 5.4.0 (テストデータ作成)

    デフォルトの PostgreSQL 設定では遅すぎるので、バッファを 1GB に増やすなど、多少設定もチューニングしています。9.1.3 のデフォルトからの変更箇所と設定値は最後の「参照」をご覧下さい。

    2012年4月10日火曜日

    開発版 GlusterFS 3.3 を試してみる

    こんにちは、OSSテクノロジーセンターの原です。

    つい先日、Red Hat 社から Red Hat Storage 2.0 Beta の案内がありました。

    内容はなかなかエキサイティングで、Red Hat 社のこれからのストレージ戦略が見え隠れするものですね。

    そんな Red Hat Storage 2.0 ですが、その中核になっているのは皆様御存知 GlusterFS です。

    GlusterFS の Stable Release は現在 3.2.6 ですが、来る 3.3.x の目玉として、Hadoop のバックエンドとしての機能や、Amazon S3、Swift との互換 API の提供が予定されており、まさに今をときめくストレージとなっています。

    今日はそんな Red Hat Storage 2.0 の GlusterFS 3.3 をフライング気味に試食して、今後の展望に思いを巡らせたいと思います。

    もちろん Stable リリース前の代物ですので、試してみる方は、転んでも泣かない気持ちで行きましょう。

    2012年4月4日水曜日

    連載「libvirt を利用して日々の作業を効率化」番外編

    こんにちは、OSSテクノロジーセンターの原です。

    今回は連載内容とは少し離れて、ご報告です。

    libvirt 連載で作成してるコードを、github にて公開いたしました。

    各連載の回ごとに、Chapter というタグを付与してありますので、あの時の連載の状態のコードからの変化は?などなど、追いやすくなったかと思います。

    次回以降のも github をベースに連載を続けていきますので、ご愛読のほどよろしくお願いいたします。

    なお、pull request は随時絶賛募集中でございます!

    もっとこうしたほうがいい、機能追加するからブログで紹介しろ等々ありましたら、是非 pull request を投げてく見てください。

    2012年3月21日水曜日

    連載「libvirt を利用して日々の作業を効率化」第4回

    こんにちは、OSSテクノロジーセンターの原です。

    連載4回目になりました。

    今回は、ゲストマシンの画面を Web から Java Applet の VNC で表示して操作出来るようにしてみましょう。

    2012年3月16日金曜日

    OS比較 その1 ~テキストインストール編~

    お久しぶりです、サイオステクノロジーの稲垣です。

    今回から、OS の比較という題目で 3 種類の OS を様々な観点から比べていきたいと思います。
    以下の 3 つが対象となる OS です。

    • CentOS6.2
    • openSUSE12.1
    • ubuntu11.10
    • ※すべて 64bit

    まず 1 回目の今回は、それぞれをテキストインストールで入れてみた時の項目の違いについて紹介します。

    2012年3月14日水曜日

    oVirt とディレクトリサービス (IPA) を連携させてみる

    こんにちは。生まれも育ちも東京ですが、納豆が食べられない原です。

    さて、前回は oVirt のインストールをしてみましたが、今回は oVirt を使い倒そうという趣向で、IPA サーバと連携してみたいと思います。

    前回: オープンソース仮想化管理ソリューション oVirt 3.0 を使ってみました

    IPA サーバは、Identity, Policy, and Audit の頭文字を合わせた造語です。

    IPA は統合されたセキュリティ情報管理サーバであり、LDAP サーバとしてRed Hat Directory Server、ユーザー認証に Kerberos を利用しています。

    物凄く乱暴な言い方をしてしまうと、要は LDAP プロトコルを利用した AD の様なディレクトリサービスです。

    ちなみに日本の IT 業界的に IPA といえば、某独立行政法人の事を指しますが、本件との関わりは不明(多分関係ないと思います)です。

    2012年3月7日水曜日

    連載「ZFS on Linux」第2回~ZFS 領域の作成とマウント~

    サイオステクノロジー 鎌田です。最近納豆にハマっています。納豆おいしいです。

    さて、お待たせしました。2回目の「ZFS on Linux」の連載記事です。今回は ZFS 領域を作ろうと思います。バックナンバーはこちら。

    2012年3月6日火曜日

    連載「libvirt を利用して日々の作業を効率化」第3回

    こんにちは、OSSテクノロジーセンターの原です。

    この連載も 3回目になりました。

    前回は Web 上に list_domains と list_defined_domains で取得したゲストの一覧を表示するところまででした。

    現在 webvirt ファルダ以下はこのような状態です。

    # tree
    .
    |-- views
    |   `-- index.erb
    `-- webvirt.rb
    
    1 directory, 2 files
    

    今回はこの取得したゲストのパワーオン/オフを実装していきたいと思います。

    2012年2月28日火曜日

    オープンソース仮想化管理ソリューション oVirt 3.0 を使ってみました

    こんにちは、OSSテクノロジーセンターの原です。

    Red Hat Enterprise Virtualization 3.0 の発表及びオープンソース化されたのは記憶に新しいですが、そのアップストリームとなる oVirt も1月末にメジャーリリースされています。

    今回はこの oVirt をつかってみました。

    2012年2月27日月曜日

    Trouble-Maker モジュールを作成しました

    2月がそろそろ終わり、暖かな春が訪れることを心待ちにしている鎌田です。

    以前、「Trouble Maker を触ってみました」という記事で Trouble-Maker を軽く触りましたが、今回は Trouble-Maker のトラブルを引き起こすモジュールを作成しました。

    2012年2月23日木曜日

    Mac 風 Linux をインストールしてみました

    ご無沙汰しております、サイオステクノロジーの稲垣です。

    先日某 IT ニュースサイトで Mac 風 Linux を見かけたので、気になってインストールしてみました。
    今回はインストールのみで、ほとんどいじっていません。触れてみた感想については又の機会に…。

    今回インストールしてみたのは、この 2 つの OS です。

    • Comice OS 4.0
    • Fake OSX

    ※Comice OS は、Pear OS の後継にあたるものです。

    ログイン後のデスクトップ画像を比較してみましょう。

    2012年2月22日水曜日

    サブドメインの管理を委任する

    こんにちは。サイオステクノロジーの小川です。

    Google Appsを導入しよう(BIND9設定編) では、DNSサーバのマスター、スレーブの構築方法を紹介をしました。今回は、サブドメインの管理を別のDNSサーバに委任する方法について簡単に紹介をします。

    サブドメインの管理を委任する目的として、組織のゾーンが大きくなったときに DNSサーバの管理の負担を減らすことや、ネットワークのトラフィックを分散させること、等が挙げられます。

    例として、ある組織 (example.com) に OSS という組織が新設されたので、oss.example.com のサブドメインを追加します。サブドメインの管理は別のDNSサーバに委任します。

    2012年2月21日火曜日

    連載「libvirt を利用して日々の作業を効率化」第2回

    こんにちは、OSSテクノロジーセンターの原です。

    さて、前回は Ruby のスクリプトから libvirt にアクセスし、ゲストの一覧を取得するところまでできました。

    連載「libvirt を利用して日々の作業を効率化」第1回

    前回までのおさらいとしては

    • libvirt は Red Hat 社が中心に開発する、仮想化管理用の標準 API
    • libvirt には様々な言語バインディングがる
    • Ruby から API にアクセススして、仮想マシン一覧を出してみる

    ここまでですね。

    今回はここから一歩進んで、Web アプリとしての機能を持たせて行きましょう。

    今回利用する sinatra についてですが、細かい使い方については割愛させて頂きます。

    …と言っても、公式に非常にわかりやすいドキュメントがありますので、初めての方はそちらをざっと眺めてもらえればと思います。

    Sinatra: README (Japanese)

    ではお約束通り、前回インストールした sinatra の最も簡単な Hello world 画面をブラウザに表示するところまでやってみましょう。

    # mkdir webvirt
    # cd webvirt
    # vim webvirt.rb
    

    2012年2月17日金曜日

    Google Appsを導入しよう (BIND9設定編)

    こんばんは。サイオステクノロジーの小川です。

    最近、無償版の「Google Apps Standard Edition」で利用できる機能が増えてきて、便利に感じています。たとえば、シングルサインオンの機能は、以前まで有償版の「Google Apps for Business」でしか提供されていなかったのですが、現在は Standard Edition でも利用ができます

    Standard Edition は 10アカウントまで作成ができますので、色々な用途で使い分けることができます。Googleサイトでサークルのホームページを作ったり、チームの連絡用にGmailを使ってみるのも良いかもしれないですね。

    今回はGoogle Appsの導入でBIND9の設定について紹介します。また、併せてマスターサーバとスレーブサーバの構築の手順についても簡単に説明します。OSはCentOS5 系を使用しています。

    2012年2月16日木曜日

    パッケージ更新した後、古いパッケージをロードしたままになっているプロセスを見つける

    こんにちは、OSSテクノロジーセンターの原です。

    今回は yum update した後、古いパッケージをロードしたままになっているプロセスを見つけてくれる便利な yum plugin を紹介しようと思います。

    パッケージ名は yum-plugin-ps です。

    RHEL 6.x から利用可能で、RHEL Server Optional チャンネルにあります。

    連載「ZFS on Linux」第1回~ZFS on Linux のインストール~

    サイオステクノロジー 鎌田です。お久しぶりです。

    当ブログの連載記事としては、既に2名の方が libvirt と OS コマンドの解説で執筆されていますが、私は個人的に興味のある ZFS を Linux で使える ZFS on Linux に照準を当てたいと思います。

    ZFS on Linux に関しては既に様々な情報がありますが、なぜあえて今やりたいのかと申しますと、私個人としては FreeBSD が好きであることと、FreeBSD が ZFS をネイティブ実装していて興味があることと、ZFS って名前だけよく聞くけど結局よくわかっていない、という理由でせっかくなので連載記事として追っていこうと思い立ったことが始まりです。

    そういうわけでして、あまり詳しい情報を記載できるという保証ができないのですが、検証記録的なノリでぜひご覧いただければと思っています。それでは、第1回目として ZFS on Linux のインストールから始めたいと思います。

    2012年2月15日水曜日

    OpenShift で MTOS セットアップ

    お世話になっております。
    OSSTC 佐藤です。

    今日は Red Hat 社の PaaS で絶賛売り出し中の OpenShift を触ります。

    Red Hat - OpenShift
    https://openshift.redhat.com

    2012年2月14日火曜日

    Red Hat Enterprise Linux スタンダードサポート提供時間変更のお知らせ

    おはようございます。
    本日はバレンタインデーですね。 今年はなぜか芋焼酎を2本もらった村田です。

    さて、今回の記事も前回の稲垣に続いて、Red Hat のサポートに関するお話です。

    これまで、平日9時~21時のサポート(通称9時9時サポート)を提供していた Red Hat Enterprise Linux (以下:RHEL) スタンダードサポートが、2012年4月1日受注分以降、順次9時~17時へ変更されます。

    夕方にトラブルが発生してサポート時間に間に合うようにと、17時前にバタバタすることはよくあることかと思いますが、RHEL スタンダードサポートは21時まで受付して頂けることで助けられていた方も少なくないのではないでしょうか。

    少しでも長く21時までのサポートを受けたいという方は、 2012年3月23日(金)までに発注を頂くことで、切り替わる時期を後ろに延ばすことができるようです。夕方以降に RHEL スタンダードサポートをご利用された事がある方は、この機会にぜひ駆け込み発注をご検討ください。

    注) 2014年4月1日以降は全ての契約が9時~17時サポートになります。

    詳しくは以下の SIOS Web にて解説がありますのでご確認ください。
    Red Hat Enterprise Linux スタンダードサポート提供時間 変更のお知らせ

    2012年2月10日金曜日

    RHEL5,6 のサポート期間変更のお知らせ

    お久しぶりです、サイオステクノロジーの稲垣です。

    今回は、RHEL のサポート期間延長に関するお話です。

    今までの RHEL のサポート期間は、標準で 7 年でしたが、RHEL5、RHEL6 では標準で 10 年と、従来よりも 3 年長いサポート期間が提供されることになりました。

    RHEL5、RHEL6 のサポート終了期間は、以下の様に公表されています。
    ライフサイクルの詳細が載っている URL もあるので、併せて確認してみてください。

    • Red Hat Enterprise Linux 5
      2017 年 3 月 31 日
    • Red Hat Enterprise Linux 6
      2020 年 11 月 30 日
    Red Hat Enterprise Linux Life Cycle

    補足:
    2012/2/10 現在、RHEL5、RHEL6 では、RHEL3、RHEL4 の Extended Lifecycle Support (ELS) に相当するサポートは提供されていません。そのため当初の記述から変更しております。
    RHEL5、RHEL6 の Life Cycle に記載されている Extended Life Phase (ELP) については、テクニカルサポートは受けられないものの、サブスクリプションをお持ちであればカスタマーポータル上で、パッケージ、ISO イメージ、ドキュメント、ナレッジにアクセスが可能とのことです。

    2012年2月8日水曜日

    閏年 ~RHEL への影響は?~

    お久しぶりです、サイオステクノロジーの稲垣です。

    今年は待ちに待った閏年です!…ということで、今回は閏年についての記事です。

    1 年が例年より 1 日多いことで、使用しているシステムに影響があるかもしれないと考える方も多いのではないでしょうか。

    Red Hat Enterprise Linux に含まれるすべてのアプリケーションは、閏年の処理を考慮して設計されているため、RHEL は閏年の影響を受けたという報告は今のところありません。

    念のため Red Hat の Bugzilla を確認してみましたが、閏年に関する登録はありませんでした。
    ※仮に閏年に関する問題があったとしたら、既に大騒ぎになっているはずなので、今の時点で何もアナウンスが無いということは…という考え方もできます。

    以上、閏年についての情報でした。

    2012年2月7日火曜日

    連載「libvirt を利用して日々の作業を効率化」第1回

    こんにちは。1月からサイオスに Join した 原です。

    libvirt は Red Hat 社が中心に開発する、仮想化管理用の標準 API です。

    サポートされているプロダクトであれば、全て同じように扱えるのが魅力です。

    まずはおさらいとして、どんなものに対応しているか見てみます。

    libvirt: Internal drivers に一覧が出ています。

    The KVM/QEMU Linux hypervisor
    The Xen hypervisor on Linux and Solaris hosts.
    The LXC Linux container system
    The OpenVZ Linux container system
    The User Mode Linux paravirtualized kernel
    The VirtualBox hypervisor
    The VMware ESX and GSX hypervisors
    The VMware Workstation and Player hypervisors
    The Microsoft Hyper-V hypervisor
    Virtual networks using bridging, NAT, VEPA and VN-LINK.
    Storage on IDE/SCSI/USB disks, FibreChannel, LVM, iSCSI, NFS and filesystems
    

    Xen や KVM を触っている(いた)方なら、libvirt の CLI ツールである virsh コマンドや、GUI ツールの virt-manager を利用したことがある方が多いのではないでしょうか。

    単に virsh コマンドを利用するのも複数の Hypervisor に対応しているだけあって便利なのですが、API にアクセスする、"ちょっとしたツール"を作り、日々の作業を自動化することで、より libvirt の醍醐味を味わうことが出来ます。

    "ちょっとしたツール"を作るにあたって、どんな言語バインディングがあるのかは、libvirt: Bindings for other languages をご確認ください。

    この連載では、libvirt を中心に、仮想化インフラストラクチャの自動化にスポットを当てて、日々の作業を効率化するためのヒントを紹介できればと思います。

    2012年2月2日木曜日

    SUSE 系にしか存在しないサービス起動コマンド

    お元気ですか?私は元気です。稲垣です。

    今回は SUSE 特有のコマンドをご紹介します。

    皆さんは、サービスを起動するときに何というコマンドを使用していますか?

    Red Hat 系 OS を使用している方は、基本的に以下の 2 つのコマンドのどちらかを使用してサービスの起動をしていると思います。

    /sbin/service [サービス名] start
    /etc/init.d/[サービス名] start
    

    しかし SUSE 系の OS の場合は、この 2 つのコマンド以外にもサービスを起動するコマンドがデフォルトで存在します。

    2012年2月1日水曜日

    RHEL4 系のサポート期間について

    おはようございます、こんにちは、こんばんは。サイオステクノロジーの稲垣です。

    来る 2012 年 2 月 29 日、以下の Red Hat Enterprise Linux 4 系のサポートが終了します。

    Red Hat Enterprise Linux 4 - 30 day End Of Life Notice
    https://rhn.redhat.com/errata/RHSA-2012-0073.html
    [サポートが終了するプロダクト]
    Red Hat Enterprise Linux AS 4
    Red Hat Enterprise Linux ES 4
    Red Hat Enterprise Linux WS 4
    Red Hat Enterprise Linux Extras 4
    Red Hat Desktop 4
    Red Hat Global File System 4
    Red Hat Cluster Suite 4

    Red Hat 社では、より新しいバージョンである 5 系や 6 系へのアップデートを推奨しています。

    アップデートが難しい場合には、Red Hat Enterprise Linux 4 Extended Lifecycle Support を契約することで、RHEL4 のサポート期間を最大 3 年延長できます。この契約は以下のプロダクトにしか適用することができないので注意が必要です。

    [適用できるプロダクト]
    Red Hat Enterprise Linux AS 4
    Red Hat Enterprise Linux ES 4

    しかし、以下の URL 内のパッケージ一覧に載っているものは、Extended Lifecycle Support を適用してもサポート対象外になるので注意してください。

    Extended Life Cycle Support - Exclusions
    http://www.redhat.com/rhel/server/extended_lifecycle_support/exclusions/
    Red Hat Enterprise Linux 4 Extended Lifecycle Support の詳細はこちらから
    レッドハット、RHEL 4のサポートを最大3年延長可能なオプション~最大10年間のサポートを提供
    Red Hat Enterprise Linux Extended Life Cycle Support (RHEL ELS)延長サポートのご案内

    アップデートを行うにしても、Red Hat 4 系を使用している場合は、早めの対応を行いましょう。

    以上、稲垣からのお知らせでした。

    2012年1月31日火曜日

    SLES10でノベルカスタマセンターに接続できない問題

    ご無沙汰しております、サイオステクノロジーの稲垣です。

    今回は、SLES10 でノベルカスタマセンターに接続できない問題について紹介します。
    YaST を使用して [ノベルカスタマセンターの環境設定] を行った際に、以下のエラーが出力されてしまい、ノベルカスタマセンターへの接続に失敗する問題があります。

    Execute curl command failed with '60':
    curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
    error: 14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
    More details here ...
    

    2012年1月13日金曜日

    rootユーザに変更できるユーザの制限方法

    お久しぶりです、サイオステクノロジーの稲垣です。

    今回は、root ユーザに変更できるユーザの制限方法について紹介します。
    検証した OS は、RHEL4,5,6、SLES10,11、openSUSE10,11,12 です。
    早速、su コマンドで root 権限を得ることができるユーザの制限を行う手順を記載していきます。

    2012年1月6日金曜日

    cscope と vim の連携

    寒い日々が続いていますが、いかがお過ごしですか?サイオステクノロジー 稲垣です。
    前回は cscope の使用方法についてご紹介しましたが、今回は cscope と vim との連携についてご紹介します。

    cscope と vim を組み合わせて使うには cscope_map.vim プラグインを ~/.vim/plugin/cscope_maps.vim に配置します。
    cscope_map.vim プラグインは sourceforge から取得できます。 The Vim/Cscope tutorial もあわせてご覧ください。

    インストール後、単語の先頭で下記のキー・バインディングをタイプすることで cscope のファンクションを呼び出すことが可能になります。

    下記の記述で CTRL+\ s はコントロールキーと "\" を同時にタイプし、続けて "s" をタイプすることを示します。

    • CTRL+\ s : C シンボルの検索
    • CTRL+\ g : グローバルな定義の検索
    • CTRL+\ c : 呼び出す関数を検索
    • CTRL+\ t : この文字列を検索
    • CTRL+\ e : egrep パターンを検索
    • CTRL+\ f : ファイルを検索
    • CTRL+\ i : include しているファイルを検索
    • CTRL+\ d : 呼ばれる関数を検索

    2012年1月5日木曜日

    ソースコード解析ツール -cscope-

    明けましておめでとうございます。サイオステクノロジー 稲垣です。
    今回は、ソースコード解析ツールである cscope をご紹介します。

    cscope は、C、lex、または yacc のソースファイル内のコードの特定の要素を探し出す対話型プログラムです。cscope を使用すると、従来のエディタよりも効率的にソースファイルを検索、編集できます。

    cscope の初期起動オプション
    $ cscope -b -q -i cscope.files
    
    -b : インデックス作成後 cscope を起動しない
    -q : 逆引き用インデックスを作成する
    -i : インデックス作成に使うファイルリストを含んだファイルを指定する。
         通常は cscope.files
    

    これでできるファイルは、以下の 3 つとなります。

    • cscope.in.out
    • cscope.out
    • cscope.po.out

    cscope.files は下記コマンドを実行して作成します。

    $ cscope-indexer -r
    

    cscope は起動する毎にインデックスを作成しますが、-d オプションをつけて起動するとインデックス作成を行いません。

    また cscope.files の先頭に "-q" と書いてあると、cscope 起動時に逆引き用インデックスを作成します。
    (-q オプションを付けて起動するのと同じ動作をする)

    -k オプションを指定すると /usr/include 以下のヘッダ・ファイルを参照しません。