お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2010-12-21 19:07:13

kazuonakagawa
メンバ
登録日: 2010-06-02

ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

タイトルの通りの症状で、
grubというものが理解できていれば回復できると思うのですが、
まだ初心者なので難しいです。
どなたか外付けHDDをはずしても起動できるよう設定変更する方法をご教授ください。

eee-pc901にUbuntu10.10をインストールしてあり、

さきほど、ライブUSBを使って
外付けHDD(40GB)にUbuntu10・10をインストールしました。

外付けHDDに同じ10・10をインストールしたのは、
もしも内蔵HDDのUbuntuが具合が悪くなった時のためにすぐUbuntuを使おうと
思ったので、あまり普段から頻繁に使用する形ではないので
普段ははずしておきたいと思っています。

まんまと初心者的間違いをしてしまったようです。
外付けHDDをはずしても起動できる変更方法をおしえてください。

端末でのコマンドも、なんとかつかえるようになってきました。

よろしくお願いします。

オフライン

 

#2 2010-12-21 19:52:27

physitron
メンバ
登録日: 2010-05-07

Re: ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

内蔵HDDのMBRが書き換えられ、
外付けHDD内のGRUBを起動するようになってしまったようです。

内蔵HDDのMBRを復旧する必要があるようです。

少し調べたところ、grub-installというコマンドが使えそうです。(これであってるかな?)
復旧作業に失敗すると、面倒なので確かな情報に基づいて作業する必要があります。
どなたか詳しい方がいらっしゃったら、加筆お願いします。

オフライン

 

#3 2010-12-21 20:23:19

Tsuzuki
メンバ
登録日: 2010-10-29

Re: ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

お使いのeee-pc901にはOSはUbuntuしかインストールされていないのでしょうか?
Windows用のリカバリ領域などは存在しませんか?

とりあえず、外付けHDDを装着した状態で、内蔵のUbuntuを起動して、
ターミナルから、下記のコマンドを実行した結果をお知らせください。

sudu fdisk -l
-l の l は小文字のLです。

その結果を基に、内蔵HDDにGrubをインストールすることになろうかと思います。

オフライン

 

#4 2010-12-21 22:02:58

kazuonakagawa
メンバ
登録日: 2010-06-02

Re: ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

ありがとうございます!

PCにはUbuntuしか入れておりません。

ご指示頂いたものを表示しますと
以下のようになります。
よろしくお願いします。


ディスク /dev/sda: 4034 MB, 4034838528 バイト
ヘッド 109, セクタ 2, シリンダ 36149
Units = シリンダ数 of 218 * 512 = 111616 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x000c94b2

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sda1   *          10       36141     3938304   83  Linux

ディスク /dev/sdb: 8069 MB, 8069677056 バイト
ヘッド 249, セクタ 36, シリンダ 1758
Units = シリンダ数 of 8964 * 512 = 4589568 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x000e6abf

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sdb1               1        1759     7878656   83  Linux

ディスク /dev/sdc: 40.0 GB, 40007761920 バイト
ヘッド 255, セクタ 63, シリンダ 4864
Units = シリンダ数 of 16065 * 512 = 8225280 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x00028808

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sdc1               1        4659    37419008   83  Linux
/dev/sdc2            4659        4864     1648641    5  拡張領域
/dev/sdc5            4659        4864     1648640   82  Linux スワップ / Solaris

ディスク /dev/sdd: 16.3 GB, 16306405376 バイト
ヘッド 255, セクタ 63, シリンダ 1982
Units = シリンダ数 of 16065 * 512 = 8225280 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x000752ed

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sdd1   *           1        1872    15035816    c  W95 FAT32 (LBA)
/dev/sdd2            1873        1961      705537    5  拡張領域
/dev/sdd5            1873        1961      705536   82  Linux スワップ / Solaris

オフライン

 

#5 2010-12-21 22:44:16

hir0
メンバ
登録日: 2008-09-28

Re: ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

何だか沢山ありますね。

/dev/sda が内蔵ディスクで4GB、ディスク全体を/dev/sda1にしてUbuntu。
/dev/sdb は何だろ? 8GB全部/dev/sdb1 でLinux
/dev/sdc これが問題の外付けHDDで/dev/sdc1にUbuntuですね。
/dev/sdd これは何なのだろう? swapとして機能させているのかな。

ディスクの内訳はこんな感じで合って入るでしょうか。
/dev/sda1 がトピックの#1に出てくる内蔵のUbuntuで/dev/sdc1が外付けのHDDのUbuntu。

間違いなければ、外付けのHDDを挿して、内蔵HDDのUbuntuを起動させてください。
そして、もう一度 $ sudo fdisk -l  を実行します。
理由はデバイスファイル名の[sda][sdb][sdc][sdd][sde]等は認識された順番で名称が変わるために、毎回外付けHDDが/dev/sdc で有るとは限らないので作業前には要確認です。

