適用先 SUSE Linux Enterprise Desktop 12

30 最も頻繁に起こる問題およびその解決方法

この章では、一連の潜在的な問題とその解決法について説明します。ここで状況が正確に記載されていなくても、問題解決のヒントになる類似した状況が見つかる場合があります。

30.1 情報の検索と収集

Linuxでは、非常に詳細なレポートが提供されます。システムの使用中に問題が発生した場合、調べる必要のあるところが何箇所かあります。それらのほとんどは、Linuxシステム一般で確認が必要な場所であり、残りのいくつかはSUSE Linux Enterprise Desktopシステムに関連する場所です。大半のログファイルはYaSTを使って表示することができます(その他 › 起動ログを表示)。

YaSTでは、サポートチームが必要なシステム情報のすべてを収集することができます。その他 › サポートの順に選択し、問題のカテゴリを選択します。すべての情報が収集されたら、それをサポートリクエストに添付します。

最も頻繁にチェックされるログファイルのリストの後には、一般的な目的に関する説明があります。~を含むパスは、現在のユーザのホームディレクトリを参照します。

表 30.1 ログファイル

ログファイル

説明

~/.xsession-errors

現在実行中のデスクトップアプリケーションからのメッセージです。

/var/log/apparmor/

AppArmorからのログファイル。詳細については、Part “Confining Privileges with AppArmor”, Security Guideを参照してください。

/var/log/audit/audit.log

システムのファイル、ディレクトリ、またはリソースに対するすべてのアクセスを追跡し、システムコールをトレースする監査からのログファイル。詳細については、Part “The Linux Audit Framework”, Security Guideを参照してください。

/var/log/mail.*

メールシステムから受け取るメッセージです。

/var/log/NetworkManager

NetworkManagerからのログファイルで、ネットワーク接続についての問題を収集します。

/var/log/samba/

Sambaサーバおよびクライアントのログメッセージを含んでいるディレクトリです。

/var/log/warn

カーネルおよびシステムのログデーモンから受け取る、警告レベル以上のすべてのメッセージ。

/var/log/wtmp

現在のコンピュータセッションのユーザのログインレコードを含むバイナリファイルです。lastコマンドを使用して表示させます。

/var/log/Xorg.*.log

Xウィンドウシステムから受け取る、起動時および実行時のさまざまなログファイルです。Xの失敗した起動をデバッグするのに役に立ちます。

/var/log/YaST2/

YaSTのアクションおよびその結果を含んでいるディレクトリです。

/var/log/zypper.log

Zypperのログファイル。

ログファイルとは別に、稼働中のシステムの情報も提供されます。詳細については、「表 30.2: /procファイルシステムによるシステム情報」を参照してください。

表 30.2 /procファイルシステムによるシステム情報

ファイル

説明

/proc/cpuinfo

プロセッサのタイプ、製造元、モデル、およびパフォーマンスなどを含む情報を表示します。

/proc/dma

どのDMAチャネルが現在使用されているかを表示します。

/proc/interrupts

どの割り込みが使用されているか、各割り込みの使用回数を表示します。

/proc/iomem

I/Oメモリの状態を表示します。

/proc/ioports

その時点でどのI/Oポートが使用されているかを表示します。

/proc/meminfo

メモリステータスを表示します。

/proc/modules

個々のモジュールを表示します。

/proc/mounts

現在マウントされているデバイスを表示します。

/proc/partitions

すべてのハードディスクのパーティション設定を表示します。

/proc/version

現在のLinuxバージョンを表示します。

Linuxカーネルは、/procファイルシステムの場合を除いて、メモリ内ファイルシステムであるsysfsモジュールで情報をエクスポートします。このモジュールは、カーネルオブジェクトとその属性および関係を表します。sysfsの詳細については、第17章 udevによる動的カーネルデバイス管理でudevのコンテキストを参照してください。表 30.3には、/sysの下にある最も一般的なディレクトリの概要が含まれています。

表 30.3 /sysファイルシステムによるシステム情報

ファイル

説明

/sys/block

システム内で検出された各ブロックデバイスのサブディレクトリが含まれています。一般に、これらの大半はディスクタイプのデバイスです。

/sys/bus

各物理バスタイプにのサブディレクトリが含まれます。

/sys/class

デバイスの機能タイプとしてグループ化されたサブディレクトリが含まれます(graphics、net、printerなど)。

/sys/device

グローバルなデバイス階層が含まれます。

Linuxには、システム解析とモニタリング用のさまざまなツールが含まれています。システム診断で使用される最も重要なツールの選択については、Chapter 2, System Monitoring Utilities, System Analysis and Tuning Guideを参照してください。

次の各シナリオは、問題を説明するヘッダに続いて、推奨される解決方法、より詳細な解決方法への利用可能な参照、および関連する他のシナリオへの相互参照が書かれた、1つまたは2つの段落から構成されています。

30.2 インストールの問題

インストールの問題とは、コンピュータがインストールに失敗した状態のことを指します。インストールが全体において失敗する、またはグラフィカルインストーラが起動できないという可能性があります。ここでは、通常経験するような問題のいくつかに集中して説明し、そのような場合に考えられる解決方法または回避方法を示します。

30.2.1 メディアの確認

SUSE Linux Enterprise Desktopのインストールメディアの使用中に問題が発生した場合には、インストールメディアの整合性をチェックします。メディアからブートし、ブートメニューからCheck Installation Media (インストールメディアのチェック)を選択します。実行中のシステムで、YaSTを起動して、ソフトウェア › メディアチェックの順に選択します。SUSE Linux Enterprise Desktopのメディアをチェックするには、メディアをドライブに挿入し、YaSTのメディアチェック画面で、チェック開始をクリックします。これには少し時間がかかります。問題が検出された場合、インストール用にこのメディアを使用しないでください。メディアを自分で書き込んだ場合、メディアの問題が発生する場合があります。メディアを低速(4x)で書き込むと、問題を回避できます。

メディアの確認
図 30.1 メディアの確認

30.2.2 ブート可能なDVDドライブが利用不可

お使いのコンピュータにブート可能なDVD-ROMドライブがない場合、または使用しているドライブがLinuxでサポートされていない場合、内蔵DVD-ROMドライブを使用しないでコンピュータをインストールするオプションがいくつかあります。

外付けブートデバイスの使用

BIOSおよびインストールカーネルによりサポートされている場合、外部DVDドライブまたはUSBストレージからブートします。ブート可能なUSBストレージデバイスの作成方法については、Table “Boot Options”, Deployment Guideを参照してください。

PXE経由のネットワークブート

マシンにDVDドライブがない場合でも、使用可能なEthernet接続がある場合は、完全にネットワークベースのインストールを実行します。詳細については、Section “Remote Installation via VNC—PXE Boot and Wake on LAN”, Chapter 11, Remote Installation, Deployment GuideSection “Remote Installation via SSH—PXE Boot and Wake on LAN”, Chapter 11, Remote Installation, Deployment Guideを参照してください。

