15.1 YaSTパーティション分割ツールの使用

図 15-1に示す[上級者向けのパーティション設定]ダイアログを使って、1つまたは複数のハードディスクのパーティションを手動で設定します。パーティションは追加、削除、および編集することができます。このYaSTモジュールからソフトウェアRAID設定、EVMS設定、およびVM設定にもアクセスできます。

警告: 稼働中システムのパーティション再設定

実行中にシステムのパーティションを再設定できますが、誤操作によるデータ損失のリスクが非常に高くなります。インストールしたシステムのパーティション再設定は避けて、常に再設定の前にデータを完全にバックアップしてください。

図 15-1 YaSTパーティション分割ツール

ヒント: IBM System z:デバイス名

IBM System zは、DASDとSCSIハードディスクしか認識できません。IDEハードディスクはサポートされていません。これが理由で、これらのデバイスは、パーティションテーブル内でdasdaまたはsdaという名前で表示され、最初に認識されるデバイスになります。

接続されているすべてのハードディスクの既存パーティションまたは提案パーティションが、YaST [エキスパートパーティショナ]ダイアログの[Available Storage]のリストとして表示されます。ハードディスク全体は、番号のないデバイスとしてリストされます(/dev/sda/dev/dasdaなど)。パーティションは、それらのデバイスの一部としてリストされます(/dev/sda1/dev/dasda1など)。ハードディスクのサイズ、形式(タイプ)、ファイルシステム、マウントポイントと、ハードディスクのパーティションも表示されます。マウントポイントには、Linuxファイルシステムツリー内のどこにパーティションが表示されるかが指定されています。

いくつかの機能ビューが[System View]の左側に表示されます。これらのビューを使用して、既存ストレージ設定の情報を収集したり、RAIDVolume ManagementCrypt FilesNFSなどの機能を設定します。

インストール中、エキスパートダイアログで作業中の場合は、未使用のハードディスクスペースも表示され、自動的に選択されます。SUSE® Linux Enterprise Server用ディスクスペースを増やすには、リストの下から上に(つまり、ハードディスクの最後のパーティションから始めて、最初のパーティションの方に向かって)、必要なスペースが確保できるまで領域を解放します。たとえば、パーティションが3つある場合、2番目のパーティションをSUSE Linux Enterprise Server専用に使用し、1番目と3番目のパーティションを他のオペレーティングシステム用に保持することはできません。

15.1.1 パーティションのタイプ

ヒント: IBM System z:ハードディスク

IBM System zプラットフォームの場合、SUSE Linux Enterprise ServerはSCSIハードディスクとDASD (Direct Access Storage Devices)の両方をサポートしています。SCSIディスクは以下の方法でパーティション設定することが可能ですが、DASDではパーティションテーブルに指定できるパーティションエントリが3つに限られます。

どのハードディスクにも、パーティションテーブルがあり、4つのエントリ領域が設けられています。パーティションテーブルの各エントリは、基本パーティションまたは拡張パーティションのいずれかに対応します。ただし、拡張パーティションとして指定できるエントリは、1つだけです。

基本パーティションは、単純にシリンダの連続した領域(物理ディスク領域)で構成され、これらのシリンダは、特定のオペレーティングシステムに割り当てられています。パーティションテーブルの制限に伴い、基本パーティションの場合、1台のハードディスクで作成できるパーティションの数が4つに限られます。このような理由から、拡張パーティションが使用されます。拡張パーティションもディスクシリンダ上の連続範囲ですが、さらに論理パーティション に分割することができます。論理パーティションは、必ずしもパーティションテーブルに存在している必要はありません。つまり、拡張パーティションは論理パーティションのコンテナということになります。

