
Ubuntu日本語フォーラム

ログインしていません。
日本語フォーラムの皆様
いつも大変の世話になっております。
・作業内容
ノートPC(HP NC4010 2004年モデル?)の80GBのHDDに、Ubuntu 10.10をインストールしました。
(ノートPCではCD-ROMからのブートが出来ない為)
インストールは無事に終わりました(再起動の要求が出ましたので、外付けHDDを外し、インストールCD
を取り出し”再起動”ボタンをクリックしました。
BIOSでは、HDDをちゃんと認識しているんですが、BIOSの起動が終了してGRUBに処理が移行した?後、
通常であれば、内蔵HDDのUbuntu 11.04が起動する筈ですが、今回はいきなりDOS窓に”GRUB"のプロン
プト”grub rescue>"が表示されました。
”help"と入力してもエラーになりました。
外付けHDDに、Ubuntu 10.10をインストールした事により、PCの内蔵HDDの”GRUB"に何らかの影響を
与えてしまい、Ubuntu 11.04がインストールされたHDDを見つけられない状態の様に思われます。
当方、GRUBについての知識が無くて、現在対応が出来ず、お手上げ状態です。
最悪は、Ubuntu 11.04を再インストールするしかないのですが、多くのアプリケーションをインストール
して熟成をしてあるので、再インストールはどうしても避けたいです。
・希望
何とかPC内蔵のHDDからUbuntu 11.04を起動出来る様にしたいです。
"grub rescue>"のプロンプトが表示されたら、どの様なコマンドを入力したらいいでしょうか?
何卒、お助けを願いたいしたいです。
・考察
UbuntuのインストールCDでUbuntuを起動して、外付けのHDDにUbuntuをインストールした場合、PCの
内蔵HDDの"gurub"(OSのブートを管理している?)の内容を書き替えたりするのでしょうか?
上記の件、お分かりになる方、是非是非、解決策を教えて頂ける様お願い致します。
勝手な言い分ですが、Ubuntu PCは、Windowsから乗り換えたPCですので、何とかこの難局を意地でも解決
したいと思っております(業務用PCは、Ubutu/Macに全部リプレースする計画をしてます、脱Windows、ア
ンチMicroSoft)。
宜しく御願い致します。
Best Regards.
オフライン
こんばんわ、日本語フォーラムの皆様
下記のURLのサイトを参考にして試してみました。
http://blog.livedoor.jp/braahmana/archives/1590075.html
GrubがインストールされているHDDを探し出す事が出来ました。
フォルダの中身も確認で着ました。
("cd"コマンドは、コマンド自体が無いということで、実行できませんでした。)
"grub rescue> ls"コマンドを使ってファイルの存在も確認出来ました。
"grub rescue> ls (hd0,msdos)/"
サイトに記述された手順に従って、
"grub rescue> set prefix=(hd0,x)/grub" を実行、エラーが表示が無いの
でOKとしました。
更に、
"grub rescue> insmod (hd0,x)/grub/normal.mod" を実行すると、
"error: file not found." と表示されました。
これは、"normal,mod"ファイルも破損しているということでしょうか?
このファイルが破損していると、もう復旧することは出来ないのでしょうか?
"grub"の再インストールしてみるとのことですが、当方どうやっていいか
未だ分かりません。
お分かりになる方、grubtu遣いの方、何か解決策を教えて頂けないでしょうか?
宜しくお願いいたします。
Best Regard.
オフライン
日本語フォーラムの皆さん、こんばんわ。
お世話になっております。
前の投稿で、
"grub rescue> set prefix=(hd0,x)/grub" を実行、エラーが表示が無いの
でOKとしました。
更に、
"grub rescue> insmod (hd0,x)/grub/normal.mod" を実行すると、
"error: file not found." と表示されました。
と入力した書きましたが、
正しい入力は、
"grub rescue> insmod (hd0,x)/grub/normal.mod"
の様ですね。
で、以下のコマンドを実行すると、
"ls (hd0,msdos1)/boot/grub/normal.mod"
"error: symbol not found: 'grub_env_export'."
オフライン
日本語フォーラムの皆さん、こんばんわ
入力中で誤送信してしまいました。
<続き>
"ls (hd0,msdos1)/boot/grub/normal.mod" を実行すると
"error: symbol not found: 'grub_env_export'." とエラー表示します。
解決の参考になりますでしょうか?
スキルのある方のアドバイスを頂けると幸です。
宜しくお願いいたします。
Best Regards.
オフライン
少し整理したいのですが良いでしょうか。
・作業内容
ノートPC(HP NC4010 2004年モデル?)の80GBのHDDに、Ubuntu 10.10をインストールしました。
(ノートPCではCD-ROMからのブートが出来ない為)
インストールは無事に終わりました(再起動の要求が出ましたので、外付けHDDを外し、インストールCD
を取り出し”再起動”ボタンをクリックしました。
この辺りが良く読み取れないのですけど内蔵HDDにインストールされたのでしょうか?
外付けHDDの登場には意味が有るのでしょうか?
CDからの起動が出来ないようですがインストールCDを「取り出す」とはどの様に使用された後の動作でしょうか?
現在の状況と原因は大雑把に把握できますが、その他の情報が曖昧なので最初のアプローチへ進めません。
もしCDは無理でもUSBメモリからインストールディスクを起動できるよ。とか、どちらかのUbuntuは起動できるよ。というのでしたら話は早いのですが、、、
その場合は
$ sudo fdisk -l
の結果と、結果からどのパーティションを何に使用しているかのコメントが有れば当面は十分です。
オフライン
hir0 さん
ご返信ありがとうございます。
少し言葉足らずだった様ですね。
HPのラップトップPCのNC4010の内蔵HDDに、Ubuntuをインストールしたいのですが、
このラップトップPCは、CD/DVDブート出来ないので、他のPCに内蔵HDDをUSBで接続
して、UbuntuのLive CDを使ってUSB接続したHDDに、Ubuntuをインストールした次第
です。
インストールが完了後、USB接続していたHDDを外して、ラップトップPCに取り付けたところ、
ラップトップPCの方は無事にUbuntuを起動することが出来ました。
これで目的は達成して、後は必要なアプリケーションをインストールして熟成(エージング)
している状態です。
UbuntuのLive CDの起動に使ったPC(Ubuntu 11.04)を再起動したら、MBRが壊れて
いるらしく?、grubが起動HDDを見つけられない?(本当は、ちゃんとフォルダとファイルも
存在している)状態の様で、"grub rescue > が表示されたのだと想像してます。
UbuntuのLive CDを使って外付けのHDDにUbuntuをインストールしただけなのに、イン
ストールに使ったPCのMBRが書き換えられる(ファイルが壊れる)等の障害が起こるもの
でしょうか?
UbuntuのLive CDは、ホストPCのHDDに何も影響を与えないと思っていたのですが、
どうも何らかの影響を起こしているようですね。
grubについては、何のスキルも無いので、皆さんのアドバイスを頂きたいのです。
何か解決策をご存知でしたら、ご教授をお願い致します。
宜しくお願いいたします。
Best Regards.
オフライン
えーと、、、ごめんなさい。
まだ良くわからないです。
2つのUbunntuが存在するのですよね?
内蔵HDDに2つのUbuntuで良いのでしょうか?
Windowsとか他のOSは無いとの認識でよいのでしょうか?
以前のUbuntuは通常起動していていたのでしょうか?
UbuntuのLive CDの起動に使ったPC(Ubuntu 11.04)を再起動したら、MBRが壊れて
いるらしく?、grubが起動HDDを見つけられない?(本当は、ちゃんとフォルダとファイルも
存在している)状態の様で、"grub rescue > が表示されたのだと想像してます。
UbuntuのLive CDを使って外付けのHDDにUbuntuをインストールしただけなのに、イン
ストールに使ったPCのMBRが書き換えられる(ファイルが壊れる)等の障害が起こるもの
でしょうか?
この部分ですが
ここ↓↓↓
UbuntuのLive CDを使って外付けのHDDにUbuntuをインストールしただけなのに、イン
ストールに使ったPCのMBRが書き換えられる(ファイルが壊れる)等の障害が起こるもの
でしょうか?
指定しない限りブートローダはBIOSが認識する一番最初のHDDにインストールされます。
なので使用したPCの内蔵HDDのMBRにインストールされますので「障害」では無くてデフォルトの挙動になります。
取り合えず解らない部分は、インストールに使ったPCが問題なのかHDDを戻したPCが問題なのか、構成、状況共に良く読み取れないのです。
オフライン
あれかな?
11.04がインストールされているPCに外付けHDDを接続して10.10をインストール。
インストール完了後に外付けHDDを外して再起動したら
grub rescue>
と表示されて11.04が起動しないってパターンなのかな?
それでもって別PCの10.10も起動しないと、、、で良いのでしたら11.04のPCではライブCDが起動できるのですよね。
取り合えず通常なら外付けHDDを接続して起動すると「grub rescue>」からは離脱でき起動選択画面が立ち上がるはずです。
如何せん状況を読めていないのが痛いですが、10.10 を起動して
$ df -h
/ がマウントされているデバイスファイル名 + パーティションナンバーを確認して下さい。
必用なのはデバイスファイル名です。
$ sudo grub-install /dev/sd?
?の部分は調べたデバイスファイル名を(パーティション番号は不要)
これで外付けHDDのMBRにブートローダがインストールされます。
外付けHDDを付けたまま再起動して11.04を起動します。
同じように
$ df -h
の結果を使って
$ sudo grub-install ????
を行ってください。
その後
$ sudo update-grub
を実行してください。
冒頭の読みと違っていたらアプローチが変わってきますので実行しないで下さい。
オフライン
hir0 による投稿:
少し整理したいのですが良いでしょうか。
・作業内容
ノートPC(HP NC4010 2004年モデル?)の80GBのHDDに、Ubuntu 10.10をインストールしました。
(ノートPCではCD-ROMからのブートが出来ない為)
インストールは無事に終わりました(再起動の要求が出ましたので、外付けHDDを外し、インストールCD
を取り出し”再起動”ボタンをクリックしました。> この辺りが良く読み取れないのですけど内蔵HDDにインストールされたのでしょうか?
> 外付けHDDの登場には意味が有るのでしょうか?
> CDからの起動が出来ないようですがインストールCDを「取り出す」とはどの様に使用された後の動作でしょうか?
HPのラップトップPCの内蔵HDDを取り出して、Ubuntu 11.04のインストールしているPCにUSBで接続
しました。
内蔵HDDを外付けでHDDとして、別のUbuntuPCに接続して、そのUSBで接続したHDDにUbuntuをインストール
しましました。
外付けHDDにインストールした後は、ラップトップPCに組み込んで使ってます。
で、問題は、外付けHDDにUbuntuをインストールした別のPCのOSが起動出来なくなってしまいました。
"grub sescue>"のプロンプトからgrubをインストールする方法を知りたいのです。
この説明でご理解出来ますでしょうか?
宜しく御願い致します。
Best Regards,
現在の状況と原因は大雑把に把握できますが、その他の情報が曖昧なので最初のアプローチへ進めません。
もしCDは無理でもUSBメモリからインストールディスクを起動できるよ。とか、どちらかのUbuntuは起動できるよ。というのでしたら話は早いのですが、、、
その場合は
$ sudo fdisk -l
の結果と、結果からどのパーティションを何に使用しているかのコメントが有れば当面は十分です。
オフライン
hiro0さま
> $ sudo fdisk -l
>
> の結果と、結果からどのパーティションを何に使用しているかのコメントが有れば当面は十分です。
エラー表示を返します。
確か、HDDが無いか?パーティションが無い?との旨のメッセージを表示していたと記憶してます。
宜しく御願い致します。
Best Regads.
オフライン
hiro さん、日本語フォーラムの皆さん
おはようございます。
hir0 による投稿:
あれかな?
11.04がインストールされているPCに外付けHDDを接続して10.10をインストール。
インストール完了後に外付けHDDを外して再起動したら
grub rescue>
と表示されて11.04が起動しないってパターンなのかな?
それでもって別PCの10.10も起動しないと、、、で良いのでしたら11.04のPCではライブCDが起動できるのですよね。
はい、その通りですが、”別PCの10.10”(ラップトップPC)は、正常に起動したので、
11.04にアップデートしてエージング中です。
hir0 による投稿:
取り合えず通常なら外付けHDDを接続して起動すると「grub rescure>」からは離脱でき起動選択画面が立ち上がるはずです。
如何せん状況を読めていないのが痛いですが、10.10 を起動して
$ df -h
外付けHDDを接続してPCを起動しても、「grub rescure>」が表示されます。
"$df -h"を入力しても、”Unknown command 'df'"と表示されます。
hir0 による投稿:
/ がマウントされているデバイスファイル名 + パーティションナンバーを確認して下さい。
必用なのはデバイスファイル名です。
$ sudo grub-install /dev/sd?
”Unknown command 'sudo"と表示されます。
hir0 による投稿:
?の部分は調べたデバイスファイル名を(パーティション番号は不要)
これで外付けHDDのMBRにブートローダがインストールされます。
外付けHDDを付けたまま再起動して11.04を起動します。
同じように
$ df -h
の結果を使って
$ sudo grub-install ????
を行ってください。
その後
$ sudo update-grub
を実行してください。
冒頭の読みと違っていたらアプローチが変わってきますので実行しないで下さい。
hir0さんの読みは正しいと思うのですが、どうもgrubのそのものが壊れてるのではないでしょうか?
何か別の解決方法がありましたら、ご教授をお願い致します。
宜しくお願い致します。
Best Regard.
オフライン
再々書きますが、欲しいのは確実な情報、現在の状態です。
あと何台のPC(多分2台でしょう)に何をインストールして、どのPCの何が起動しないの構成はどうなのか、、、
未だに解らないのですけど、、、。
hir0さんの読みは正しいと思うのですが、どうもgrubのそのものが壊れてるのではないでしょうか?
何か別の解決方法がありましたら、ご教授をお願い致します。
GRUBが壊れているのなら入れなおせばよいだけです。
インストール時の自動セッティングがおかしければ正せばよいのです。
GRUBが面倒臭くなれば別の方法に逃げればよいのです。
数分から十数分で解決します。
ですが今の状態が不明確なので全く進みません。
例えば”Unknown command 'sudo" この結果は当然の結果です。使用環境が違っています。
>外付けHDDを接続してPCを起動しても、「grub rescure>」が表示されます。
これはインストール自体が失敗している可能性を示しますが、状況が全く解っていない状態なので手のつけようがありません。
上手くやり取りが出来ないので他の方の登場を待ちたいのですが、せめて起動させたいほうの使い込んだUbuntuの情報だけでも書いていただけないとコメントがつきにくいのではないでしょうか?
grub rescure> はどっちのPCですか? 両方ですか?
そこから/bootにアクセスできませんか?
単純にGRUBを入れなおせば解決しますよ。
オフライン
hir0 さん
おはようございます。
返信有り難う御座います。
hir0 による投稿:
再々書きますが、欲しいのは確実な情報、現在の状態です。
あと何台のPC(多分2台でしょう)に何をインストールして、どのPCの何が起動しないの構成はどうなのか、、、
未だに解らないのですけど、、、。
Ubuntu 11.04 がインストールされたタワーPC(ファイルサーバとして使用)が、1台。
Ubuntu 10.10 を、タワーPCにUbuntu Live CDを使ってインストールしたいラップトップPCが、1台。
タワーPCに、ラップトップPCの内蔵HDDをUSBでタワーPCに接続。
タワーPCで、Ubuntu Live CDを実行しOSのインストール先を、USB接続したラップトップの内蔵HDDに
してインストール。
USB接続したラップトップ内蔵のHDDを、タワーPCから外してラップトップPCに取り付け、Ubuntu 10.10
の正常起動を確認。
Ubuntu 11.04に無事アップデートして正常に動作してます。
で、タワーPCからUbuntu Live CDを取り出して、再起動すると”grub rescue>"と表示。
hir0 による投稿:
GRUBが壊れているのなら入れなおせばよいだけです。
インストール時の自動セッティングがおかしければ正せばよいのです。
GRUBが面倒臭くなれば別の方法に逃げればよいのです。
数分から十数分で解決します。
例えば”Unknown command 'sudo" この結果は当然の結果です。使用環境が違っています。
ネットで検索して試してみましたが、再起動しても”grub rescue>"と
表示されます。
お手数ですが、GRUBのインストールの仕方を教えて頂けますか?
>外付けHDDを接続してPCを起動しても、「grub rescure>」が表示されます。
hir0 による投稿:
これはインストール自体が失敗している可能性を示しますが、状況が全く解っていない状態なので手のつけようがありません。
ラップトップPCのHDDにインストールした、Ubuntu 10.10は正常に動作してます。
インストール自体は成功してる様です。
hir0 による投稿:
grub rescure> はどっちのPCですか? 両方ですか?
そこから/bootにアクセスできませんか?
Ubuntu Live CDを実行したタワーPCの方です。
”ls"コマンドを実行すると、/bootのフォルダの中身を見る事は出来ます。
hir0 による投稿:
単純にGRUBを入れなおせば解決しますよ。
本当ですか?嬉し〜!やった〜!
GRUBnの入れ直し方w教えて下さい、お願いします。
宜しく御願い致します。
Best Regard.
オフライン
ようやく状況を理解できました。
通常?このパターンの場合は10.10(USB接続したHDD)にインストールするはずのGRUBを11.04側の内蔵HDDにGRUBをインストールした場合に起こります。
理由はGRUBは「MBR(PBR)の部分」とシステムの「/boot配下のディレクトリ及びファイル」とセットで機能しているためです。
/boot に存在するファイルが見つからないとMBR(PBR)の部分の最小構成で起動します。
#2で実行された
"grub rescue> insmod (hd0,x)/grub/normal.mod"
は見失った/boot 内のファイルを手書きで指定しています。
現在の状態では
「10.04のHDDは元のPCに繋いでも起動する」
これはインストール時に正しい指定が行われたことを示し、逆に11.04側のPCのGRUBを間違えて上書きしていないことを表していますので、何故に現状のようなのかは不思議です。
しかし#2 からはファイルの確認が取れているとの事なので再確認しながらもう一度実行してみましょう。
(色んな部分の確認やその他の方法は幾つか有るので、まずは確実に実行した内容を質問者と回答者の間で共有しなければいけません。起動すれば問題ないですが起動しない場合は、面倒ですが#1や#2の様に実行した過程と状況、エラーなどのメッセージを書き添えて頂いて、次のアプローチの足がかりとします)
次のコマンドを実行して認識されるパーティションを確認して下さい。
パーティションが3つの場合は以下の様に表示されます。数は環境に依存します。
(hd0)(hd0,msdos3)(hd0,msdos2)(hd0,msdos1)
grub rescue> ls
一つ目のパーティションに11.04をインストールしているのでしたら以下を。
どのパーティションにインストールしているかも環境によって違いますので適宜番号を変更してください。
Ubuntuのシステムファイル「bin」「boot」「home」「root」「mnt」他、等のディレクトリが見えるはずです。
grub rescue> ls (hd0,msdos1)/
以下では/bootの中が覗けます。
grub rescue> ls (hd0,msdos1)/boot
grub rescue> set prefix=(hd0,msdos1)/boot/grub
grub rescue> insmod (hd0,msdos1)/boot/grub/normal.mod
grub rescue> normal
#2 では単純にコマンドの入力ミスなら良いのですけど、これで明らかに変な挙動であればMBRのGRUBを使用しないで別のローダで直接カーネルを起動する方法に変更となります。
/boot 等が健在で有ること(Ubuntuのパーティションやシステム自体に問題が無いことが前提です)
起動した場合はGRUBをMBRに再インストールします。
これで11.04の/boot内の必須ファイルとMBRが関連付けられます。
$ sudo grub-install /dev/sda
念のために起動時に使用するOSのエントリーファイルも更新しておきます。
$ sudo update-grub
オフライン
重要な部分の確認を忘れていました
PCに二台以上のデバイス(HDDやUSBストレージ、他)が有った場合は
$ sudo grub-install /dev/sda
の a の部分は一番目に認識されるものが[a]、二番目が[b]、順次c,d,e,fとなります。
grub rescue> では (hd0) = /dev/sda (hd1) = /dev/sdb (hd2) = /dev/sdc となります。
デバイスが複数ある場合は、不用意にGRUBインストールコマンドを使用すると関係ないHDDにGRUBをインストールしてしまい余計な被害を出した上に、大元の問題は解決しない事になりますので、よく確認を行ってください。
オフライン
hir0 さん
折角、一つ一つ手順を書いて頂いたのに、返信が遅くなりすいませんでした。
投稿して頂いた内容を、明日試してみたいと思います。
丁寧な解説感謝します、本当に心強い気持ちでいっぱいです。
hir0 さんの周囲の方は、幸せなんでしょうね!
明日、試した結果を投稿致しますので、アドバイスをお願い致します。
無事、復旧してくれることを祈るばかりです。
宜しく御願い致します。
Best Regard.
オフライン
hir0 さん
こんにちわ。
返信が遅くなり申し訳在りません。
実は、本日、新しい派遣先となるかもしれない企業様との面接があるので、
その準備で手が回りませんでした。
grub rescue> ls
一つ目のパーティションに11.04をインストールしているのでしたら以下を。
どのパーティションにインストールしているかも環境によって違いますので適宜番号を変更してください。
Ubuntuのシステムファイル「bin」「boot」「home」「root」「mnt」他、等のディレクトリが見えるはずです。
grub rescue> ls (hd0,msdos1)/
OKです。
フォルダが存在する事が確認出来ました。
grub rescue> ls (hd0,msdos1)/boot
grub rescue> set prefix=(hd0,msdos1)/boot/grub
grub rescue> insmod (hd0,msdos1)/boot/grub/normal.mod
最後のコマンドを実行すると、
error: symbol not found: 'grub_env_export'.
と表示されます。
ファイルが足りないのでしょうか?
それとも定義されてないのでしょうか?
#2 では単純にコマンドの入力ミスなら良いのですけど、これで明らかに変な挙動であればMBRのGRUBを使用しないで別のローダで直接カーネルを起動する方法に変更となります。
/boot 等が健在で有ること(Ubuntuのパーティションやシステム自体に問題が無いことが前提です)
上記のコマンドエラーの原因が分からない場合は、”別のローダーで直接カーネルを
起動する方法”を教えて頂けますか?
お手数をお掛致しますが、是非、お力をお貸し下さい。
宜しく御願い致します。
Best Regard.
オフライン
明確には未だ見確認ですが /dev/sda1 にUbuntu をクリーンインストール。
この状態で勧めます。
GRUB2が採用されているライブCDを起動して下さい(10.04以降)。
たしかgrub-installコマンドが使えるようになったと記憶しています。
端末から
$ sudo mount /dev/sda1 /mnt
$ sudo mv /mnt/boot/grub/grub.cfg /mnt/boot/grub/grub.cfg.old
$ sudo update-grub -o /mnt/boot/grub/grub.cfg
$ sudo grub-install --boot-directory=/mnt/ /dev/sda
”Unknown command 'df'”や"Unknown command 'sudo'"は「grub rescue>」から行ったのではないでしょうか。
#10の「$ sudo fdisk -l」の結果やその他の部分も含めて私は未だにyasanumaさんとシンクロ出来ていない部分が多くありそうで多少進行が難航するかも。
一行目で/dev/sda1をマウントしています。
二行目でgrub.cfgをリネイムしています。実際に成否について/mnt/boot/grub内を確認して下さい。
三行目で新しくgrub.cfgを生成しています。こちらもファイルの生成を確認して下さい。
四行目でGRUB2をインストールしています。オプションで/dev/sda1と関連付けています。
オフライン
hir0 による投稿:
明確には未だ見確認ですが /dev/sda1 にUbuntu をクリーンインストール。
この状態で勧めます。
意味不明なので訂正です。
HDD内の状態などの情報を頂いていないので「/dev/sda1 にUbuntu をクリーンインストール」していると仮定して説明します。
追加として、デュアルブート環境ではないこと、今までの(一部を省く)結果がタイプミス(key入力ミス)によるものでは無い事と仮定しています。
「#1を行うまでは問題なく起動していた」この一点とその他の情報の繋ぎ合わせだけで進行しています。
矛盾点や確認しておくべき事が有りますが保留しています。
もしも今回も上手く行かない(10.04以降のライブCDでgrub-install コマンドが使えると言うのが私の思い違いの場合は省く)のでしたら、基本に戻って情報の提供からやり直してみてください。
オフライン