30.2.2.1 外付けブートデバイス

Linuxでは、既存のDVDドライブはほとんどサポートされます。システムにDVDドライブが存在しない場合でも、USB、FireWire、またはSCSIを通じて接続する外部DVDドライブを使用してシステムをブートできます。これは、BIOSおよびご利用のハードウェアのインタラクションに大きく依存します。問題が発生した場合、BIOSアップデートにより解決する場合があります。

ライブCDからインストールする場合は、「ライブUSBフラッシュディスク」を作成して、このディスクからブートすることもできます。

30.2.3 インストールメディアからのブートに失敗する

コンピュータでインストールメディアが起動しない理由の1つとして、BIOS内のブートシーケンスの設定が誤っている場合があります。BIOSブートシーケンスでは、ブート用の最初のエントリとしてDVDドライブがセットされている必要があります。そうでない場合、コンピュータは他のメディア(通常ハードディスク)からブートを試みます。BIOSのブートシーケンスを変更するための説明は、マザーボードに付属するマニュアルまたは次の段落に記載されています。

BIOSとはコンピュータの非常に基本的な機能を有効にするソフトウェアです。マザーボードを供給するベンダが、独自のハードウェア用のBIOSを供給します。通常、BIOSセットアップは特別なとき(マシンのブート時)にだけアクセスされます。この初期化段階の間に、マシンは数多くのハードウェア診断テストを実行します。そのうちの1つとして、メモリカウンタにより示されるメモリチェックがあります。メモリカウンタが表示されたとき、通常カウンタの下または画面の下部の辺りに、BIOSセットアップにアクセスするために押すキーについて表示されています。通常は、<Del>、F1、または<Esc>のいずれかのキーを押します。BIOSセットアップ画面が表示されるまでこのキーを押します。

手順 30.1 BIOSのブートシーケンスの変更
  1. ブートルーチンによって宣言されたように、適切なキーを使用してBIOSを入力します。その後、BIOS画面が表示されるのを待ちます。

  2. AWARD BIOSでブートシーケンスを変更するには、BIOS FEATURES SETUPエントリを探してください。他のメーカでは、ADVANCED CMOS SETUPといった違う名前が使用されています。エントリが見つかったら、そのエントリを選択して、<Enter>キーを押して確定します。

  3. 開いた画面で、BOOT SEQUENCEまたはBOOT ORDERというサブエントリを探します。DVDドライブが最初に表示されるまでPgUpキーまたはPgDownキーを押して、設定を変更します。

  4. <Esc>キーを押してBIOS設定画面を終了します。設定を保存するには、SAVE & EXIT SETUPを選択し、F10キーを押します。設定が保存されていることを確認するには、Yキーを押します。

手順 30.2 SCSI BIOS (Adaptecホストアダプタ)内でのブートシーケンスの変更
  1. CtrlAを押してセットアップを開きます。

  2. ディスクユーティリティを選択します。これで、接続したハードウェアコンポーネントが表示されるようになります。

    ご使用のDVDドライブに割り当てられているSCSI IDの記録をとります。

  3. <Esc>キーを押して、メニューを閉じます。

  4. アダプタセッティングの設定を開きます。追加オプションで、Boot Device Options (ブートデバイスオプション)を選択し、<Enter>キーを押します。

  5. DVDドライブのIDを入力して、再度<Enter>キーを押します。

  6. <Esc>キーを2回押して、SCSI BIOSの起動画面に戻ります。

  7. はいを押して、この画面を終了しコンピュータを起動します。

最終的なインストールが使用する言語やキーボードレイアウトに関係なく、BIOS設定では、通常以下の図に示されているようなUSキーボードレイアウトが使用されます。

USキーボードレイアウト
図 30.2 USキーボードレイアウト

30.2.4 ブートできない

ハードウェアのタイプ(主にかなり旧式かごく最近のタイプ)では、インストールが失敗するものもあります。多くの場合、インストールカーネル内でこのタイプのハードウェアのサポートが欠けているか、または、ある種のハードウェアに問題を引き起こすACPIのような、カーネルに含まれている特定の機能が原因の可能性があります。

最初のインストールブート画面から、標準のインストールモードを使用してインストールするのに失敗した場合、以下のことを試してみてください。

  1. DVDがドライブにまだ入った状態であれば、CtrlAltDelを押すか、ハードウェアリセットボタンを使用して、コンピュータを再起動します。

  2. ブート画面が表示されたら、F5キーを押すか、キーボードの矢印キーを使用して、ACPIなしを探し、<Enterキーを押してブートおよびインストールプロセスを開始します。このオプションはACPIの電源管理技術を無効にします。

  3. Chapter 3, Installation with YaST, Deployment Guideの中での説明に従って、インストールを進めます。

これが失敗する場合、以上で述べた手順の代わりにセーフ設定を選択してインストール処理を続行します。このオプションはACPIおよびDMAサポートを無効化します。このオプションを使うと、ほとんどのハードウェアが起動します。

両方のオプションともに失敗する場合、ブートオプションプロンプトを使用して、ハードウェアタイプをサポートするのに必要な追加のパラメータをインストールカーネルに渡します。ブートオプションとして使用可能なパラメータの詳細については、/usr/src/linux/Documentation/kernel-parameters.txtにあるカーネルマニュアルを参照してください。

ヒント
ヒント: カーネルマニュアルの取得

kernel-sourceパッケージをインストールして、カーネルマニュアルを表示します。

他にさまざまなACPI関連のカーネルパラメータがあります。それらのパラメータは、インストールのために起動する前のブートプロンプトで入力できます。

acpi=off

このパラメータは、コンピュータ上の完全ACPIサブシステムを無効にします。これはコンピュータがACPIをまったく処理できない場合、またはコンピュータのACPIが問題を引き起こしていると考えられる場合に役に立ちます。

acpi=force

2000年より前の日付が付けられた古いBIOSを持つコンピュータであっても、常にACPIを有効にします。このパラメータは、acpi=offに加えて設定された場合、ACPIも有効にします。

acpi=noirq

ACPIはIRQルーティングには使用しません。

acpi=ht

hyper-threadingを有効化するのに十分なACPIのみ実行します。

acpi=strict

厳密にはACPI仕様互換ではないプラットフォームに対する耐性が弱くなります。

pci=noacpi

新しいACPIシステムのPCI IRQルーティングを無効にします。

pnpacpi=off

このオプションは、BIOSセットアップに誤った割り込みまたはポートがある場合のシリアルまたはパラレルの問題向けです。

notsc

タイムスタンプカウンタを無効にします。このオプションを使用して、システムのタイミングについての問題に対処できます。これは最近の機能で、コンピュータに特に時間や全面的なハングなどの遅れが見られる場合に、このオプションを試す価値があります。

nohz=off

nohz機能を無効にします。マシンがハングした場合、このオプションが役に立ちます。それ以外の場合は、使用しません。