パーティションが4つ以上必要な場合は、4つ目(またはそれ以前)に拡張パーティションを1つ作成します。この拡張パーティションには、残りの空きシリンダ領域全体を使用するのが妥当です。さらに、この拡張パーティションを複数の論理パーティションに区切ります。SCSI、SATA、Firewireなどのディスクで作成可能な論理パーティションは、最大で15個、(E)IDEディスクの場合は、最大63個です。どのタイプのパーティションを使用しても、Linuxへの影響はありません。基本パーティション、論理パーティションのいずれも、正常に動作します。

ヒント: GPTディスクラベル付きのハードディスク

GPTディスクラベルを使用しているアーキテクチャの場合、基本パーティションの数に制限がありません。そのため、論理パーティションはありません。

15.1.2 パーティションの作成

パーティションを初めから作成するには、[ハードディスク]を選択して、空領域を含むハードディスクを選択します。実際の変更は、[パーティション]タブで行うことができます。

  1. [追加]を選択します。複数のハードディスクが接続されている場合、新規パーティションの作成先ハードディスクの選択ダイアログが表示されます。

  2. パーティションの形式(基本か拡張)を指定します。最大4つの基本パーティションを作成するか、最大3つの基本パーティションと1つの拡張パーティションを作成します。拡張パーティション内に、いくつかの論理パーティションを作成します(詳細については、セクション 15.1.1, パーティションのタイプを参照してください)。

  3. 使用するファイルシステムと、マウントポイントを選択します。YaSTによって、作成する各パーティション用のマウントポイントが提案されます。別のマウント方法(ラベルによるマウントなど)を使用するには、[Fstabオプション]を選択します。

  4. セットアップで必要な場合は、追加のファイルシステムオプションを指定します。たとえば、永続的デバイス名が必要な場合に必要になります。使用できるオプションの詳細については、セクション 15.1.3, パーティションの編集を参照してください。

  5. [OK] > [OK]の順にクリックして、パーティション設定を適用し、パーティション設定モジュールを終了します。

    インストール時にパーティションを作成した場合は、インストール概要画面に戻ります。

15.1.3 パーティションの編集

新規パーティションの作成、または既存パーティションの変更の際には、多数のパラメータを設定します。新規パーティションの場合、適切なパラメータがYaSTによって設定されるので、通常は変更の必要はありません。パーティション設定を手動で編集するには、以下の手順に従ってください。

  1. パーティションを選択します。

  2. 編集]をクリックして、パーティションの編集およびパラメータ設定を実行します。

    ファイルシステムID

    この段階でパーティションをフォーマットしたくない場合であっても、パーティションにファイルシステムIDを割り当て、パーティションが正しく登録されるようにします。可能な値は、[Linux][Linux swap][Linux LVM]、および[Linux RAID]です。

    ファイルシステム

    ここでは、ファイルシステムを変更したり、パーティションをフォーマットします。ファイルシステムの変更またはパーティションの再フォーマットによって、パーティションからすべてのデータが完全に削除されます。

    Ext3は、Linuxパーティションのデフォルトファイルシステムです。ReiserFS、JFS、XFS、およびExt3は、ジャーナリングファイルシステムです。これらのファイルシステムは、システムクラッシュ後のシステムを非常に迅速に復元できます。これは、書き込みプロセスが操作中にログされるからです。さらに、ReiserFSは、多数の小さいなファイルを非常に高速に処理します。Ext2は、ジャーナリングファイルシステムではありません。ただし、Ext2は、非常に堅牢であり、管理用のディスクスペースをあまり必要としないため、小さなパーティション用には良いシステムです。

    暗号化ファイルシステム

    暗号化を有効にした場合、すべてのデータは暗号化された状態で、ハードディスクに書き込まれます。これにより、機密データのセキュリティが向上しますが、暗号化に時間がかかるので、システムの処理速度はわずかに低下します。ファイルシステムの暗号化の詳細については、第12章 Encrypting Partitions and Filesを参照してください。

    fstabのオプション

    グローバルファイルシステム管理ファイル(/etc/fstab)にあるさまざまなパラメータを指定します。ほとんどの設定では、デフォルト設定で動作します。たとえば、ファイルシステムIDをデバイス名からボリュームラベルに変更できます。ボリュームラベルには、/およびスペース以外のすべての文字を使用することができます。

    永続的なデバイス名を取得するには、マウントオプションの [デバイスID][UUID]、または[ラベル]を使用します。SUSE Linux Enterprise Serverでは、永続的デバイス名は、デフォルトで有効です。

    メモ: IBM System z: パスによるマウント

    クローニング目的でディスクからディスクへのコピーを使用すると、IDによるマウントはIBM System zに障害を引き起こすため、IBM System zではデフォルトで/etc/fstabのパスによってデバイスがマウントされます。

    マウントオプション[ラベル]を使用してパーティションをマウントする場合は、選択したパーティションの適切なラベルを定義します。たとえば、/homeにマウントするパーティションには、パーティションラベルHOMEを使用できます。

    ファイルシステムでクォータを使用する場合は、マウントオプション [Enable Quota Support]を使用します。これは、YaST [ユーザ管理]モジュールでユーザのクオータを定義する前に行う必要があります。ユーザクォータの設定方法の詳細については、セクション 12.3.5, クオータの管理を参照してください。

    マウントポイント

    パーティションのファイルシステムツリー内でのマウント先ディレクトリを指定します。YaSTで表示されるさまざまなディレクトリから選択するか、または他のディレクトリ名を入力します。

  3. [OK] > [適用]の順にクリックして、パーティションをアクティブにします。

