Gentoo Monthly Newsletter: 2008年9月30日
1.
はじめに
今月のGMN
9月のGMNへようこそ
いつものように、この版のGMNに関するコメントは対応するフォーラムスレッドに投稿できます。
みなさんからの反応を楽しみにしています。
2.
Gentooニュース
TeTexは廃止されます
TeXディストリビューションのteTeXは、作者にこれ以上メンテナンスをする時間がないため、廃止されます。
しかし、今回後継となる、より優れた完全なTeXディストリビューションがあります:TeXLiveです。
多くのLinuxディストリビューションはすでに標準としてTeXLiveを採用しています。それらと同じように、これからTexLiveがGentooでのTeXの選択肢になります。
emerge --unmerge tetexを実行し、そのあとemerge worldを実行して、最新のTeXバージョンを含む最新システムを手に入れてください。
より詳細な説明は、TeXLive移行ガイドを読んでください。
またほかにGentooのTeXメンテナーは、あなたがどのTeXディストリビューションを使用しているかについての投票所をフォーラムに作りました。
投票して、彼らに知らせましょう。
リリース戦略の変更
おそらくもう読んだと思いますが、Gentooのリリース戦略についていくつかの変更が予定されています。
各ステージと minimal CDs を、毎週自動的にビルドすることを目指しており、1年に1回くらいでアップデートされるネットワークレスメディア(LiveCDs/DVDsインストーラ、Universal/Package CDs)も同じようにする可能性があります。
詳細についてはアナウンスを読んでください。一連の工程を進めるにはたくさんの作業を伴います。そして、私たちは手助けを必要としています。
理事会会議要約
Gentoo理事会月例会議が2008年9月14日に開かれました。
議題はここで読むことができます。
委員会会議要約
Gentoo委員会月例会議が2008年9月11日に開かれました。議題に出された項目は:
-
空きポストの補填:委員会メンバーのDiego Elio Pettenòが、健康上の理由で委員会を引退し、Doug Goldsteinが彼の代わりとなりました。
cardoeは元の投票ランキングで次点だった人です。
-
EAPI 0標準の草案としてのPMS:委員会は、EAPI 0標準の草案としてのPMSの承認について採決を行いました。
結果:承認されました。また、委員会の説明する要件の解決が条件として出されました。
委員会は2008年9月25日にもう一度集まりました。議題に出された項目は:
-
EAPI-2:新しいEAPIが承認されました。
これは、PortageにUSE依存関係(USE dependencies)のような機能を追加します;
たとえば、パッケージはこれからは USE="foo" を伴ってビルドされたパッケージに直接依存することができ、トリッキーな "built_with_use || die" ハックを使う必要はなくなります。
-
キャッシュ用のPROPERTIES:キャッシュでのPROPERTIESの使用はEAPIに関係するため、この問題はパッケージマネージャ(PM)の開発者間で解決されるべきで、1つの解決法にまとまらない場合にだけ、委員会に提起するべきです。
PM開発者は、パッケージ管理者が無視することのできる値を、キャッシュ向けのPROPERTIESとして追加することに合意しました。
-
ebuildでのPROPERTIES=interactive:これは遡及的な、後方互換のEAPIの変更で、委員会が承認しました。
事前にebuildにユーザーの対話的処理、たとえばライセンス同意や情報入力などを要求することを明示する変数を設定することができます。
今後の予定
-
バグデー:
たくさんの時間を使わずにGentooを手伝う方法を探していますか?
10月4日の月例バグデーに参加し、バグつぶしを手伝ってください。
-
委員会会議:
Gentoo委員会は、毎月2回、Gentoo全体に影響する重要な技術課題を議論するための会議を行います。
次回の会議は10月9日に予定されており、すべての人が参加できます。
- irc.freenode.netサーバ上の、#gentoo-councilチャンネルで、20:00(UTC)から。
-
理事会会議:
10月19日に予定されています。
3.
コミュニティの話題
Gentoo-Quebecトレーニング
Gentoo-Quebecグループは、2008年9月13日(土曜日)にGentooディストリビューションに関する最初のトレーニングセッションを提供しました。
18のシリーズの最初のコースで、23人の参加者はGentoo LiveCDに慣れたりGentooのインストール時に必要となるコマンドラインユーティリティについて簡単に学んだりすることができました。
このトレーニングセッションはGentoo-Quebecチームと、トレーニングルームやネットワーク設備を参加者に提供してくれたCopernicのおかげで可能になりました。
詳細については、次のアドレスのWebサイトを参照してください(フランス語):
http://gentoo-quebec.org
図 3.1: QuebecでのGentoo学習 |
 |