パラメータの正しい組み合わせを決定したら、システムが次回適切に起動することを確実にするために、YaSTは自動的にそれらのパラメータをブートローダの設定に書き込みます。

カーネルのロード中、またはインストール中に説明できないエラーが発生した場合は、ブートメニューからメモリテストを選択し、メモリを確認します。メモリテストがエラーを返す場合、それは通常はハードウェアのエラーです。

30.2.5 グラフィカルインストーラを起動できない

メディアをドライブに挿入しコンピュータを再起動した後に、インストール画面が表示されますが、インストールを選択すると、グラフィカルインストーラは起動しません。

この問題に対処する方法はいくつかあります。

  • インストールダイアローグ用に、他の画面解像度を選択してみます。

  • インストール用にテキストモードを選択します。

  • VNCを介して、グラフィカルインストーラを使ってリモートインストールをします。

手順 30.3 インストール時の画面解像度の変更
  1. インストールのために起動します。

  2. F3キーを押して、インストール用に低解像度を選択するメニューを開きます。

  3. インストールを選択し、Chapter 3, Installation with YaST, Deployment Guideの中の説明に従ってインストールを続行します。

手順 30.4 テキストモードのインストール
  1. インストールのために起動します。

  2. F3キーを押して、テキストモードを選択します。

  3. インストールを選択し、Chapter 3, Installation with YaST, Deployment Guideの中の説明に従ってインストールを続行します。

手順 30.5 VNCによるインストール
  1. インストールのために起動します。

  2. ブートオプションプロンプトに以下のテキストを入力します。

    vnc=1 vncpassword=some_password

    some_passwordの部分はVNCインストール用に使用するパスワードに置き換えます。

  3. インストールを選択し、キーを押してインストールを開始します。Enter

    グラフィカルインストールルーチンに入る代わりに、システムはテキストモードで実行され、その後停止します。その際、IPアドレスおよびポート番号が含まれるメッセージが表示されますが、これらは、ブラウザインタフェースまたはVNCビューアアプリケーションを使用してインストーラにアクセスできるようにするために必要です。

  4. ブラウザを使用してインストーラにアクセスする場合、ブラウザを起動して、今後SUSE Linux Enterprise Desktopが起動するマシン上のインストール手順で与えられたアドレス情報を入力し、<Enterキーを押します。

    http://ip_address_of_machine:5801

    ブラウザウィンドウでは、VNCのパスワードを入力するように要求するダイアログが開かれます。パスワードを入力し、Chapter 3, Installation with YaST, Deployment Guideの説明に従ってインストールを続行します。

    重要
    重要: クロスプラットフォームのサポート

    VNC経由のインストールでは、Javaサポートが有効化されていれば、オペレーションシステムやブラウザの種類を問いません。

    プロンプトが表示されたら、VNCビューアにIPアドレスとパスワードを入力します。インストールダイアログを表示するウィンドウが開きます。通常のようにインストールを続行します。

30.2.6 最低限のブート画面だけが起動する

メディアをドライブに挿入して、BIOSルーチンは終了しますが、システム上でグラフィカルブート画面が開始しません。その代わりに、最小限のテキストベースのインタフェースが起動されます。これは、グラフィカルブート画面を表示するのに十分なグラフィックメモリを持っていないコンピュータを使用する場合に起こる可能性がります。

テキストのブート画面は最小限に見えますが、グラフィカルブート画面が提供する機能とほぼ同じものを提供します。

ブートオプション

グラフィカルインタフェースとは違い、キーボードのカーソルキーを使って異なるブートオプションを選択することはできません。テキストモードのブート画面のブートメニューでは、ブートプロンプトで入力するキーワードが表示されます。これらのキーワードはグラフィカルバージョンで提供されているオプションにマップしています。任意の選択を入力し<Enterキーを押して、ブートプロセスを起動します。

カスタムブートオプション

ブートオプションを選択したあと、ブートプロンプトで適切なキーワードを入力するか、30.2.4項 「ブートできない」の中で説明されているカスタムブートオプションを入力します。インストールプロセスを起動するには、<Enterキーを押します。

画面解像度

Fキーを使用して、インストール用の画面解像度を判別します。テキストモードで起動する必要がある場合は、キーを選択します。

30.3 ブートの問題

ブートの問題とは、システムが適切にブートしないような場合を指します(意図したターゲットおよびログイン画面までブートしない場合)。

30.3.1 GRUB 2ブートローダのロードに失敗する

ハードウェアが問題なく機能している場合、ブートローダが壊れてしまってLinuxがコンピュータ上で起動できない可能性があります。このような場合、ブートローダを修復する必要があります。そのためには、30.6.2項 「レスキューシステムの使用」の説明に従ってレスキューシステムを起動し、30.6.2.4項 「ブートローダの変更と再インストール」の手順に従う必要があります。

コンピュータが起動しない理由は他にBIOS関連のものが考えられます。

BIOS設定

ハードディスクの参照情報については、BIOSを確認してください。ハードディスク自体が現在のBIOS設定に見つからない場合、GRUB 2が単に開始されない可能性があります。

BIOSブートオーダー

お使いのシステムのブートオーダーがハードディスクを含んでいるか確認します。ハードディスクオプションが有効になっていない場合、システムは適切にインストールされていますが、ハードディスクへのアクセスが要求される際に起動に失敗する可能性があります。

30.3.2 ログインなし、またはプロンプトが表示される

通常、これはカーネルのアップグレードに失敗した後に発生します。プロセスの最終段階にときどき発生するシステムコンソールのエラーであるということから、「カーネルパニック」として知られます。ソフトウェアのアップグレードに続いてコンピュータを再起動した直後である場合は、実証済みの古いバージョンのLinuxカーネルおよび関連ファイルを使用して再起動します。この操作は、ブートプロセス中にGRUB 2ブートローダ画面で行います。次の手順に従ってください。

  1. コンピュータをリセットボタンで再起動するか、いったんオフにしてからオンにします。

  2. GRUB 2のブート画面が表示されたら、詳細オプション ]項目を選択して、以前のカーネルをメニューから選択します。コンピュータは、旧バージョンのカーネルとその関連ファイルを使用して起動します。

  3. ブートプロセスが完了してから、新たにインストールされたカーネルを削除します。必要に応じて、デフォルトのブート項目を、YaSTブートローダモジュールを使用する古いカーネルに設定します。詳細については、13.3項 「YaSTによるブートローダの設定」を参照してください。ただし、多くの場合、このファイルの更新は必要ありません。このファイルは、通常、ロールバック処理時に自動更新ツールにより変更されるからです。

  4. 再起動します。

これでも問題が解決されない場合は、インストールメディアを使用してコンピュータをブートしてください。コンピュータが起動したら、 「ステップ 3」を続行します。

30.3.3 グラフィカルログインがない