メモ: ファイルシステムのサイズ変更

既存ファイルシステムをサイズ変更するには、パーティションを選択し、[Resize]を使用します。パーティションはマウント中にはサイズ変更できないので注意してください。パーティションをサイズ変更するには、パーティショナの実行前にパーティションをアンマウントします。

15.1.4 パーティション設定に関するヒント

以降のセクションでは、システムの設定時に正しく判断するための、パーティション設定のヒントを説明します。

ヒント: シリンダ番号

パーティション設定ツールによっては、パーティションのシリンダの番号を0または1で開始します。シリンダ数を計算するには、最後と最初のシリンダ番号の差に1を加えます。

swapの使用

swapは、物理的に使用可能なメモリの拡張に使用します。これにより、使用可能な物理RAMより多くのメモリが使用可能になります。2.4.10以前のカーネルのメモリ管理システムでは、安全措置としてswapが必要でした。2.4.10以前は、RAMサイズの2倍のスワップ領域がない場合システムパフォーマンスが影響を受けていました。この制限がなくなったため、これは現在では当てはまりません。

Linuxでは、LRU(Least Recently Used)と呼ばれるページを使用して、メモリからディスクへ移動する可能性のあるページを選択します。したがって、実行中のアプリケーションがより多くのメモリを使用できるだけでなく、そのキャッシングもさらにスムーズに機能します。

アプリケーションが取得できる限りのメモリを割り当てようとする場合は、swapに伴う問題があります。ここでは、3つの主要なケースについて検討します。

スワップのないシステム

解放できる限りのすべてのメモリをアプリケーションが取得します。すべてのキャッシュが解放されるので、すべての他のアプリケーションの速度が低下します。数分後、カーネルのメモリ不足解消のメカニズムがアクティブになり、プロセスを終了させます。

中程度のスワップ(128MB〜512MB)を持つシステム

まず、スワップのないシステムと同様に、システムの速度が低下します。すべての物理RAMが使い果たされると、スワップ領域も使用されます。この時点で、システムが非常に遅くなり、リモートからコマンドを実行することが不可能になります。スワップ領域を実行するハードディスクの速度により、システムのこの状態は約10分から15分続きます。その後、カーネルのメモリ不足解消メカニズムが問題を解決します。ただし、コンピュータがサスペンド(ディスク)を実行する場合は、一定量のスワップが必要となります。その場合は、スワップサイズがかなり大きくないとメモリから必要なデータを取り込めません(512MBから1GB)。

