SourceForge.JP: Open Source Software (オープンソース ソフトウェア)

ログイン アカウント作成 ヘルプ [en][ja]
アレゲなら Slashdot
OSS なら SF マガジン
Search

Magazine 特集記事

最新Webブラウザに向けたWebサイト開発テクニック[10/31更新]

2008年になり、FirefoxやInternet Explorer、Operaといった主要Webブラウザが相次いでメジャーバージョンアップ...

SourceForge.JPを活用する[10/10更新]

本特集では、CVSやSVNといったバージョン管理システムの使い方や、SSH/SCPによるリモートログイン/ファイル転送...

オススメFirefox拡張 [9/5更新]

Firefoxの魅力の1つに、豊富な“拡張”の存在がある。素の状態のFirefoxはIE 7やOperaといった...

ソフトウェア開発に役立つOSSのツール群

ベンダーが体系的なツール群を提供しているプロプライエタリな開発環境とは対照的に、オープン...

Linuxベンチマーキング

ここでは、Linuxシステムの性能評価に使えるベンチマークツールの紹介記事と、ベンチマーク...

ディストリビューション・レビュー

バザールモデルで開発されているLinuxの世界では、日々、新たなディストリビューションが...

SourceForge.JP活用特集

CVS/Subversionを使ったバージョン管理(後編:SVNを使ったバージョン管理)

前編、中編ではバージョン管理の基本事項やCVSについて解説してきたが、後編となる本記事では、Subversionの利用について解説する。...

CVS/Subversionを使ったバージョン管理(中編:CVSを使ったバージョン管理)

前編ではバージョン管理システムの基本事項について解説を行ったが、中編となる本記事では、CVSを使ったバージョン管理について解説する。...

CVS/Subversionを使ったバージョン管理(前編:バージョン管理の基礎)

本記事では、まずバージョン管理システムの基本的な考え方と、用語について解説する。...

Windows用SCP/SFTPクライアント「WinSCP」で安全なファイル転送

ネットワーク経由で安全にファイルを転送する方法として、SCPやSFTPがある。最近では、セキュリティ向上のため...

[PR]お勧めリンク

UUIDを使ったディスクドライブ指定

2008年09月18日 12:21PM 1 2 3
  • スラッシュドットにタレコむ
  • あとで読む

 「/etc/fstab」ファイルの中身を調べると、「/dev/hda1」といった見慣れたハードディスク表記ではなく「UUID=62fa5eac-3df4-448d-a576-916dd5b432f2」のようなエントリを見かけることがある。こうしたエントリは汎用一意識別子(UUID:Universally Unique IDentifier)と呼ばれており、この128ビットの数値を使うことでハードディスクドライブの管理が容易になる。

 「/dev/hda」と「/dev/hdb」という2台のハードディスクドライブを搭載したシステムがあるとする。「/dev/hda」にはrootパーティションとスワップパーティションが含まれ、「/dev/hdb1」にはホームディレクトリと2台目のハードディスク領域全体が含まれている。ここで、別のハードディスクドライブをシステムに追加したいが、何らかの制約があって「/dev/hda」と「/dev/hdb」の間にしか追加できず、「/dev/hdb」を「/dev/hdc」としなければならないとする。すると、似たようなことを試した人なら知っているだろうが、次のような問題が起こる。mountコマンドは、「/etc/fstab」ファイルをチェックして新しいドライブを「/home」としてマウントしようとするのだ。この問題を解決するには、シングルユーザモードでrootとしてログインし、「/etc/fstab」を編集したうえで、ドライブの起動順序を変更する必要がある。そうしないと、ログイン時にシステムからエラーが返ってくるか、最悪の場合はルートドライブでカーネルパニックが発生する。これだけでも十分に厄介な状況だが、「/var」、「/opt」、「/home」、「/boot」、「/usr」、「/usr/local」といったディレクトリが複数のハードディスクドライブに分かれているマシンだと、問題はさらに複雑になる。

 しかし、システム管理者がUUIDを使用することにすれば、こうした問題は実質的に解消される。「/dev/sd*」とか「/dev/hd*」という表記がほとんど消えてしまうからだ。その代わり、それぞれのハードディスクドライブにはUUIDが与えられる。UUIDはファイルシステム内で保持され、「/etc/fstab」が参照先となる。そのため、システム管理者は、UNIXのファイルシステムツリー内のマウント位置に影響を与えることなく、各デバイスをBIOSチェーン内のどこにでも自由に配置できる。

 旧来のシステムでは通常「/etc/fstab」のエントリが次のようになっている(以下はファイルシステムにJFSを使っている場合)。

/dev/sda1   /   jfs   relatime,errors=remount-ro   0   1

 新しいシステムでは、同じエントリが次のようになる。

UUID=1c0653cd-e897-41af-bd30-55f3a195ff33  /  jfs     relatime,errors=remount-ro  0  1

 違うのは、エントリの最初の部分だけである。ドライブを指定する「/dev/sda1」の部分が、「UUID= 1c0653cd-e897-41af-bd30-55f3a195ff33」に変わっている。そのため、このドライブが仮に「/dev/sdi1」だったとしても問題は起こらない。ブートローダの設定ファイルさえ適切に変更されていれば、このドライブはrootとしてマウントされ、期待どおりに動作してくれる。

David Pendell
2008年11月18日 05:07PM 更新