マシンは起動するものの、グラフィカルログインマネージャがブートしない場合は、デフォルトのsystemdターゲットの選択、またはXウィンドウシステムの設定のいずれかに問題があると考えられます。現在のデフォルトのsystemdターゲットを確認するには、sudo systemctl get-defaultコマンドを実行します。返された値がgraphical.target「ない」場合、sudo systemctl isolate graphical.targetコマンドを実行します。グラフィカルログイン画面が起動する場合は、ログインして、YaST › システム › サービスマネージャを起動し、デフォルトのシステムターゲットGraphical Interface (グラフィカルインタフェース)に設定します。今後、システムはグラフィカルログイン画面でブートするようになります。

ブートするかグラフィカルターゲットに切り替わっても、グラフィカルログイン画面が起動しない場合は、ご使用のデスクトップかXウィンドウソフトウェアの設定が間違っているか、破損している可能性があります。/var/log/Xorg.*.logのログファイルで、Xサーバが起動を試みた際にXサーバによって記録された詳細メッセージを調べます。デスクトップの起動に失敗する場合は、journalctlコマンド(詳細は第12章 journalctl:systemdジャーナルのクエリを参照)で問い合わせ可能なシステムジャーナルにエラーメッセージが記録されている場合があります。これらのエラーメッセージがXサーバの設定の問題を示唆している場合は、これを直すようにしてください。それでもグラフィカルシステムが起動しない場合は、グラフィカルデスクトップを再インストールすることを考えてください。

30.3.4 ルートBtrfsパーティションをマウントできない

btrfsルートパーティションが壊れた場合は、次のオプションを試してみてください。

  • -o recoveryオプションを使用してパーティションをマウントする。

  • これが失敗する場合は、ルートパーティション上でbtrfs-zero-logを実行する。

30.4 Loginの問題

ログインの問題とは、お使いのマシンが予期されるようこそ画面またはログインプロンプトまで実際に起動するが、ユーザ名およびパスワードを受け付けない、または受け付けるが、その後適切な動きをしない場合です(グラフィックデスクトップ開始の失敗、エラーの発生、コマンドラインに落ちる、など)。

30.4.1 有効なユーザ名とパスワードを使っても失敗する

この問題は、一般的にシステムがネットワーク認証またはディレクトリサービスを使用するように設定されており、何らかの理由で、設定されたサーバから結果を取得できない場合に発生します。このような場合でも、rootユーザは唯一のローカルユーザとしてこれらのコンピュータにログインできます。次に、コンピュータが一見機能しているように見えるのにログインを正しく処理できない一般的な理由をいくつか挙げます。

  • ネットワークが機能していません。この場合の更なる対処方法については、30.5項 「ネットワークの問題」を参照してください

  • 現在、DNSが機能していません(このためGNOMEが動作せず、システムはセキュアサーバに検証済みの要求を送信できません)。すべてのアクションに対して、コンピュータに極端に長い時間かかる場合は、この問題の可能性があります。このトピックの詳細は、30.5項 「ネットワークの問題」を参照してください。

  • システムがKerberosを使用するように設定されている場合、システムのローカルタイムは、Kerberosサーバのタイムとの間で許容される相違を超えてしまっている可能性があります(通常 300秒)。NTP (network time protocol)が適切に動いていない、またはローカルのNTPサーバが動いていない場合、Kerberos の認証は機能しなくなります。その理由は、この認証はネットワーク間の一般的なクロック同期に依存しているからです。

  • システムの認証設定が間違って設定されています。関連するPAM設定ファイルの中に誤字や命令の順序違いがないか確認します。PAMおよび関連する設定ファイルの構文に関する背景情報の詳細については、Chapter 2, Authentication with PAM, Security Guideを参照してください。

  • ホームパーティションが暗号化されています。このトピックの詳細は、30.4.3項 「暗号化されたホームパーティションへのログインが失敗します」を参照してください。

外部のネットワーク問題を含まない他のすべての問題については、解決方法としてシステムをシングルユーザモードに再起動して、動作モードに再び起動してログインし直す前に、設定を修復します。シングルユーザモードで起動するには、次の手順に従います。

  1. システムを再起動します。ブート画面の表示に続き、プロンプトが表示されます。

  2. <Esc>キーを押して、スプラッシュスクリーンを終了し、GRUB 2テキストベースメニューに移動します。

  3. Bを押して、GRUB 2エディタを起動します。

  4. カーネルパラメータを含む行に次のパラメータを追加します。

    systemd.unit=rescue.target
  5. F10キーを押します。

  6. rootのユーザ名とパスワードを入力します。

  7. 必要な変更をすべて加えます。

  8. コマンドラインに「systemctl isolate graphical.target」と入力して、完全なマルチユーザおよびネットワークモードでブートします。

30.4.2 有効なユーザ名とパスワードが受け付けられない

これは、今のところユーザが経験する問題のうち、最も一般的なものです。その理由は、この問題が起こる原因がたくさんあるからです。ローカルのユーザ管理および認証を使用するか、ネットワーク認証を使用するかによって、異なる原因によりログイン失敗が発生します。

ローカルユーザ管理は、次の原因により失敗する可能性があります。

  • 間違ったパスワードを入力した可能性があります。

  • ユーザのホームディレクトリが、破損または書き込み保護されたデスクトップ設定ファイルを含んでいます。

  • この特定のユーザを認証するのに、X Window Systemに何らかの問題があります。特に、ユーザのホームディレクトリが、現在のLinuxをインストールする以前の他のLinuxディストリビューションによって使用されている場合です。

ローカルログイン失敗の原因を発見するには、次の手順に従います。

  1. 認証方式全体をデバッグする前に、ユーザがパスワードを正しく覚えているか確認します。ユーザが正しいパスワードを覚えていない場合は、YaSTユーザ管理モジュールを使用してそのユーザのパスワードを変更します。Caps Lockキーに注意し、必要に応じてそのロックを解除します。

  2. rootユーザでログインし、ログインプロセスおよびPAMのエラーメッセージがないかどうかjournalctl -eでシステムジャーナルを確認します。

  3. コンソールからログインしてみます(CtrlAltF1キーを使用)。これが成功する場合、PAMには問題はありません。その理由は、そのユーザをそのコンピュータ上で認証可能だからです。XウィンドウシステムまたはGNOMEデスクトップに問題がないか探してみてください。詳細については、30.4.4項 「ログインは成功したがGNOMEデスクトップが失敗する」を参照してください。

  4. ユーザのホームディレクトリが他のLinuxディストリビューションによって使用されている場合、ユーザのホームにあるXauthorityファイルを削除します。CtrlAltF1キーを押してコンソールログインを使用し、rm .Xauthorityをこのユーザとして実行します。これにより、X認証の問題はこのユーザに関してはなくなるはずです。グラフィカルログインを再試行します。

  5. 設定ファイルが壊れていて、デスクトップが開始できなかった場合、30.4.4項 「ログインは成功したがGNOMEデスクトップが失敗する」に進みます。