大量のスワップ(数GB)を持つシステム

この場合、暴走し、激しくスワップするアプリケーションがないことが望ましい条件です。この問題が発生すると、システムの回復まで長時間かかります。その間に、他のプロセスにタイムアウトや障害が発生しがちで、障害のあるプロセスを終了させた場合でも、システムが定義されていない状態に残ることがあります。この場合は、コンピュータをハードリブートして、再度、実行を試行してください。大量のスワップが役立つのは、この機能に依存するアプリケーションがある場合です。そのようなアプリケーション(データベース、グラフィック操作プログラムなど゙)は、多くの場合、ニーズに応じてハードディスクの領域を直接使用するオプションを持っています。大量のスワップ領域を使用する代わりに、このオプションを使用することをお勧めします。

暴走はしないものの、しばらく後でさらにスワップを必要とするシステムの場合は、スワップ領域をオンラインで拡張できます。スワップ領域用パーティションを準備している場合は、YaSTでそのパーティションを追加してください。使用可能なパーティションがない場合は、スワップファイルを使用してスワップを拡張することもできます。スワップファイルは、一般に、パーティションより遅いですが、物理RAMと比べると、両方とも非常に低速です。そして、まず第一に、実際の速度の違いは思ったほど重要ではありません。

手動によるスワップファイルの追加

実行中のシステムにスワップファイルを追加するには、次の手順に従います。

  1. システム内で空ファイルを作成します。たとえば、128MBのスワップファイルを/var/lib/swap/swapfileに追加するには、次のコマンドを使用します。

    mkdir -p /var/lib/swap
    dd if=/dev/zero of=/var/lib/swap/swapfile bs=1M count=128
  2. このスワップファイルを次のコマンドで初期化します。

    mkswap /var/lib/swap/swapfile
  3. スワップを次のコマンドで有効にします。

    swapon /var/lib/swap/swapfile

    このスワップファイルを無効にするには、次のコマンドを使用します。

    swapoff /var/lib/swap/swapfile
  4. 次のコマンドで、現在使用可能なスワップ領域を確認します。

    cat /proc/swaps

    ただし、この時点では、これは一時的なスワップ領域にすぎません。次の再起動後は、使用されなくなります。

  5. このスワップファイルを永久的に有効にするには、次の行を/etc/fstabに追加します。

    /var/lib/swap/swapfile swap swap defaults 0 0

15.1.5 パーティション設定とLVM

エキスパートパーティショナから、[Volume Management]で、LVM設定にアクセスします。ただし、作業するLVM設定がシステムにすでに存在している場合は、セッションで初めてLVM設定を入力した時点でただちに、自動的にその設定がアクティブになちます。この場合、アクティブになったボリュームグループに属するパーティションを含むすべてのディスクは、パーティションを再設定できません。Linuxカーネルは、ハードディスクの変更されたパーティションテーブルを、このディスク上のいずれかのパーティションが使用中になった時点では、再読みすることができないからです。ただし、機能しているLVM設定がシステム上にがすでにある場合は、物理的なパーティション再設定は必要になりません。代わりに、論理ボリュームの設定を変更します。

物理ボリューム(PV)の先頭では、そのボリュームに関する情報がパーティションに書き込まれます。こうしたパーティションをLVM以外の目的で再使用するには、このボリュームの先頭を削除ておくようにお勧めします。たとえば、VG systemおよびPV /dev/sda2では、これは、コマンドddif=/dev/zero of=/dev/sda2 bs=512 count=1で行うことができます。

警告: ブート用ファイルシステム

ブートに使用するファイルシステム(rootファイルシステムまたは/boot)をLVM論理ボリュームに格納しないでください。通常の物理パーティションに格納してください。

LVMに関する詳細については、ストレージ管理ガイドを参照してください。