以下は外付けHDDが/dev/sdcで有る事を前提に書きます。
(内蔵HDDのUbuntuから起動している状態で、もちろん外付けHDDは挿したままにしておいてください)
$ sudo grub-install /dev/sda
$ sudo update-grub
$ sudo umount /dev/sdc
$ sudo mount /dev/sdc /mnt
$ sudo grub-install --root-directory=/mnt /dev/sdc

これで、内蔵HDD内のGRUBと内蔵HDDのMBRがセットに、外付けも同じ様になっているので別のPCに差し込んでも起動出来ます。
その前に、今度は同じPCで再起動して外付けHDDのUbuntuを起動させて
$ sudo update-grub

を実行させる必用が有ります。
(書いていて頭が混乱してきた orz)

オフライン

 

#6 2010-12-22 00:03:15

kazuonakagawa
メンバ
登録日: 2010-06-02

Re: ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

hir0さん、いつも本当にありがとうございます!!
おっしゃる通りにやってみて、無事、外付HDDをはずした状態で起動できました!

同じPCなら外付けのUbuntuも起動できるので、本当にありがたいです。

まだ、他のPCに挿して起動できるか確認できていないのですが、
明日にでも確認したいと思います。
ありがとございました!

physitronさんもTsuzukiさんも、本当にありがとうございます。

オフライン

 

#7 2010-12-22 14:29:53

kazuonakagawa
メンバ
登録日: 2010-06-02

Re: ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

本日、外付けHDDを他のPCにつなげてみたところ デバイスがみつかりません。
grub rescueという表示になってしまいました。

hir0さんのご指示の

hir0さん による投稿:

これで、内蔵HDD内のGRUBと内蔵HDDのMBRがセットに、外付けも同じ様になっているので別のPCに差し込んでも起動出来ます。
その前に、今度は同じPCで再起動して外付けHDDのUbuntuを起動させて
$ sudo update-grub

を実行させる必用が有ります。
(書いていて頭が混乱してきた orz)

の通りやってみたのですが、
eee-pcだと問題なく起動できるのですが、
他のPCだとうまくいきません。

申し訳ございませんが、
他のPCでも起動できる設定変更を教えて頂けないでしょうか?

オフライン

 

#8 2010-12-23 00:31:19

hir0
メンバ
登録日: 2008-09-28

Re: ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

一度、外付けのHDDのUbuntuを起動した状態で、
$ sudo update-grub

は実行されでしょうか?

オフライン

 

#9 2010-12-23 01:04:00

hir0
メンバ
登録日: 2008-09-28

Re: ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

#8は無し。
原因と現状の憶測は抜きにして単純で通常なら確実な方法を、、、
eee-PCでUSB-HDDを起動させてください。

端末を開き
$ df

一番上に、" / " のマウントされているデバイス名が表示されます。

/dev/sdXX <数字>   <数字>   <数字>   <%>    /

これは現在 ルート( / )がマウントされているデバイスファイル名、つまり起動しているUbuntuのデバイスファイル名が分かります。
先頭の /dev/sdXX  最後の数字はパーティションナンバーです。

パーティションナンバーを取り除いた/dev/sdX  の部分がUSB-HDDを表します。Xの部分はa,b,c,d,e,fと変わりますので確認して下さい。

ここでは/dev/sda と仮定して書き込みます。
$ sudo grub-install /dev/sda
$ sudo update-grub

デバイスファイル名は確実に確認して下さい。 間違えて内蔵HDDのデバイスファイル名を指定すると#1の状態に戻ってしまいます。



ここからは蛇足です。
GRUB2の設定ファイルに記載されるデバイスファイルの指定方法はUUIDです。

UUIDは固有のIDですが、パーティションサイズの変更やファイルシステムの変更を行った際にUUIDも変更されてしまいます。
変更された場合は $ sudo update-grub を実行して設定を更新する必用が有ります。

デバイスファイル名での指定も出来ます。
数年前までは普通でしたがデバイスファイル名で指定します/dev/sda2 や /dev/sdc1 等です。
内蔵HDD等、通常は接続したままのデバイス環境では問題ないですがUSB等、抜き差しする場合はその都度に認識される順に/dev/sd 以降が a,s,c,d, と変更されてしまいますので使用状況によっては好ましく有りません。

もう一つはデバイスにラベルを付ける方法です。
任意の名称を付ければUUIDやデバイスファイル名の指定の様に勝手に変更されることはありませんがラベルに使用する名前はユニーク(唯一)でなければいけません。

オフライン

 

#10 2010-12-26 19:38:47

kazuonakagawa
メンバ
登録日: 2010-06-02

Re: ubuntuをインストールした外付HDDをはずしたら内蔵HDDのUbuntuが起動しなくなった。

hir0さん、詳しいご教授、本当にありがとうございます!

教えて頂いた方法でやり直したら、無事できました。
本当にありがとうございます。助かりました。

オフライン

 

Board footer

Powered by FluxBB