以下では、特定のユーザのネットワーク認証が、特定のコンピュータ上で失敗するのかの一般的な理由のいくつかを挙げます。

  • 間違ったパスワードを入力した可能性があります。

  • コンピュータのローカル認証ファイルの中に存在し、ネットワーク認証システムからも提供されるユーザ名が競合しています。

  • ホームディレクトリは存在しますが、それが壊れている、または利用不可能です。書き込み保護がされているか、その時点でアクセスできないサーバ上にディレクトリが存在するかのどちらかの可能性があります。

  • 認証システム内で、ユーザがその特定のサーバにログインする権限がありません。

  • コンピュータのホスト名が何らかの理由で変更されていて、そのホストにユーザがログインするパーミッションがありません。

  • コンピュータが、認証サーバまたはそのユーザの情報を含んでいるディレクトリサーバに接続できません。

  • この特定のユーザを認証するのに、X Window Systemに何らかの問題があります。特に、ユーザのホームが、現在のLinuxをインストールする以前に他のLinuxディストリビューションによって使用されている場合です。

ネットワーク認証におけるログイン失敗の原因を突き止めるには、次の手順に従います。

  1. 認証方式全体をデバッグする前に、ユーザがパスワードを正しく覚えているか確認します。

  2. 認証用にマシンが利用するディレクトリサーバを判別し、それがきちんと動作しており、他のマシンと適切に通信していることを確認します。

  3. ユーザのユーザ名およびパスワードが他のマシン上でも使用できるかを判別し、そのユーザの認証データが存在し、適切に配布されていることを確認します。

  4. 別のユーザが、問題のある動きをしているマシンにログインできるかどうかを確認します。別のユーザで問題なくログインできる場合、またはrootでログインできる場合、ログイン後、journalctl -e>ファイルでシステムジャーナルを調べます。ログインの試行に対応するタイムスタンプを見つけ出し、PAMによって、エラーメッセージが生成されていないか判別します。

  5. コンソールからログインしてみます(CtrlAltF1キーを使用)。これが成功する場合、PAMやユーザのホームがあるディレクトリサーバには問題はありません。その理由は、そのユーザをそのコンピュータ上で認証可能だからです。XウィンドウシステムまたはGNOMEデスクトップに問題がないか探してみてください。詳細については、30.4.4項 「ログインは成功したがGNOMEデスクトップが失敗する」を参照してください。

  6. ユーザのホームディレクトリが他のLinuxディストリビューションによって使用されている場合、ユーザのホームにあるXauthorityファイルを削除します。CtrlAltF1キーを押してコンソールログインを使用し、rm .Xauthorityをこのユーザとして実行します。これにより、X認証の問題はこのユーザに関してはなくなるはずです。グラフィカルログインを再試行します。

  7. 設定ファイルが壊れていて、デスクトップが開始できなかった場合、30.4.4項 「ログインは成功したがGNOMEデスクトップが失敗する」に進みます。

30.4.3 暗号化されたホームパーティションへのログインが失敗します

ラップトップでは暗号化されたホームパーティションの使用が推奨されます。ラップトップにログインできない場合、通常その理由は簡単です。パーティションのロックを解除できなかったためです。

ブート時に、暗号化パーティションのロックを解除するためにパスフレーズを入力する必要があります。パスフレーズを入力しない場合、パーティションがロックしたまま起動プロセスが続行します。

暗号化されたパーティションのロックを解除するには、次の手順に従います。

  1. CtrlAltF1でテキストコンソールに切り替えます。

  2. rootになります。

  3. 次のコマンドにより、ロックを解除するプロセスを再開します。

    systemctl restart home.mount
  4. 暗号化されたパーティションのロックを解除するためのパスフレーズを入力します。

  5. テキストコンソールを終了し、AltF7でログイン画面に切り替えます。

  6. 通常通りログインします。

30.4.4 ログインは成功したがGNOMEデスクトップが失敗する

この場合に、GNOME環境設定ファイルが破損している可能性があります。兆候としては、キーボードがうまく動かない、画面のジオメトリが歪んでいる、または画面が空の灰色領域として表示されるなどがあります。この問題の重要な特徴は、他のユーザがログインする場合は、コンピュータは普通に機能するという点です。このような場合、問題のユーザのGNOME設定ディレクトリを単に新しい場所に移すことで、が新しいデスクトップを初期化するので、比較的簡単にこの問題を解決できます。ユーザはGNOMEの再設定を強いられますが、データが失われません。

  1. CtrlAltF1を押して、テキストコンソールを切り替えます。

  2. ユーザ名でログインします。

  3. ユーザのGNOME設定ディレクトリを、一時的な場所に移動します。

    mv .gconf  .gconf-ORIG-RECOVER
    mv .gnome2 .gnome2-ORIG-RECOVER
  4. ログアウトします。

  5. もう一度ログインします。ただし、アプリケーションは何も実行しないでください。

  6. 次のようにして、~/.gconf-ORIG-RECOVER/apps/ディレクトリを、新しい~/.gconfディレクトリにコピーすることで個々のアプリケーション設定データ(Evolutionの電子メールクライアントデータを含む)を回復します。

    cp -a .gconf-ORIG-RECOVER/apps .gconf/

    これによってログインの問題が生じる場合は、重要なアプリケーションデータのみの回復を試み、アプリケーションの残りを再設定します。

30.5 ネットワークの問題

システム上の問題は、最初はそうは見えないのですが、ネットワークに関する問題であることが多いです。例えば、システムにユーザがログインできない理由は、ある種のネットワークの問題であったりします。ここでは、ネットワークの問題に直面した場合の簡単なチェックリストを紹介します。

手順 30.6 ネットワークの問題を識別する方法