Planet Gentoo
OLPC XO:Daniel Drakeは、かつてXOユニットをリリースした One Laptop Per Childプロジェクトで働いています。OLPCプロジェクトはLinuxの特別版を出荷しています。
しかし、それは普通のデスクトップディストリビューションを使用することも可能です。
MIPSサーフィン:Stuart Longlandは数ヶ月前にコンパイル作業を開始しましたが、いまではMIPS上で動作するFirefox 3があります。
Gentoo本、再訪:Gentooについてのドイツ語で最初に出版された本が、その著者Tobias Scherbaumによって書き直されています。
RAID tips:Robin H. Johnsonは、RAIDのスロットが欠けており、あとから本物のディスクに移行するときの小さなhowtoを説明しています。
Not dead: Steve DibbとBen de Grootは、Gentooに関するいくつかの事柄を取り上げています。
Xfceを美しくする:Joshua Saddlerは、小さく軽いアプリケーションを使用した、綺麗にもかかわらず実用的なXfce環境を作るための、いくつかのtipsとスクリーンショットを公開しています。
Gentoo関連情報
Gentooゲームサーバへの注目:Internodeが、そのGames On Netサービスを再開しました。
そのかなり大きいネットワークは、(すくなくともある程度は)Gentoo Linux上で運用されています。
4.
Tips and Tricks
コマンドを複数のマシンで実行する
もし一つや二つのコマンドを、所有する複数のGentooマシンに一台ずつログインして実行しているならばこのTipsはとても役に立つと思います。このTipsでは複数のマシンで順番に、または同時にコマンドを実行する初歩的な方法を複数紹介します。
まずはじめに、とてもプリミティブな方法です。ピュアなbashを使います。例えばホスト名がgentoo-box-1、gentoo-box-2と10まで続くとします。すべてのマシンで同時にemerge --infoを実行したいとします。この場合は:
コード表示 4.1: emergeを複数のマシンで実行する |
$ for i in `seq 10`; do ssh gentoo-box-$i "emerge --info"; done
|
警告:
"for" loopでインタラクティブなコマンドを実行しないようにしてください。これは公開鍵認証無しで接続するのも同じことです。接続後、各マシンからパスワードを求められますがインタラクティブなため、入力はできません。
|
公開鍵認証でsshを設定していない場合はOpenSSH Key
Managementを読んでください。またこのガイドも助けになるかもしれません。
公開鍵認証を導入せず、そしてbashで複雑な"for" loopを書かずにインタラクティブコマンドを実行したりしたい場合はCluster SSHというものを使います。それではインストールしてみましょう:
コード表示 4.2: Cluster SSHのインストール |
# emerge clusterssh
|
Cluster SSHはX11が必要です。Cluster SSHは接続するマシン一つ一つに対してxtermを開きます。さらに小さいコマンドウィンドウを開き、ここに入力されたものは全てのマシンへ転送され、コマンドラインに入力されることとなります。Cluster SSHを使って先ほど接続した10台のGentooマシンで同じことをします:
コード表示 4.3: Cluster SSHの実行 |
$ cssh gentoo-box-{1,2,3,4,5,6,7,8,9}
|
公開鍵認証を行っていない場合は接続直後にパスワードを求められます。接続を試みているマシンのパスワードが全て等しくない場合は、異なったパスワードを持つマシンの接続ウィンドウを選択し、個別に入力してください。全てのマシンへの接続及び認証が終えたら、コマンドを全て同時に、または個別のマシンへ入力することができます。
また違う方法としてTentakelを使うこともできます。Tentakelはより静的な方法で使われます。ユーザが静的な設定ファイルに書き込み、Tentakelにどのグループのホストに接続したら良いか命令します。まずTentakelをインストールします:
コード表示 4.4: Tentakelのインストール |
# emerge tentakel
|
次に設定ファイルを作成します:
コード表示 4.5: Tentakelの設定 |
# echo "set ssh_path=\"`which ssh`\"" >> /etc/tentakel.conf
# echo "set method=\"ssh\"" >> /etc/tentakel.conf
# echo 'group ten_gentoos (user="root")' >> /etc/tentakel.conf
# for i in `seq 10`; do echo -e "\t+gentoo-box-$i"; done >> /etc/tentakel.conf
|
Tentakelと共に提供されていたサンプルの設定ファイルを使用するのも良いかもしれません:
コード表示 4.6: サンプルの設定ファイルを基に編集 |
# cp /usr/share/doc/tentakel/tentakel.conf.example /etc/tentakel.conf
# nano -w /etc/tentakel.conf
|
全て設定が終了したらTentakelを実行します:
コード表示 4.7: Tentakelの実行 |
$ tentakel -g ten_gentoos
|
Tentakelのインタラクティブコマンドインターフェースが表れます。コマンドを実行するにはexecファンクションを使用します:
コード表示 4.8: Tentakelを使ってのコマンド実行 |
$ exec emerge --info
|
Tentakelのコマンドインタフェースで迷ったりした場合はhelpを参照してください。またインタラクティブコマンドインターフェースを起動せずにTentakelを使うこともできます:
コード表示 4.9: インタラクティブコマンドインターフェースを起動せずTentakelを使う |
$ tentakel -g ten_gentoos "emerge --info"
|
これらのTipsはコマンドを複数のマシンで実行する方法のほんの一部です。Cluster SSHやTentakel以外でもdsh、pdsh、pconsoleやshmuxを使用してみてはいかがでしょうか。
Iotop
多くのメモリやディスク容量が存在するのにプロセスが全体を遅くしている場合はCPU使用率やインプット/アウトプット(I/O)が原因かもしれません。Gentooを使う多くの人はtopを使いこなしCPUやメモリの状態を調べますが、あまりiotopを使ってディスク使用率を調べることは少ないのではないでしょうか。
iotopは一定のサンプリング時間の中で各プロセスI/Oのread及びwriteをコラム型で表示します。またプロセスやスレッドがI/Oに対して動作していたり待機状態である場合の時間の割合をパーセンテージ表示します。さらにサンプリング時間の間に検出したI/Oのreadとwriteの計はインタフェースの上部に表示されます。
インストールはemerge iotopで行います。Portageが必要なカーネルオプション(TSTASKSTATSとTASK_IO_ACCOUNTING)が有効にされていないと警告する場合があります。その場合は以下のカーネルオプションを有効にしてカーネルの再構築する必要があります:
コード表示 4.10: iotopのためのカーネルオプション設定 |
General Setup -->
[*] Export task/process statistics through netlink
[ ] Enable per-task delay accounting
[*] Enable extended accounting over taskstats
[*] Enable per-task storage I/O accounting
|
再構築されたカーネルで起動したらiotopをコマンドラインから起動します。例としてDVDをバックアップしているとすると以下のような出力がされます:
コード表示 4.11: iotopを起動 |
$ iotop
Total DISK READ: 387.25 K/s | Total DISK WRITE: 221.29 K/s
PID USER DISK READ DISK WRITE SWAPIN IO> COMMAND
7703 root 387.25 K/s 0 B/s 0.00 % 0.00 % tccat -i /shared/...
211 root 0 B/s 13.83 K/s 0.00 % 0.00 % [pdflush]
7672 root 0 B/s 207.46 K/s 0.00 % 0.00 % transcode -H 10 ...
|
悪さをしているユーザがいる場合は以下のような結果が出力されるかもしれません:
コード表示 4.12: 悪さをするユーザ |
$ iotop
Total DISK READ: 5.21 K/s | Total DISK WRITE: 7.37 M/s
PID USER DISK READ DISK WRITE SWAPIN IO> COMMAND
7936 user1 5.21 K/s 7.37 M/s 0.00 % 0.00 % dd if /dev/zero of ./bigfile
|
iotopはディスクを異常に使用しているプロセス等を発見し、適切な処置をとる手助けをしてくれます。また、このプログラムには数々のオプションが存在します。iotop --helpを実行すると何が出来るかのサマリが表示できます。
lsofの再発見
先月発行のTips and Tricksではlsofを使って、開いているファイルやディレクトリを探す方法が転載されました。
GMNをお読みになっている方がlsofのまた違う使い方を紹介してくださいました。パッケージを更新した後に、再実行が必要なプロセスを確認する方法です:
例えばopensslみたいなパッケージをアップデートしたとします。これによりメールおよびウェブのサーバデーモンから複数のクライアントアプリケーションを再起動する必要が出るかもしれません。lsofを使えば削除されているが開いているファイルを検出することができます。つまり上記のようなプロセスを見つけ出すことができます:
コード表示 4.13: lsofでプロセスを探す |
# lsof | grep 'DEL.*lib' | cut -f 1 -d ' ' | sort -u
|
注意:
あるサービスはテンポラリファイルやshmを開いて削除します。"lib"が正規表現に加わっているのはこのためです。
|
アップデート後のプロセス等の再起動はライブラリにセキュリティフィックスが加わる場合があるため、重要です。
5.
Gentoo開発者の人事異動
概要
Gentoo開発者には、242人の活発な開発者がおり、そのうち43人が、現在、その任を離れています。
Gentooは、設立当初からのべ649人の開発者を採用してきました。
異動
次の開発者が、最近Gentooプロジェクトを去りました。
参加
次の開発者が、最近Gentooプロジェクトに入りました。
変更
次の開発者が、最近Gentooプロジェクト内での役割が変更となりました。
6.
Portage
概要
このセクションでは、Portageツリーの現在の状況を集計しています。
残念ながら、私たちのツールと新たに導入されたEAPI-2とを連携して動かすためのアップデートを行うため、今月の集計データを発表することはできません。
来月号には再開する見込みです。引き続きご注目ください。
このセクションには、移動した、あるいはツリーに追加されたパッケージがリストアップされています。パッケージの削除は、Treecleanersや、さまざまな開発者を含むいろいろな方面に由来します。
削除されたパッケージ
追加されたパッケージ
7.
Bugzilla
統計情報
Gentooコミュニティでは、バグやお知らせ、提案やその他開発チームとのやりとりの記録、追跡にBugzilla(bugs.gentoo.org)を使っています。
2008年8月30日から2008年9月29日の間のBugzilla上での活動の概要を以下のグラフに示します。
図 7.1: 分類ごとのバグの取り組み |
 |
