今月は、ニュースグルーフ。の管理について紹介します。 ・ニュースグループとその管理 巧 . news. announce や巧 . announce などに「 NGMP has been revised 」というタイトルの記事力寸殳稿されま した。これは、巧ニュースグルーフ群においてニュース グループを新設 / 削除するための手続きを記した「ニ スグループ管理の手引き (NGMP : NewsGroup Man- agement Protocol) 」の改訂作業をおこない、その内容 を石忍するための投票を実施したが、とくに間題点の孑商 がなかったので投票の結果を確定し、改訂された NGMP ( 第 6.3 版 ) を有効とします、というお知らせです。 NetNews で利用されているニュースグループは、世界 中に酉当医されているものと、特定の範囲にのみ醪されて いるものに分類できます。それらはさらに、プロノヾイダな どの企業、学校、ユーザーグループといった特定の系気こ よって管理・運営されているものと、明確な管理者は設 けす、利用者全員の協力もしくはボランティアの人たち によって管理されているものに分けられます。 ニュースグループを作る目的はさまざまですが、同じ 目的で作成されたニュースグルーフ群には、そのニュース グルーフ群を代表する同一の文字列 ( 巧など ) て始まる名 前を付けるのが一ヨ勺です。この代表名をトップ・ スグループといい、通常、各トッフ・ニュースグループ は利用目的ごとに運営・管理方針が異なります。 ニュースグループの管理内容 世の中の状況の変化や技術的な動向に呼応して、 Net- News の利用者の興味と投稿される記事の内容は変わり ます。記事の投稿先となるニュースグループもその刻ヒに 対応するために、トッフ・ニュースグルーフの下にニュー スグループを新たに作成したり、変更・削除する必要があ ります。ー搬に、 ニュースグループの管理とは、この作 成や削除のイ乍業をし御なします。 トップ・ニュースグループによっては、日寉 さらに、 に規定された管理責任者か投稿内容に関する制限を設け、 みるく 166 信勢 3 第日 : 信信 3 : 3 : 第に物 3 第信に第 : : に「 不適切な内容の記事は強制的に削除しているところもあ るかもしれません。 は、とくに管理者はおらす、個々の利用者が協力す ることで運用されています。新の長い歴史のなかで利用 者が協力して管理するためのさまざまな手法か験討さ 運用、改良されて現在にいたっていますが、その成果をま とめたものが NGMP です。 NGMP では巧ニュースグ ルーフ。管理委員会という組織について規定していますが、 これは強制力をもった管理組織ではなく、言侖の整理や 取りまとめを受け持ちます。その結果をもとに、実際の ニュースグルーフ。の作成や削除のための作業 ( コントロー ル記事の発行 ) がおこなわれます。 ニュースグループの作成、削除方法 巧では、ニュースグループの新設や削除は、 NGMP に 従っておおよそ以下の手順でおこなわれます。 1. 新設や削除を希望する人が、該当する分野ごとの議論 ュースグループにおいて、新設や削除の議論の開 始を宣言する。 2. 期間中、の参加者は自由に言墟侖に加わり、その是非 や、新設の場合はニュースグルーフ。名や利用目的 ( 憲 章 ) を話し合う。 3. ある程度方針が固まってきたら、作成や削除およびそ の内容について合意を得るための手続きをおこなう。 これには、、沈黙による承認 " や、、沈黙による却下 " 、、投 票による決定 " 、、署名による決定 " がある。 4. 承認が得られたら、その結果にもとづいてニュースグ ルーフ。の作成や削除をおこなう。 言岩田は、巧 . archives. documents などに定期的に投稿 される NGMP を参照してください。 ・今月の話題から ( 2003 年 4 月 20 日現在 ) Newsgroups: 月 . unix. shells Subject: Q スクリプトの多重起寉認方法 Solaris 8 上のシェル・スクリプト内で、多重起動を避 けるために、すでに同しシェル・スクリプトか起動して 実行中かどうかを確実に知る方法はないでしようか。な るべく一時ファイルを作らす、シェル・スクリプトを起 動する親プロセス側で事前チェックをすることなく、で きれば SoIaris 以外でも汎用的に使える方法で実現した UNIX MAGAZINE 2003.6
信 3 日す袋信を第信 ' 第等既ロ新既日霊 : 号 3 : 3 第物霊信等第日 : 3 : 信 : 信等 3 : 信 : 物等既物霊第信等を 『 MINIX を 256 イ剖吏うための本』 ( アスキー ) 1 のなか に「文旬を言う前に hack するのが正しい姿」 ( 原文で は「動かなけれは開発者に文句を言う前に、ソースを直 すのが正しい姿」といったニュアンスだとのこと ) とい うことが堂々と書かれていて衝撃を受けた覚えがありま す。オープンソースについてこのような発言をしている 本はないでしようか、という質問記事です。 これに対して、 MINIX は教育を目的として作られた もので、当時ソースは公開されていたが自由にコピーで きるわけではなかった、そのため上記のようなことが言 われていたが、オープンソースに関しても同様に言える かは疑間である、 MINIX にかぎらすかっての UNIX 文 化では、必要な機能がなければ自分で作り、ソースを公 開してみんなの役に立ててほしいという考え方か珍しく なかった、フリーソフトを公開するときも同様の考え方 であった、そのため自分で作ろうとするのは当然の姿で あってことさら驚くような文章ではない、どのようなも のを指してオープンソースと言っているのか分からない が、当時のフリーソフトも含まれるのであれは『ハッカー ズ』 ( 工学社 ) などの当時のハッカー文化を紹介する囓籍 に、なんらかのかたちで自分で作るという思想について言 及があったのではないか、といったフォローがきました。 Newsgroups: カ OS. ms—windows. xp Sub. 」 ect: WindowsXP の起動ティスクを作成する方法に つし、て Windows Me までは、コントローノレヾネルの、、アプリ ケーションの追加と削除 " からウィサードを実行して起動 ディスクを作成できましたが、 WindowsXP にはその機 能がありません。どうすれば Windows XP て起動ディ スクを作成できるでしようか、という質間記事です。 これに対して、 Windows XP の CD-ROM は CD プート対応なので、 PC 側が対応していれは起動ディス クは不要である、 Microsoft のサポート Web サイトの サポート技術情報 ( 418279 番 ) にガ去か載っている、 の方法で作成したフロッピーでは Windows XP のイン ストール以、タ P ) 作業はできない、ハードディスクにインス トールした OS か起動しなくなったときは、起動ディス クを作らなくても、インストール用 CD ー ROM を使って 回復コンソールを起動して修復信喋がおこなえる、回復コ 1 現在は品切れになっています。 ンソールはあらかじめハードディスクにインストールし ておくこともできる、日本語力硬えない純粋な MS-DOS フロッピーでよければ、フロッピーディスクのフォーマッ ト時に、、 MS-DOS の起動ディスクを作成する " をチェッ クすればよい、この機能は Windows 2000 にはなかっ たが XP で追加された、といったフォローがきました。 Newsgroups: . OS. ms—windows.misc Subject: ティスクレスプート ある ! 物交の学習用コンピュータ環境の整備の話題のな かで出た、章を少なくするために端末にはハードディス クを載せないのカ色対条件となるため、 Windows もディ スクレス PC にするか、 Windows 2000 から標準で使え る Terminal Server 機能を利用するしかないという記事 に対する、 Windows 2000 や XP でディスクレス・プー トは可能なのでしようか、また Terminal Server 専用の 端末はあるのでしようか、という質問記事です。 これに対して、実際に Windows 2000 でディスクレ ス・プートて利用している、これにはミントウェープの VID というディスクレス・プート専用の端末 2 を使ってお り、 BIOS レベルでネットワーク・ドライプが IDE ハー ドディスクにみえるイ督且みである、 Terminal Server 専 用の端末はミントウェープをはしめ数社から発売されて いる、これらは Windows-Based TerminaI と呼ばれて いる、 X 端末のようなものと思えばよい、 X 端末を兼ね ているものもある、パフォーマンスに関しては一イ殳的なピ ジネス・アプリケーションを使っているかぎりではまっ たく気にならない、たとえば Xe 。 n 450MHz x 4 のメ モリ 2GB のサーバーを数人で使うのならよいが、数十 人が一一斉に利用しようとするとサーバー側の負荷がかな り大きくなる、といったフォローがきました。 Newsgroups: fJ.sys. pc98 Subject. お助け下さい。ス用 LAN カードのトラブ ル ? ? NEC の PC ー 9821V16 で間題なく使用できていたアラ イドテレシス製のネットワーク・インターフェイスカード (NIC) の LA-98 を別の PC-98 マシンで使うために、純 正ドライバをインストールしてデバイスとして認識され、 競合がないことを石忍し、他の機器と重複していない IP 2 http://www.mintwave ・ co. jp/VlD/vid. html を : 信工臼 3 等み 33 : 島す . 仕 33 第信 : を : す物第袋第第をを第等第既信にらな第島に第信島す 168 UNIX MAGAZINE 2003.6
0 特集 Linux て RAID 図 12 mkraid /dev/md4 の実行 # mkraid /dev/md4 handling MD device /dev/md4 analyzing super¯block disk 0 : /dev/hda4, 25101562kB , disk 1 : /dev/hdc4, 25101562kB , # cat /proc/mdstat [raidl] personalities read_ahead 1024 sectors raid superblock at 25101440kB raid superblock at 25101440kB md4 : active raidl hdc4 [ 1 ] hda4 [ 0 ] 25101440 blocks [ 2 / 2 ] [UU] speed=10333K/sec md3 md2 md 1 active raidl hda3 [ 0 ] 1076288 blocks [ 2 / 2 ] active raidl hda2[O] 6449984 blocks [ 2 / 2 ] active raidl hdal [ 0 ] 6449984 blocks [ 2 / 2 ] . ] resync hdc3 [ 1 ] hdc2 [ 1 ] [ 冊 ] hdcl [ 1 ] [UU] unused devices : く none> リスト 2 /etc/raidtab に追加する md4 の言聢 raiddev raid-level nr-raid-disks chunk—size /dev/md4 1 2 64k 1 0 4.2 % ( 1065656 / 25101440 ) finish=38.7min す。パーティションを作成したら、 system ID を fd に ノ、一ドディスクの残りの領域すべてを用いたものになりま 入力せすにリターンを押す ) と、新しいパーティションは 、、最初シリンダ " と、、終点シリンダ " に初期値を使う ( 値を persistent—superblock nr—spare—disks device raid—disk device raid-disk /dev/hda4 0 /dev/hdc4 1 hda4 と hdc4 の作成 次に、ミラーを構成するパーティションにこでは / dev /hda4 と /dev/hdc4) をそれぞれのハードディスクに作 成します。 インストール CD から起動し、 X の画面が表示された ところで CtrI-AIt-F2 を押すと現れるシェルから、 fdisk コマンドを使って新規のパーティションを作成します ( パ ーティションの操作には parted というコマンドも利用 できます。このコマンドについてはあとで説明します ) 。 hda4 を作成するためには、ハードディスク・デバイス /dev/hda を引数にして、 # fdisk /dev/hda を実行します。 fdisk での作業の様子を図 11 に示しま す。 n コマンドで新規にパーティションを作成するときに 118 するのを忘れないでください。 hdc4 も同様に # fdisk /dev/hdc を実行して作成します。 この作業カ鮗ったらシステムを再起動します。 RAID デバイス md4 のイ乍成 こまでの作業で、 RAID デバイス md4 を構成す るパーティション hda4 と hdc4 ができました。次に RAID デバイスの作成と初期化をおこないます。これに は mkraid コマンドを使います。構成したい RAID テンヾ イス (/dev/md4) を引数に指定してコマンドを実行する と、 /etc/raidtab の成疋に従って RAID デノヾイスの作 成と化 (resync) がおこなわれます ( 図 12 ) 。 作成はすぐにできますが、ミラーデバイスの resync の 処理は、大きなパーティションであれは。かなりの時間を要 します。たとえは、私のマシンでは 25GB の領域で 40 分以 - E かかりました (/proc/mdstat を cat コマンドで 表示するとその様子が分かります ) 。しかし、 RAID デバ イスの resync 処理や recovery 処理は、実行中であって UNIX MAGAZINE 2003.6
, 特集 Linux て RAID 0 図 11 ソフトウェア RAID / く一ティション hda4 の作成 コマンド (m でヘルプ ) : n コマンドアクション e 拡張 p 基本領域 ( 1 ー 4 ) 領域番号 ( 1 ー 4 ) : 4 最初シリンダ ( 1743 ー 4865 , 初期値 1743 ) : 初期値 1743 を使います 終点シリンダまたは + サイズまたは + サイズ M または + サイズ K ( 1743 ー 4865 , 初期値 4865 を使います コマンド (m でヘルプ ) : t 領域番号 ( 1 ー 4 ) : 4 16 進数コード (L コマンドでコードリスト表示 ) : fd 初期値 4865 ) : 領域のシステムタイプを 4 から fd コマンド (m でヘルプ ) : p ティスク /dev/hda : ヘッド 255 , ユニット = シリンダ数 of 16065 (Linux raid 自動検出 ) に変更しました セクタ 63 , シリンダ 4865 * 512 パイト 終点プロックエ D デパイスプート /dev/hdal /dev/hda2 /dev/hda3 /dev/hda4 始点 1 805 1609 1743 システム 804 1608 1742 4865 6450066 6450097 + 1076355 25085497 + fd fd fd コマンド (m でヘルプ ) : w 領域テープルは交換されました ! ioctl() を呼び出して領域テープルを再読込みします。 UNIX MAGAZINE 2003.6 が /home となります ) 。 1. /etc/raidtab に md4 の設定を追加する (/dev/md4 めに、以下のように竹喋を進めていきます。 こでは、新規の RAID デバイス md4 を作成するた スキューモードでパーティション巣作をしてください。 CD - ROM やフロッピーディスクから OS を起動し、レ ション・テープルを書き換えるのは危険がともないます。 RAID にかぎらす、使用中のハードディスクのパーティ に ext3 ファイルシステムを作成します。 からなる RAID テンヾイス /dev/md4 を構築し、 md4 上 作成してみます。具ー勺には、 /dev/hda4 と /dev/hdc4 クの残りを使って、 /home ディレクトリを RAID 1 で デバイスを作ってみましよう。例として、ハードディス しました。今度はインストール後、つまり運用時に RAID さきはどは、インストール時に RAID デバイスを作成 0 RA 旧デバイスを新規に作成する 自動検出 自動検出 自動検出 自動検出 2. fdisk で hda4 と hdc4 を作成し、 する。 Linux raid Linux raid Linux raid Linux raid 3. RAID テパイス md4 を作成する。 システムを再起動 4. md4 に ext3 ファイルシステムを作成する。 /etc/raidtab の設疋 RAID デバイス md4 は次のような構成にします。 テパイス名は /dev/md4 ・ RAID の不鶤頁はミラーリング (RAID 1 ) 構成テンヾイスは /dev/hda4 と /dev/hdc4 プライマリ・マスターのパーティションである hda4 と セカンダリ・マスターのパーティションである hdc4 を ミラーリングします。 ・スペアテンヾイスはなし ・ chunk size は 64KB /etc/raidtab 内にある既存の md3 の設定などを参考 にしつつ、リスト 2 のような言当主を加えてください。 117
特集 Linux て RAID 0 リスト 3 degrade モードで RAID を作成するための / etc 図 20 再起動中にエラーか発生 (Red Hat Linux 8 の場合 ) /raidtab /dev/mdl 、驫第 ti し filesyst—: [ 味 ] lnitializing い 8 HID interface: 〔 ] lnitializing し keyboard: 〔 ] lnitiaIizinglJS8mase: [ ] C ト幻 root f ⅱ y / : 0 聞 . 70 レ 5 引 6 f ロ , 4255 / 11 452 引 0 5 [ / 由ⅲ / 信改 . ext3 (1) -- / ] fs . t3 -a /dev/hdal 第れ n ま「土 f ⅱ esy 印ⅲ「 e 記、「員 e : [ ] ktivating S 物 partitims: 「 ] i 咫ー、に ies : [ ] S ね員 i 叩れ 35 : / け 1 : lnvalid a ないは / 〃朝 1 is 弋 a 舩ー凵駅ⅵ 朝 1 / ゾ朝 2 : lnvalid 第 / v / 朝 2 is not a ー 0 「凵駅「 ! raiddev raid-level 1 nr—raid—disks 2 chunk—size 64k persistent—superblock 1 nr—spare—disks 0 /dev/hdcl raid—disk /dev/hdal device failed—disk 1 raiddev raid-level 1 nr—raid—disks 2 chunk—size 64k persistent—superblock 1 0 nr—spare—disks /dev/hdc2 raid—disk /de v/hda2 device failed—disk 1 0 第節 error 0C3 な e イ ing the 舩 a 叩 本 Dropping yo リ to a shell ; the syst—ⅵい「 第ー you leave せを she Ⅱ . Give 「 OOt p 5 和「 d ー 0 「 nai 「は印一 ( 0 「し ( ontro ト 0 fO 「 mrm 引 startl.p): ( Repair) ー # /dev/md2 ラーが発生し、そのイ夏を求められます ( 図 20 ) 。 RAID Repair のシェルで mkraid コマンドを使って、 mdl と md2 の 2 つのテンヾイスを作成します ( 図 21 ) 。 /etc/raidtab に、、 failed-raid" ク旨定があることから、 disk 0 : /dev/hdcl , 4409811kB , raid superblock リスト 3 が、 degrade モードで RAID テンヾイスを作成す at 4409728kB disk 1 : /dev/hdal , failed るための /etc/raidtab です。このなかで、 failed-disk で のようなメッセージか表示されます。また、これまで mk ー 始まる行に注目してください。 raid コマンドを実行したときには、テンヾイスの作成と同時 /dev/hdcl に初期化処理 (resync) も開始されていましたが、 raid—disk device はテンヾイスの作成だけがおこなわれます。 failed-disk 1 mdl と md2 の 2 つのデバイスを作成したら、シェル /dev/mdl は、 /dev/hdcl および /dev/hdal の 2 を抜け、システムが再起動されるのを待ちます。 つ (nr-raid-disks) から構成されますが、 /dev/hdal に Red Hat Linux 9 を使っている場合は通常どおり は、、 failed-disk 1 " という指定があります。これにより、 起動されるので、さきはども説明したように、そのあと mkraid コマンドを実行して / dev / mdl を作成するとき mkraid コマンドを使って /dev/mdl と /dev/md2 の 2 に、 /dev/hdal か外された状態となります。 raid-disk と つの RAID デバイスを作ります。 failed-disk の順番も重要です。 failed-disk となる /dev/ mdl へのファイルのコピー hdal を構成パーティションの指定のう巨頁に言己主してはい こまでくれは、 RAID テンヾイスの mdl と md2 か利 けません。つまり、 用できるようになっています。ただし、 /dev/hdc しか device 使っていない状態です。 mdl に ext3 ファイルシステム failed—disk 0 を作成し、現在のプライマリ・マスターのハードディスク raid—disk の内容をそっくりコピーします。図 22 のようにファイル としないでください システムを作成し (mke2fs と tune2fs コマンドを使用 ) 、 /etc/raidtab を当したら、システムを再起動します。 dump と restore コマンドを使ってファイルをコピーし こで、 Red Hat Linux 8 を使っている場合、 /etc/ ます。 raidtab の言当主と、 /dev/mdl と /dev/md2 の状態力・ また、 / dev / md2 はスワップ・パーティションとする ため、 mkswap コマンドでネノ月化します。 致していないことから、さきはどとに起途中で工 0 0 /dev/hdal /dev/hdal /dev/hdcl 1 0 一三ロ 125 UNIX MAGAZINE 2003.6
特集 Linux て RAID 0 図 14 Red Hat Linux 8 で md4 テパイスを作成 ます。 それでは、順番にコマンドを実行してみましよう ( 図 13 ) 。 ext2 ファイルシステムを作成するためのコマンドであ る mke2fs の引数に、 RAID デバイス md4 を表す /dev/ md4 を指定して実行します。 # mke2fs /dev/md4 図 13 の、 SuperbIock backups stored on blocks: のところでちょっと時間がかかりますが、これで md4 に ext2 ファイルシステムが作成されました。 次に、 md4 の ext2 ファイルシステムにジャーナリン (Red Hat Linux 8 では再起動時 : に RAID デバイスの修 iE を求め られるので、 mkraid で md4 デバイスを作成する ) グ領域を作成するために、 tune2fs を実行します。 このエラーは、 /etc/raidtab に md4 の記述を追加し # tune2fs -c ー 1 —j /dev/md4 たのに、まだ /dev/md4 が作成されていないために発生 -j は、ジャーナリング領域を作成するためのオプショ します。そこで、プロンフトに r 。 ot のパスワードを入力 —c -1 " は、起重加の fsck によるファ ンです。また、 して RAID Repair のシェルを起動し、 md4 の匆月化を イルシステムのチェックをおこなわないようにするための おこないます ( 図 14 ) 。その後再起動づーれば大丈夫です。 オフションです。 Red Hat Linux 9 では、 raidtab と md デノヾイス 続いて、ファイルシステムを / home としてマウントす の状態かン一致していなくても、その md デバイスが / etc / るために、 /etc/fstab に次のような設定を加えます。 fstab の記述に含まれていなけれは、 RAID Repair シェ /dev/md4 /home ルを起動しないようになっているため、このような状態に ext3 defaults はなりません。 最後に、以下のように mount コマンドを実行すれは、 /home に RAID 1 テンヾイス上の ext3 ファイルシステム parted コマンド がマウントされ、利用可能になります。 こまでの説明では、ノヾーティションの設定に fdisk # mount /home コマンドを使ってきました。 Red Hat Linux のカスタ マイズのマニュアノレ (Red Hat Linux Customization Red Hat Linux 8 での注意点 Guide)2 には、パーティションの操作は parted コマンド Red Hat Linux 8 で作業する場合は注意すべき点が でおこなうようにと書かれています。 parted コマンドは あります。それは、 fdisk でパーティションを作成したあ 既存のパーティションを移動、コピー、リサイズしたりで とにシステムを起動させるときです。途中で次のような工 きるなど、たいへん多くの機能をもっています。 ラーメッセージか表示さシステムの起重肋ゞ中断されま fdisk と違い、 parted によるノ、一ティション・テーフ す。 ルの変更はただちに反映されるという特徴があり、前述し た fdisk でのパーティション作成のように再起動を必要 としません。逆に、 fdisk では w コマンドを実行しないか ぎりやりなおしか利きますが、 parted では間違いは許さ れません。イ叫リな反面、やや危険なコマンドです。以下で 2 http://www.redhat.com/docs/manuals/linux/RHL-9- Manual/custom-guide/ch-disk-storage. html i 朝引 i ⅵしおを : [ ] CtEking 「 OOt filesystæ / は 874 / fifes. 3 979 月引 44 b 3 レ鹵 i ⅳ信改 . ext3 ( り一 / ] fs 改 . t3 -0 / ツー 第朝「 f ⅱ Y 田ⅲ代記、ⅱね宿 0 : [ ] Activating s 叩 partitims: [ ] Finding 厄一・に i : [ ] Starting 叩 RAID ⅵ ces : 一 md2 朝 3 / ツ 4 : 厖ⅱ d 町 g 部は / v / 4 is not a 舩ー 0 「凵駅「町 ! ”第 Drcvping a sb211; ま systæⅵⅡ「取 0 を ”第ー you ー e を she Ⅱ . Give 「 t»t password fO 「 naintenance ( 0 ′わ 20 C は「 0 ト 0 ま 0 「 norm 引気 ) : ( 舩 R@air) ー # 秋「 a 記 / ″ 4 ト引 i ⅵ / 〃朝 4 び旧ⅵ ng 3 叩部市 disk 0 : / ツを記 , 2 85497 , raid 5 肥市 2885376k8 disk い /dee/hdc4, 2 8 97kB , raid 市改 2 印 85376k8 ( Repair) 2 # /dev/md4 is ot a RAIDO or LINEAR array ! md4 RAID startup occurred during the * * * Dropping you t0 a she11; the system will reboot leave the shell . 120 UNIX MAGAZINE 2003.6
特集 Linux て RAID 図 2 Disk Druid の 表 2 RAID テパイスの卞鰔 容量 タイプ デ / 、イス マウント RAID テンヾイス 1 (mdl) 6300 ext 3 RAID テンヾイス 2 (md2) 6300 ext 3 RAID テンヾイス 3 (md3) 1050 SWap 図 4 hdal 乍成 ンラインヘルプ ディスクの設定 Red 極ーい側 x をどこにインス トールしたいか選択して下さ システムのノ、一ティション設定 の法がわからない場合 . 又は 手バーティション設定ツール の使用について手助けが必要 な場合は、 RedHat い側 x イン ストールガイドを物照して下さ 自動バーティション設定を利用 している場合は、現在のバー ティションを受け人れる ( 次をクリックか、手動バー ティション設定ツールで設定 を修正します - システムを手動で / 、一ティショ ン設定している場合は現在の ハードディスクとそのパーティ ションが下に表示されていま すノ、一ティションツールを 使って、システムにバーティ ションを追加、編集、用除しま す , 三垣」三可 ′、一ティシ宿ン設第 新規 ( ! ) 編集 ( 印用除 ( の リセット ( RA'D(A) ! 報 ( い ) しれ ! Point/ フォーマット量 デバイス タイプ メガバイト ) マハードディスク マ / d ~ い 1 a 空き ′ de 物 空き redhat ′、一ティシ当ン設定 オンラインヘルプ を一し・ま、 Red Hat い m トールしたしマウントボイント ( : 「、用不読冫 ファイルシステムタイプ ( 工 ) : 00 「 0 題 システムの hda 2 5T3400 丐 A の方法がわか ト 00 認 2 齠 34g ー 5A 手動バーティ使用可能なドライプ ( 旦 ) : の使用につ一 な場合は、 ストールガイ 容量 ( ) ( 緲 : 追容オプシ」ン 自動バーティを困定容駅 している場 ティションに指定限度まで使用 ( ) ( の : ( 次をクリツへ 最大許容をまで使用 ( を絛正しま マ : プライマリバチィシ 3 ンにする ( システムを手匚不良プロックをチェック ( 旦 ) ン設定して、 / 、一ドディス ションが下に すパーテ 使って、システムにバーティ ションを追加 . 編集、削除しま に、 R 0 デバイス .4 ポリ。ームグループメンバーを非表示にする ( 旦 ) す。 0 ヘルプを第す ( 当。」リリースノート但 ) プしてくるので、そのなかで作成するパーティショ / の 設定をおこないます。図 4 は、 hdal におよそ 6GB の パーティションを作成する設定です。、、ファイルシステム タイプ " を、、 software RAID" にするのがポイントです。 software RAID に設疋された . パーティションだけが、 のあとの RAID テンヾイス作成で、 RAID メンバー " にな ることができます。 hdal と同様に、 hda2 ~ hda3 と hdcl ~ hdc3 も作成 してください。 自由愉 自田物域 第、一ティノン渕 ガバイト ) ー 「舩デバイス / し物ポリュームグループメンバーを非表示にする ( 旦 ) ト 16 」 図 3 最終的に作成されるパーティショ / redhat オンラインヘルプ ディスクの設定 Red Hat い nux をどこにインス トールしたいか選択して下さ システムのパーティション設定 の方法がわからない場合、又は 手動バーティション設定ツール の使用について手助けが必要 な場合は、 RedHat い nux インを 新規 ( ! ) 編第 ( 印用除 ( の ストールガイドを参照して下さ 5 物し Po 朝レ デバイス / VOII 第・ 自動バーティション設定を利用 マ R 齲 0 デバイス している場合は、現在のバー ティシコン設丐を受け入れる ィ面の 2 ( 次をクリックか、手動パー ′ 0 い 3 ティション設定ツールて設定 を修正します - ヴ′、一ドディスク マ / 00 い上 da システムを手動でパーティショ 6 ン設定している場合は現在の :dev:hd02 ハードディスクとそのハーティ . ′面に hda3 ションが下に表示されていま 空き す - / 、一ティションツールを : 4 使って、システムに′、一ティ ションを追加 . 編集、削除しま ロ R 0 デバイス / し物ポリュームグループメンバーを非表示にする ( 旦 ) す。 朝 ヘルプを意す但 ) [ 」リリースノート ( 印 ◆戻る⑧ 次 ( に関係する部分に絞ってとりあげていきます。 インストーラでインストールの不鶤頁を選択したあと、図 1 のような画面か表示されるところからが、ディスク・パー RAID デパイスの設定 ティションの言置になります。 次に、 RAID デバイスを作成します。ますは、 / ( ルー 以降では、 Disk Druid を使って次の作業をおこない ト ) となる RAID デバイスである mdl を作成しましょ ます。 1. ノヾーティションの分割 図 2 の [RAID] ボタンを押すと、 RAID オプション 2. RAID デバイスの成正 を尺するウインドウか表示されます。真ん中の、、 RAID デバイスを作成 [default=/dev/md()]" を選び、 [OK] ポ 図 1 の [ 次 ] ボタンを押すと Disk Druid の画面に変 タンを押すと新たなウインドウがポッフブッフするので、 わります ( 図 2 ) 。 こでは、表 2 に示した設定になるよう 項目を順番に設定していきます ( 図 5 ) 。 に RAID デバイスを作成します。この成疋に従うと、最 設定ウインドウでは、マウントボイントを / 、ファ 糸勺には図 3 のようになるはすです。 イルシステムタイプを、、 ext3 " にし、 RAID デバイスをデ / ヾーティションの分割 フォルトの、、 md0 " から、、 mdl " へ変更します。 RAID レ ベルが、 RAIDO" になっていたら、、 RAIDI" に変更しま ます、新規のパーティションを作成します。 [ 新規 ] ポ タンを押すと、パーティションの追加画面がポップアッ す。 RAID メンバーの一覧に表示されているのは、さき / 、一ティション設定 4 5 / 25 引一 リセット ( 笠 ) R 第 0 ) タイプ フォーマット メ バイ 6298 6 ? 98 ぐ 3 イ V ′ 国引 ソフトウェアに ソフトウェア RAI ) : ノフトウェア R 0 自由域 ′い 71 / に 2 イ司 3 113 UNIX MAGAZINE 2003.6
特集 Linux て RAID 0 図 15 parted コマンドの実彳デ列 lnformation : The operating system thinks the geometry 0 Ⅱ /dev/hdc is 4865 / 255 / 63. Therefore, cylinder 1024 ends at 8032.499M. (parted) p Disk geometry for /dev/hdc : 0.000 ー 38166.679 megabytes Disk label type : msdos St art Fi1esystem F1ags End Type 1 2 3 0 .031 6298.923 primary ext3 6298.923 12597.846 primary ext3 boot , raid raid 12597.847 13648.974 primary linux—swap raid (parted) mkpart primary ext2 13650 38170 (parted) set 4 raid on (parted) p Disk geometry for /dev/hdc : Disk label type : msdos 0 .000 ー 38166.679 megabytes Start End 1 2 3 4 0 .031 6298.923 6298.923 12597.846 12597.847 13648.974 13648.975 38162.219 Type pr pr pnmary pr lmary Fi1esystem ext3 ext3 linux—swap ext3 (parted) 用できるパーティション (systemID が (d) にするには、 このハードディスクの残りの領域をすべて RAID てイ吏 15 のようになっていたとします。 parted を起動して print コマンドを実行・したとき、図 新規パーティションの作成と削除 けでも print コマンドが実行されます。 ティションを表示するコマンドは pr ⅲ t ですが、 p だ を途中で省略することもできます。たとえば、現在のパー 名の補完やヒストリー機能が使えます。コマンド名の入力 表示されます。 parted のコマンドラインでは、コマンド コマンドラインで実行できるサプコマンドの簡単な説明が ンプトが表示されます。 help と入力すれは・、 parted の parted コマンドを実行すると、 (parted)" というフロ コマンドか適当なハードディスク・デバイスを補います。 のデバイスを指定します。指定しなかった場合、 parted parted コマンドの引数には、操作するハードディスク p art ed の起動 をおこなう去を紹介します。 は、 parted を使って新しいパーティションの作成と削除 (parted) set 4 raid on (parted) mkpart primary 13650 38170 次のように実行します。 UNIX MAGAZINE 2003.6 mkpart がパーティションを作成するコマンドで、 F1ags boot , raid raid raid raid mkpart PART-TYPE S 4 召 7 ' E 〃 のように実行します。 START と E ル〃には、作成したい パーティションのツ曰頁と末尾の値を、ディスクのう頁から 数えた位置 ()B 単位 ) て指定します。おおまかな値を入 力しても parted が適切な値に変更してくれます。重複し たパーティションを作ってしまうような間違いは起こりま せん。 set は、ノ、一ティションに boot フラグや hidden 属 1 生 を付けたりするコマンドで、属性値の on/off を指定でき ます。 parted コマンドで raid フラグを付ける以下のサプ コ・ - ンド、 set raid 0 Ⅱ は、 fdisk では system ID を fd に変更する操作に相当し ます。 パーティションの削除には rm コマンドを使います。 rm M / Ⅳ 0 これで、 M / ル 0 月に指定したパーティションがただち に削除されます。待ったなしなので気をつけてください。 法を知っておきましよう。 ハードディスクカ外当に壊れる前に、障害からの回復方 0 障害からの回復 121
0 特集 Linux て RAID 表 1 / ヾーティション構成 HDI hdal hda2 hda3 HD2 hdcl hdc2 hdc3 swap 残り 容量 6GB 6GB IGB 25GB RAID デ / くイス mdl md2 md3 図 1 RAID の言聢には Disk Druid をイ吏う 、マウントボイン / 、一ティション砂イその他カ ることができますフィルシステ に′、一ティションを ノール、 Druid によって対 ァイスクバーティショ、 ディスクバーティション設定 redhat には、点ではハードウェア RAID を使う必要があり ます ) 。つまり、同レ、一ドディスク内の 2 つのパーティ ションでミラーを作成することもできます。しかし、 れではハードディスクの古郞章に対処できません。あるパー ティションのミラーは、かならす別のノ、一ドディスクに置 くべきです。そこで、同一機種の 2 台のハードディスク にそれぞれ同レヾーティションを作成し、各パーティショ ンをこの 2 台のノ、一ドディスクを使ってミラーリングす ることにします。 ディスクのパーティションは表 1 のように成疋し、、、残 り " 以外のパーティションをそれぞれミラーリングしま す。ルート・ファイルシステムと / var 、スワッフ。領域で す。残りはテストで使います。細かくパーティションを 分けると、障害が発生して新しいハードディスクにパー ティションを設定しなおすときに面倒なので、起動専用 の / boot パーティションも作成していません。 スワッフ領域のミラーについては悩みました。ミラー化 せすに、各ハードディスクのスワップ領域をまとめて 1 つ のスワップ領域として用いることも可能です。このように すると、ミラー化する場合とくらべて容量が 2 倍になる うえに、 2 つのパーティションで負荷分散されるので性能 の止も見込めます。逆にミラーリングをおこなうと、 ラーリング・デバイスへの書込みは、 2 つのハードディス クのパーティションに等しくおこなわれるので、 I/O の 処理が純に 2 倍となります。 いろいろ考えましたが、次のような理由からスワップも ミラーリングしました。 ・スワッフ。領域が壊れると、そこを使っていたアプリケー ションか異常終了する可能性がある。 ・メモリが一ト分にあるので、あまりスワッフ。領域を大きく しても意味がない。 Red Hat Linux で RAID を利用すると、そのパーティ ションには、通常のノ、一ドディスクのような hdal などの 名前ではなく、 md() といった名前でアクセスします。 112 ンプイツ 0 ルプ ディスク / ヾーティション の設定 新しいユーザーがい x のインス トールする時に最も大きな障害と なるのがパーティション設定で す Red Hat Li 仙 x は自動バー ティション設定を提供することで これを簡単にします 自動バーティション設定を選択す れは、マウントボイントを割当て たリ、バーティションを作成した り、インストールに必要な領載 を確保したりするためにバーティ ション設定ツールを使う必要はあ りません 手動でパーティション設定を行う には、 Disk Druid バーティショ ン設定ツールを使用します 異なるインストール方法を選択す るときは戻るボタンを、このイン ストール方法のまま槐けるなら次 ホタンを押します 朝ヘルプを第す ( 出〔」リリースノート ( 区 ) 0 自動バーティション礙 ( ) 45k レ u を使用して学動パー多ン設定 ( ・◆第る ( 旦 ) ー◆ の名前には md0—md15 の 16 個か使えます。単純に順 番どおりに名前を付けていくのなら、 / ( ルート ) を md0 、 次を mdl 、 ・・のようにするのでしようが、 RAID デ バイスとハードディスク・パーティションの対応が分かり やすいように、 hdal と hdcl をミラーしたものを mdl 、 hda2 と hdc2 をミラーしたものを md2 としました。 0 インストール 今回使う Red Hat Linux 9 のインストーラは、 OS の インストール時にプート・パーティションも含め、すべて のパーティションを RAID 化することができます。これ はたいへん便利です。 たとえば、 Solaris 9 にもソフトウェア RAID 機能 がありますが 1 、そのインストールは簡単ではありません。 OS をインストールしたあとにかなりの作業が必要となり ます。 Red Hat Linux のインストーラは、 OS のインストー ル先をミラーリング・デバイスとすることができるので、 インストール後に RAID を構成するための作業がいっさ い必要ありません。 Red Hat Linux 9 でルート・ファイ ルシステムに設定できるのは RAID 1 ( ミラーリンクつだ けですが、それ以外のパーティションであれば RAID 0 、 RAID 5 とすることも可能です。 それでは、実際にインストールの様子をみていきましょ う。 Red Hat Linux 9 のインストールについてはいろい ろなところで紹介されているので、こではとくに RAID 1 2003 年 2 月号の「ワークステーションのおと」参照。 UNIX MAGAZINE 2003.6
, 特集 Linux て RAID 0 図 18 hda の既存のパーティション デパイスプート始点 /dev/hda2 /dev/hdal 終点 1 550 プロック ID 549 4409811 615 530145 図 19 RAID を組むためのハードティスク (hdc) のパ デパイスプート始点 終点プロック ID /dev/hdcl /dev/hdc2 1 550 549 4409811 615 530145 システム 83 Linux 82 Linux スワップ ーティぐ / ョン システム fd Linux raid 自動検出 fd Linux raid 自動検出 れで、皆さんの手許のマシンにもミラーリングが導入でき るはずです。 手順 8. mdl から起動できたら、 hda を初期化してパーティシ して mdl から起動する。 7. 再起動する。このとき GRUB のカーネルの引数を変更 ジの作成と、 mdl 中の fstab の言当の変更をおこなう。 6. RAID デバイスから起動できるように、 initrd イメー 5. md2 をスワッフ。領域として初期化する。 の内容をコヒーする。 4. mdl に ext3 ファイルシステムを作成し、 /dev/hdal hda2 は failed-disk と指定する。 3. 同様に、 hdc2 と hda2 を用いる md2 を作成する。 し、 hdal は、、 failed-disk" と指定する。 2. hdcl と hdal をミラーリングする mdl を作庇ただ fdisk で作成する。 に作成する。 system ID が fd となる hdcl と hdc2 を 1. ミラーリング・デバイスのためのノヾーティションを hdc 手順は以下のようになります。 フ。領域という簡単なものにしてみました。 ルート・ファイルシステムと残りの領域、 hda2 がスワッ ラーリングしてみましよう。パーティションは hdal が 設疋された同し容量のハードディスクを追加し、これでミ セカンダリ・インターフェイスにもう 1 台マスターとして マスターとして設定されたハードディスクがあるとして、 以下の例では、 IDE のフライマリ・インターフェイスに hdc にパーティションを作成 9. hda? を md? に組み込む。 ョンを定義しなおす。 124 ドディスク (/dev/hdc) にパーティションを設定します。 IDE のセカンダリ・インターフェイスに接続したハー このとき、プライマリ・インターフェイスに接続したハー ドディスクと同じパーティション ( 図 18 ) にするのが、間 違いがなくて簡単でしよう。 しかし、よく考えると同し構成にしなくても間題はな く、 hda の内容が収まるのならどのようなパーティショ ンでもかまいません。たとえは hda にあるシステムで、 / と /boot や /var などが別々のパーティションとなっ ていても、 hdc の 1 つのノヾーティションに内容をまと めることができます。逆に、分けてしまうこともできま す。コピー先の RAID デバイスの初期状態では、 /dev /hda を参照せす ( そのために failed-disk と指定するの です ) 、 /dev/hdc だけで動くように構成するからです。 /dev/hda の内容を /dev/hdc だけで動作する RAID デ バイスに待避したあと、 /dev/hda をミラー用のデバイス に組み込むからといったほうが分かりやすいでしようか。 ノヾーティションの作成には、 fdisk コマンドや parted コマンドを使います。作成するパーティションの system ID は fd (Linux raid 自重辧屮 D にします ( 図 19 ) 。 RAID デバイス mdl と md2 の作成 新規に作成したパーティション (/dev/hdc?) だけで ミラーリング・デバイスを作成します。ここが重要で、 / dev / hda ? を使ってはいけません。 hdal と hdcl から rndl を、 hda2 と hdc2 から md2 を作成する予定です が、 hda のパーティションはまだ使用中であり、 hdal や hda2 をすぐに作成するわけにはいかないからです。 そこで、片方のデバイスか取り外された状態 (degrade モード ) から開始されるように、 ミラーリング・デバイス を初期化します。つまり、 hdal (hda2) か外され、 hdcl (hdc2) だけで動作しているミラーリング・テパイス mdl (md2) を作成します。 degrade モードで RAID を作成するには、 /etc/raid- tab ファイルで failed-disk というキーワードを使います。 UNIX MAGAZINE 2003.6