コンピュータとネットワークの接続の確認をする場合、以下の手順に従ってください。

  1. Ethernet接続を使用する場合、はじめにハードウェアを確認します。ネットワークケーブルがコンピュータおよびルータ(またはハブなど)にしっかり差し込まれていることを確認してください。Ethernetコネクタの横に制御ランプがある場合、通常はその両方がアクティブになります。

    接続に失敗する場合、お使いのネットワークケーブルが他のコンピュータでは使用可能かどうか確認します。使用可能な場合、ネットワークカードに問題の原因があります。ネットワークのセットアップにハブやスイッチを使用している場合は、それらが誤っている可能性もあります。

  2. 無線接続を使用7る場合、他のコンピュータからワイヤレスリンクが確立できるかどうか確認します。そうでない場合は、無線ネットワークの管理者にお問い合わせください。

  3. 基本的なネットワーク接続を確認し終わったら、どのサービスが応答していないかを探します。お使いの構成上のすべてのネットワークサーバのアドレス情報を集めます。適切なYaSTモジュール内で探すか、システム管理者に問い合わせてください。以下のリストには、ある構成内に含まれる一般的なネットワークサーバを、それらの故障の兆候とともに表わしています。

    DNS (ネームサービス)

    壊れた、あるいは誤作動しているネームサービスは、ネットワークの機能にさまざまな形で影響を与えます。ローカルマシンの認証をネットワークサーバで行っている場合、名前解決に問題があるためにそれらのサーバが見つからないと、ユーザはログインすることもできません。壊れたネームサーバが管理するネットワーク内のマシンは、お互いを「認識」できないため通信できません。

    NTP (タイムサービス)

    誤作動している、または完全に壊れたNTPサービスは、Kerberosの認証およびXサーバの機能に影響を与えます。

    NFS (ファイルサービス)

    NFSによってマウントされたディレクトリ内のデータを必要とするアプリケーションがあった場合、このNFSサービスがダウンしてるか、間違って設定されていると、そのアプリケーションは起動できないか、または正しく機能しません。最悪のケースとしては、.gconfサブディレクトリを含んでいる、あるユーザのホームディレクトリが、NFSサーバの故障のために検出されなかった場合、そのユーザ個人のデスクトップ設定が起動しません。

    Samba (ファイルサービス)

    アプリケーションが、故障したSambaサーバ上のディレクトリに保存されたデータを必要とする場合、アプリケーションは起動できないか、または正しく機能しません。

    NIS (ユーザ管理)

    SUSE Linux Enterprise Desktopシステムが故障したNISサーバを使用してユーザデータを提供している場合、ユーザはこのマシンにログインできません。

    LDAP (ユーザ管理)

    SUSE Linux Enterprise Desktopシステムが故障したLDAPサーバを使用してユーザデータを提供している場合、ユーザはこのマシンにログインできません。

    Kerberos (認証)

    認証が機能せず、すべてのコンピュータへのログインが失敗します。

    CUPS (ネットワーク印刷)

    ユーザが印刷できません。

  4. ネットワークサーバが起動しているか、ネットワーク上で接続を確立できる設定になっているか、を確認します。

    重要
    重要: 制限

    次で説明するデバッグの手順は、内部ルーティングを必要としない、簡単なネットワークサーバ/クライアント設定にのみ適用されます。サーバとクライアントの両方が、追加でルーティングする必要のない同じサブネットのメンバーであることが前提です。

    1. ping IP addressまたはhostname (host nameはサーバのホスト名で置き換えます)を使って、サーバが稼働中で、ネットワークに応答しているかどうかを確認します。このコマンドが成功する場合は、目的のホストは起動しており、ネットワークのネームサービスは正しく設定されていることがわかります。

      pingが「destination host unreachable」というメッセージで失敗する場合、お使いのシステムまたは宛先のサーバが正しく設定されていないか、ダウンしています。その場合、他のマシンからping IP addressまたはyour_hostnameを実行して、お使いのシステムに到達可能か確認してください。他のマシンからお使いのマシンへ到達可能な場合、宛先のサーバがまったく動作していないか、正しく設定されていません。

      pingが「unknown host」というメッセージで失敗する場合、ネームサービスが正しく設定されていないか、使用したホスト名が正しくありません。この問題を詳細に調べるには、ステップ 4.bを参照してください。それでもpingが失敗する場合は、ネットワークカードが正しく設定されていないか、ネットワークのハードウェアに障害があります。

    2. host hostnameを使用して、接続しようとしているサーバのホスト名が適切なIPアドレスに変換され、またその逆も問題ないか確認します。このコマンドによって、このホストのIPアドレスが返される場合、ネームサービスは起動中です。このhostコマンドが失敗する場合、お使いのホスト上の名前とアドレス解決に関係するすべてのネットワーク設定ファイルを確認します。

      /etc/resolv.conf

      このファイルは、ネームサーバおよび現在使用中のドメインを管理するために使用されます。このファイルは手動で変更するか、YaSTまたはDHCPによる自動調整が可能ですが、自動調整のほうをお勧めします。ただし、このファイルが以下のような構造およびネットワークアドレスを含んでいること、さらにドメイン名が正しいことを確認してください。

      search fully_qualified_domain_name
      nameserver ipaddress_of_nameserver

      このファイルには1つ以上のネームサーバのアドレスを含むことができますが、その中の少なくとも1つは、お使いのホストの名前解決が正しくできる必要があります。必要に応じて、YaSTネットワーク設定モジュール([ホスト名/DNS]タブ)を使用してこのファイルを修正します。

      ネットワーク接続がDHCP経由の場合、YaSTのDNSおよびHostnameモジュール内で、DHCP経由でのホスト名の変更およびDHCP経由でのネームサービスおよび検索リストの更新を選択し、DHCPを有効化してホスト名およびネームサービス情報を変更します。

      /etc/nsswitch.conf

      このファイルは、Linuxがネームサービス情報を探す場所を示します。このようになります。

       ...
      hosts: files dns
      networks: files dns
      ...

      dnsエントリは必須です。これにより、Linuxは外部のネームサーバを使用するようになります。通常、これらのエントリはYaSTにより自動的に管理されますが、慎重にチェックする必要があります。

      ホスト上で、すべての関連エントリが正しい場合は、システム管理者に依頼して、正しいゾーン情報に関するDNSサーバの設定を確認してもらいます。お使いのホストのDNS設定およびDNSサーバが正しいことが確認できた場合、ネットワークおよびネットワークデバイス設定の確認に進みます。

    3. お使いのシステムがネットワークサーバに接続できない状況で、ネームサービスの問題を障害原因の可能性リストから除外した場合は、ネットワークカードの設定を確認します。

      ip addr show network_deviceコマンドを使用して、このデバイスが適切に設定されているか確認します。inet addressがネットマスク(/mask)を使用して正しく設定されていることを確認します。IPアドレス内に間違いがある場合、またはネットワークマスク内で不明のビットがある場合は、ネットワーク設定が使用不可能になります。必要であれば、サーバ上でもこの確認をしてください。

    4. ネームサービスおよびネットワークサービスが正しく設定され起動している場合でも、外部のネットワーク接続がタイムアウトするのに時間がかかったり、完全に失敗する場合は、traceroute fully_qualified_domain_name (rootユーザで実行)コマンドを使用して、リクエストがネットワーク上でどのルートを使用するか追跡します。このコマンドは、お使いのコンピュータのリクエストが宛先に到達するまでに経由するゲートウェイ(ホップ)をリストします。各ホップの応答時間およびこのホップにそもそも到達可能か否かをリストします。tracerouteおよびpingコマンドを組み合わせて原因を追究し、管理者に知らせてください。

ネットワーク障害の原因を突き止めたら、自身でそれを解決するか(自分のコンピュータ上に問題がある場合)、お使いのネットワークのシステム管理者に原因について報告し、サービスを再設定するか、必要なシステムを修理してもらってください。

30.5.1 NetworkManagerの問題

ネットワーク接続に問題がある場合は、手順30.6「ネットワークの問題を識別する方法」の説明に従って原因を絞り込んでください。NetworkManagerが原因と考えられる場合は、以降の説明に従ってNetworkManager障害の理由を調べるために役立つログを取得してください。

  1. シェルを開いて、rootとしてログインします。

  2. NetworkManagerを再起動します。

    systemctl restart Network.Manager.service
     
  3. 一般ユーザとしてhttp://www.opensuse.orgなどのWebページを開いて、正常に接続できているかどうかを確認します。

  4. /var/log/NetworkManagerにある、NetworkManagerに関する情報を収集します。