現在オープン中の12369件のバグの内、12件がblocker、106件がcritical、451件がmajorに分類されています。
クローズバグランキング
期間中、最も多くバグをクローズした開発者およびチーム
| ランク |
開発者/チーム |
バグ数 |
| 0 |
その他 |
865 |
| 1 |
Gentoo Games |
54 |
| 2 |
Gentoo KDEチーム |
50 |
| 3 |
担当者のいないパッケージに対するデフォルトの割り当て |
44 |
| 4 |
Gentoo Security |
41 |
| 5 |
Gentoo Linux Gnome Desktopチーム |
41 |
| 6 |
Gentooコアシステムパッケージチーム |
34 |
| 7 |
Javaチーム |
32 |
| 8 |
Gentoo non-Linuxチーム |
28 |
| 9 |
Gentoo Linuxバグ管理チーム |
25 |
図 7.2: バグクローズランキング |
 |
割り当てバグランキング
期間中、最もバグを割り当てたれた開発者およびチームは以下のとおりです。
| ランク |
開発者/チーム |
バグ数 |
| 0 |
その他 |
628 |
| 1 |
新規パッケージに対するデフォルトの割り当て |
78 |
| 2 |
Gentoo Linux Gnome Desktopチーム |
40 |
| 3 |
Gentoo Security |
38 |
| 4 |
Gentooコアシステムパッケージチーム |
32 |
| 5 |
Gentoo Xパッケージチーム |
27 |
| 6 |
Gentoo KDEチーム |
25 |
| 7 |
Javaチーム |
23 |
| 8 |
Python Gentooチーム |
22 |
| 9 |
Gentooサウンドチーム |
20 |
図 7.3: バグ割り当てランキング |
 |
8.
GMNに参加するには
GMNの毎月の内容は、有志やコミュニティメンバによって成り立っています。
もしあなたがGMNを書くことに興味があるなら、プレーンテキストかGuideXMLフォーマットで実際に書いて、gmn-writers@gentoo.orgへ送ってください。
注意:
次版の発行に載せる記事の期限は2008年10月17日です。
|
ニュースレターのすべての読者がフィードバックしてくれることを望みます。
もし記事や章だてに対してアイデアがある、あるいは、GMNについてどんなことでも言いたいことがあるなら、ためらわずにgmn-feedback@gentoo.orgへメールを送ってください。
今回のGMNに関する話題については、フォーラムスレッドでもフィードバックやコメントをすることができます。
9.
GMNを定期購読するには
Gentoo月刊ニュースレターを定期購読するには、空メールをgentoo-gmn+subscribe@gentoo.orgに送ってください。
Gentoo月刊ニュースレターの購読を中止するには、加入しているメールアドレスから空メールをgentoo-gmn+unsubscribe@gentoo.orgに送ってください。
10.
他の言語でのGMN
Gentoo月刊ニュースレターは次の言語で読むことが出来ます。
|