NetworkManagerについての詳細は、第22章 NetworkManagerの使用を参照してください。

30.6 データの問題

データの問題とは、コンピュータが正常に起動するかしないかに関係なく、システム上でデータが壊れており、システムの修復が必要な場合を言います。このような状況では、システムに障害が発生する前の状態にシステムを復元するために、重要なデータをバックアップする必要があります。SUSE Linux Enterprise Desktopには、システムのバックアップ/復元用、および壊れたシステムを外部から復元するのに使用可能なレスキューシステム用に、専用のYaSTモジュールが用意されています。

30.6.1 パーティションイメージの管理

パーティション全体、さらにはハードディスク全体からバックアップを実行することが必要になる場合があります。Linuxには、ディスクの正確なコピーを作成できるddツールが付属しています。gzipと組み合わせることで、若干の領域の節約になります。

手順 30.7 ハードディスクのバックアップと復元
  1. rootユーザとしてシェルを起動します。

  2. ソースデバイスを選択します。これは、/dev/sdaなどが一般的です(SOURCEというラベルが付きます)。

  3. イメージを保存する場所を決めます(BACKUP_PATHというラベルが付きます)。これは、ソースデバイスとは異なる場所にする必要があります。つまり、/dev/sdaからバックアップを作成する場合、イメージファイルは/dev/sdaに保存しないでください。

  4. コマンドを実行して圧縮イメージファイルを作成します。

    dd if=/dev/SOURCE | gzip > /BACKUP_PATH/image.gz 
  5. 次のコマンドによりハードディスクを復元します。

    gzip -dc /BACKUP_PATH/image.gz | dd of=/dev/SOURCE

バックアップするパーティションのみが必要な場合は、SOURCEプレースホルダを対応するパーティションに置き換えます。この場合、イメージファイルを同じハードディスクにおくことができます。ただし、パーティションは異なります。

30.6.2 レスキューシステムの使用

システムが起動し正常に稼動するのに失敗する理由はいくつか考えられます。最も一般的な理由としては、システムクラッシュによるファイルシステムの破損や、ブートローダ設定の破損があります。

このような状況の解決を支援するため、SUSE Linux Enterprise Desktopには、ブート可能なレスキューシステムが含まれています。レスキューシステムは、RAMディスクにロードして、ルートファイルシステムとしてマウントできる小さなLinuxシステムで、これを利用して外部からLinuxパーティションにアクセスすることができます。レスキューシステムを使用して、システムの重要な部分を復元したり、適切な変更を行ったりできます。

  • 任意の種類の設定ファイルを操作できます。

  • ファイルシステムの欠陥をチェックして、自動修復プロセスを開始することができます。

  • インストールされているシステムを、他のルート環境内からアクセスすることができます。

  • ブートローダの設定を確認、変更、および再インストールできます。

  • 正常にインストールされていないデバイスドライバや使用不能なカーネルを修復できます。

  • partedコマンドを使って、パーティションサイズを変更できます。このツールの詳細については、GNU PartedのWebサイト(http://www.gnu.org/software/parted/parted.html)を参照してください。

レスキューシステムは、さまざまなソースや場所からロードすることができます。一番簡単な方法は、オリジナルのインストールメディアからレスキューシステムをブートすることです。

  1. インストールメディアをDVDドライブに挿入します。

  2. システムを再起動します。

  3. ブート画面で、F4を押し、DVD-ROMを選択します。次に、メインメニューからレスキューシステムを選択します。

  4. Rescue:プロンプトに「root」と入力します。パスワードは必要ありません。

ハードウェア設定にDVDドライブが含まれていない場合は、ネットワークソースからレスキューシステムをブートできます。次の例は、リモートブートの場合のシナリオです。DVDなど、他のブートメディアを使用する場合は、infoファイルを適宜変更し、通常のインストールと同様にブートします。

  1. PXEブートセットアップの設定を入力し、install=protocol://instsource行とrescue=1行を追加します。修復システムを起動する必要がある場合は、代わりにrepair=1を使用します。通常のインストールと同様に、protocolはサポートする任意のネットワークプロトコル(NFS、HTTP、FTPなど)を表しています。また、instsourceは、ネットワークインストールソースへのパスを表します。

  2. Section “Wake on LAN”, Chapter 11, Remote Installation, Deployment Guideに説明したように、Wake on LANを使用してシステムをブートします。

  3. Rescue:プロンプトに「root」と入力します。パスワードは必要ありません。

レスキューシステムが起動したら、AltF1AltF6を使って、仮想コンソールを使用することができます。

シェルおよび他の多くの便利なユーティリティ(マウントプログラムなど)は、/binディレクトリにあります。/sbinディレクトリには、ファイルシステムを確認して修復するための重要なファイルおよびネットワークユーティリティが入っています。このディレクトリには、最も重要なバイナリも入っています。たとえばシステム保守用にはfdiskmkfsmkswapmount、およびshutdownがあり、ネットワーク保守用にはipおよびssがあります。/usr/binディレクトリには、vi editor、find、less、およびsshがあります。

システムメッセージを表示するには、dmesgコマンドを使用するか、またはjournalctlを使用してシステムログを参照してください。

30.6.2.1 環境設定ファイルの確認と修正

レスキューシステムを使った環境設定情報の修正例として、環境設定ファイルが壊れたためシステムが正常にブートできなくなった場合を考えてみましょう。このような場合は、レスキューシステムを使って設定ファイルを修復します。

環境設定ファイルを修正するには、以下の手順に従ってください。

  1. 前述のいずれかの方法を使って、レスキューシステムを起動します。

  2. /dev/sda6下にあるルートファイルシステムをレスキューシステムにマウントするには、以下のコマンドを使用します。

    mount /dev/sda6 /mnt

    システム中のすべてのディレクトリが、/mnt下に配置されます。

  3. マウントしたルートファイルシステムのディレクトリに移動します。

    cd /mnt
  4. 問題の発生している設定ファイルを、viエディタで開きます。次に、設定内容を修正して、ファイルを保存します。

  5. レスキューシステムから、ルートファイルシステムをアンマウントします。

    umount /mnt
  6. コンピュータを再起動します。

30.6.2.2 ファイルシステムの修復と確認

一般的に、稼動システムではファイルシステムを修復できません。重大な問題が見つかった場合、ルートファイルシステムをブートできなくなることさえあります。この場合、システムブートはカーネルパニックで終了します。この場合、外部からシステムを修復するしか方法はありません。レスキューシステムには、btrfs、ext2ext3ext4reiserfsxfsdosfs、およびvfatの各ファイルシステムを確認し、修復するユーティリティが用意されています。コマンドfsck.FILESYSTEMを探します。たとえば、btrfsのファイルシステムを確認する必要がある場合、fsck.btrfsを使用します。

30.6.2.3 インストール済みシステムへのアクセス

レスキューシステムからインストール済みのシステムにアクセスする必要がある場合は、それをchange root(ルート変更)環境で行う必要があります。これは、たとえば、ブートローダの設定を変更したり、ハードウェア設定ユーティリティを実行するために行います。

インストール済みシステムに基づいたchange root(ルート変更)環境を設定するには、以下の手順に従ってください。

  1. まず、インストールしたシステムからのルートパーティションとデバイスファイルシステムをマウントします(デバイス名を現在の設定に変更します)。

    mount /dev/sda6 /mnt
    mount --bind /dev /mnt/dev
  2. 新しい環境にchange root(ルート変更)します。

    chroot /mnt
  3. /procおよび/sysをマウントします。

    mount /proc
    mount /sys
  4. 最後に、インストール済みシステムから、残りのパーティションをマウントします。

    mount -a
  5. これで、インストール済みシステムにアクセスできるようになります。システムを再起動する前に、umount -aを使ってパーティションをアンマウントし、exitコマンドを実行してchange root(ルート変更)環境を終了してください。

警告
警告: 制限

インストール済みシステムのファイルやアプリケーションにフルアクセスできますが、いくつかの制限事項もあります。実行中のカーネルは、レスキューシステムでブートされたカーネルであり、ルート変更環境でブートされたカーネルではありません。このカーネルは、必要最低限のハードウェアしかサポートしておらず、カーネルのバージョンが完全に一致しない限り、インストール済みシステムからカーネルモジュールを追加することはできません。常に、現在実行中の(レスキュー)カーネルのバージョンをuname -rでチェックし、次に、一致するサブディレクトリがchange root環境の /lib/modulesディレクトリに存在するかどうか調べてください。存在する場合は、インストールされたモジュールを使用できます。そうでない場合は、フラッシュディスクなど、他のメディアにある正しいバージョンを提供する必要があります。多くの場合、レスキューカーネルのバージョンは、インストールされているバージョンと異なります。その場合は、たとえば、サウンドカードなどに簡単にアクセスすることはできません。また、GUIも利用できません。

また、AltF1からAltF6を使ってコンソールを切り替えると、change root(ルート変更)環境は終了することに注意してください。

30.6.2.4 ブートローダの変更と再インストール

場合によっては、ブートローダが壊れてしまい、システムをブートできなくなることもあります。たとえば、ブートローダが正常に機能しないと、起動ルーチンは物理ドライブとそのLinuxファイルシステム中の場所とを関連付けられず、正常な処理を行うことができません。

ブートローダの設定を確認し、ブートローダを再インストールするには、次の手順に従います。

  1. 30.6.2.3項 「インストール済みシステムへのアクセス」の説明に従って、インストール済みシステムにアクセスするために必要な作業を行います。

  2. 次のファイルが第13章 ブートローダGRUB 2に示されているGRUB 2の設定ルールに従って正しく設定されているかどうかチェックし、必要に応じて修正します。

    • /etc/default/grub

    • /boot/grub2/device.map (オプションファイルで、手動で作成した場合にのみ存在します。)

    • /boot/grub2/grub.cfg (このファイルが生成されます。編集しないでください。)

    • /etc/sysconfig/bootloader

  3. 次のコマンドシーケンスを使って、ブートローダを再インストールします。

    grub2-mkconfig -o /boot/grub2/grub.cfg
  4. パーティションをアンマウントして、「change root」 (ルート変更)環境からログアウトします。次に、システムを再起動します。

    umount -a
    exit
    reboot

30.6.2.5 カーネルインストールの修復

カーネルアップデートによって、システムの操作に影響する可能性のある新しいバグが導入される場合があります。たとえば、一部のシステムハードウェアのドライバに障害が発生し、そのハードウェアのアクセスや使用ができなくなることがあります。その場合は、機能した最後のカーネルに戻すか(システムで使用可能な場合)、インストールメディアから元のカーネルをインストールします。

ヒント
ヒント: 更新後も最後のカーネルを保持する方法

正常でないカーネルアップデート後にブートできなくなることを防ぐには、カーネルの複数バージョン機能を使用して、更新後にどのカーネルを保持するかlibzyppに指示します。

たとえば、最後の2つのカーネルと現在実行中のカーネルを常に保持するには、次のコードを、

multiversion.kernels = latest,latest-1,running

/etc/zypp/zypp.confファイルに追加します。詳細については、Chapter 8, Installing Multiple Kernel Versions, Deployment Guideを参照してください。

また、SUSE Linux Enterprise Desktopでサポートされていないデバイスのドライバが破損し、その再インストールまたはアップデートが必要になる場合があります。たとえば、ハードウェアベンダが、ハードウェアRAIDコントローラなどの特定のデバイスを使用している場合は、オペレーティングシステムによって認識されるバイナリドライバが必要です。ベンダは、通常、要求されたドライバの修正または更新バージョンを含むドライバアップデートディスク(DUD)をリリースします。

両方のケースで、レスキューモードでインストールされているシステムにアクセスし、カーネル関係の問題を修正する必要があります。さもないと、システムが正しくブートしないことがあります。

  1. SUSE Linux Enterprise Desktopインストールメディアからのブート

  2. 正常でないカーネルアップデート後に修復を行っている場合、次のステップはスキップしてください。DUD(ドライバアップデートディスク)を使用する必要がある場合は、F6を押して、ブートメニューの表示後にドライバアップデートをロードし、 ドライバアップデートへのパスまたはURLを選択して、はいをクリックして確認します。

  3. ブートメニューからレスキューシステムを選択し、<Enter>を押します。DUDの使用を選択した場合は、ドライバアップデートの保存先を指定するように要求されます。

  4. Rescue:プロンプトに「root」と入力します。パスワードは必要ありません。

  5. ターゲットシステムを手動でマウントし、新しい環境にchange root(ルート変更)します。詳細については、30.6.2.3項 「インストール済みシステムへのアクセス」を参照してください。

  6. DUDを使用する場合は、障害のあるデバイスドライバパッケージのインストール/再インストール/アップデートを行います。インストールされたカーネルバージョンがインストールするドライバのバージョンと正確に一致することを常に確認してください。

    障害のあるカーネルアップデートのインストールを修復する場合は、次の手順で、インストールメディアから元のカーネルをインストールできます。

    1. DVDデバイスをhwinfo --cdromで識別し、識別したデバイスをmount /dev/sr0 /mntでマウントします。

    2. DVD上のカーネルファイルが保存されているディレクトリにナビゲートします(たとえば、 cd /mnt/suse/x86_64/)。

    3. 必要なパッケージkernel-*kernel-*-base、およびkernel-*-extraのカスタマイズしたバージョンを、rpm -iコマンドでインストールします。

  7. 設定ファイルを更新し、必要に応じてブートローダを再初期化します。詳細については、30.6.2.4項 「ブートローダの変更と再インストール」を参照してください。

  8. システムドライブからブート可能なメディアをすべて除去し、再起動します。

このページを印刷