お知らせ

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

#1 2009-11-17 21:58:28

redman
新しいメンバ
登録日: 2009-11-17

ブートセレクタの表示が......

パソコンをWindows Vistaからwindows7にアップグレードしてからUbuntuをインストールしましたが、一度目はインストール後 GRUB loading, please wait... Error22 で、もう一度インストールしてErrorはなくなり起動するようになりましたが、ブートセレクタの表示画面でUbuntuの選択項目が2つになってしまいました。

Ubuntu 9.10,kerel 2.6.31-14-generic
Ubuntu 9.10,kerel 2.6.31-14-generic (recovery mode)
Ubuntu 9.10,kerel 2.6.31-16-generic
Ubuntu 9.10,kerel 2.6.31-16-generic (recovery mode)
Ubuntu 9.10,memtes86+
Other operating systems:
Windows Vista (loader)

この表示になるのですがUbuntuの選択項目を一つにすることは可能でしょうか?
それとWindowsの項目はアップグレードしてWindows7なのですがVistaになっています。
これもWindows7にすることは可能でしょうか?
お答えよろしくお願いします。

オフライン

 

#2 2009-11-18 00:58:06

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

Re: ブートセレクタの表示が......

wikiではこうなっています
$ sudo chmod +w /boot/grub/grub.cfg
$ gksudo gedit /boot/grub/grub.cfg

上段は書き込み権限を与えています。
下段でテキストエディタが開きます。

(私の環境では46行目から)
[date]
menuentry "Ubuntu, Linux 2.6.31-15-generic" {
        recordfail=1
        if [ -n ${have_grubenv} ]; then save_env recordfail; fi
    set quiet=1
    insmod ext2
    set root=(hd0,2)
    search --no-floppy --fs-uuid --set xxxxxxxxxxxxxxxxxxxxx
    linux    /boot/vmlinuz-2.6.31-15-generic root=UUID=xxxxxxxxxxxxxxxx ro   quiet splash
    initrd    /boot/initrd.img-2.6.31-15-generic
}
[/date]
これでワンセットになっています。削除!
一行目がメニューの表示に部分です。

*もう一つの方法はカーネル自体を削除する方法です。
$ apt-get remove
自動的に古いカーネルと不必要なパッケージが削除されます。
$ sudo update-grub
メニューを含む設定が更新されます。

OSの表示については手書きで書き直すしか無いでしょう。

OSを判別するツール「os-prober」のメニュー表示が vista/7 と表示される為にマルチブート環境だとどちらがViataか7か分からないために判定法を導入してメニュー表示も明確に「Windows Vista」「Windows 7」と分けましたが、判定方法に落とし穴が有った様です(判定部分がクリーンインストールとアップグレードで異なる)
よく検証せずに答えるのもダメですが「BUG」です。
手書きで書き換えても何かの機会で自動、手動で update-grub が実行されると元に戻るでしょう。

今後のアップデートの通知にos-proberの名前が入っているのを気長に待つ。

大雑把ですがこんな感じかな。

オフライン

 

#3 2009-11-18 01:01:35

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

Re: ブートセレクタの表示が......

でも「update-grub」なんて普通はしないよね。

オフライン

 

#4 2009-11-18 09:01:57

hito
管理者
登録日: 2007-03-18

Re: ブートセレクタの表示が......

問題が山積みなので事実関係だけ示したいと思います。

・/boot/grub/grub.cfg を手動で編集してはいけません。update-grubは日常的にシステム側で実行されるコマンドであるため、すぐに編集が破棄されます。また、grub.cfgはmachine readableであることが重要なファイルであるため、手で実行することはリスクを増やすことになります。

・複数のカーネルエントリが表示されるのは、複数のカーネルが導入されているからで、GRUB側の設定でどうこうすべきではありません。また、「ひとつ前のカーネル」が導入されているのは、ABIの更新に伴う諸問題が起きたときに「元に戻す」ためのものなので、正常な動作です。3つ以上ある場合は問題ですが、2つの場合は「そういうもの」だと考える必要があります。

・現時点でのUbuntuのGRUB2には、メニューエントリを手動で編集する方法は提供されていません。Vista/7の認識の問題も含め、どうしても編集したい場合は30_os_proberを止めて、40_customで個別にフィールドを定義する必要があります。
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/439538

オフライン

 

#5 2009-11-18 09:06:54

redman
新しいメンバ
登録日: 2009-11-17

Re: ブートセレクタの表示が......

すいません。
Ubuntu初心者で話がわかりません。
削除する項目はどうやって開くのでしょうか?
OSの書き変えも同じなのでしょうか?
お答えお願いします。

オフライン

 

#6 2009-11-18 13:45:36

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

Re: ブートセレクタの表示が......

hitoさんフォローありがとうございます。
redmanさんへ
すみません。
#2は日本語フォーラムの Tutorial & Tips に「どうしても編集しないといけないなら」と書いてありました。

grub.cfgを直接編集するのはお勧めしない。grub.cfgは単なる出力結果に過ぎない。編集すべきは/etc/grub.d内のファイルないし/etc/default/grubだ。

手動での編集を避けるためgrub.cfgを読み込み専用に設定されている。root権限でファイルを開き編集セーブするためには読み込みのみ属性を取り除く必要がある。どうしても編集しないといけないなら次のコマンドで可能だ。

sudo chmod +w /boot/grub/grub.cfg
gksudo gedit /boot/grub/grub.cfg

但しupdate-grubが実行される度に読み込み専用に再設定される。
5. エントリーの削除
エントリーを削除する場合には/etc/grub.dフォルダー内のファイルを編集ないし削除する。/boot/grub/grub.cfgファイルは読み込み専用であり通常編集は必要とされない。

本体のgrub.cfgは直接触らずにカスタマイズ用の設定を反映させるのが正当な方法の様です。

hitoさん による投稿:

30_os_proberを止めて40_customで個別にフィールドを定義する必要があります。

1、テキストエディタからgrub.cfgを開き必要な部分をコピーし閉じます。
2、ファイル40_customに張り付け、任意の変更を(登録名の変更やエントリーの削除)します。
3、起動時にファイル40_custom以外のメニューの読み込みをしないように設定します。

間違わない様に「アプリケーション」→「アクセサリ」→「端末」を開き
$ gedit /boot/grub/grub.cfg
テキストエディタが開くので張り付けて頂ければどこをコピーするか示します。
手順2、3についてもその時に。

他の方の指示があれば受けてください。

オフライン

 

#7 2009-11-18 15:20:33

weyk
メンバ
登録日: 2009-04-03

Re: ブートセレクタの表示が......

redman による投稿:

すいません。
Ubuntu初心者で話がわかりません。
削除する項目はどうやって開くのでしょうか?
OSの書き変えも同じなのでしょうか?
お答えお願いします。

管理者さんのかかれている1項目だけ引用しますが、

・複数のカーネルエントリが表示されるのは、複数のカーネルが導入されているからで、GRUB側の設定でどうこうすべきではありません。また、「ひとつ前のカーネル」が導入されているのは、ABIの更新に伴う諸問題が起きたときに「元に戻す」ためのものなので、正常な動作です。3つ以上ある場合は問題ですが、2つの場合は「そういうもの」だと考える必要があります。

上記のことは、つまり、2つ出てくるのはなんかの障害があったときの保険(バックアップ)であり、もともと正常な動き という可能性です。
なぜ、消したいのか というのを、もう1度、書いてみるこをお進めします。自身ではよくわからない場合でも、識者が、消した方が良いのか、消さない方が良いのか、アドバイスが得られるかと思いますので、そのアドバイスをもって、判断すると良いかと思います。

 心配なのは、じつは、たまたま、(質問の最初に書いてる)誤操作とタイミングがかさなったために、正常な動作を直そうとしてしまっているでのはないか という可能性です。誤操作の結果を直して正常な状態に近づけるはずが、逆に、リスクを増やす結果になってしまします。
# MS-Windowsに例えるなら、復元ポイントの表示が邪魔/容量がもったいない という理由で、復元ポイントを全て削除してしまうようなもんです。なにかあったとき、正常な動いていたときの復元ポイントが無く、OSの再インストールでデータが全部消える・・・ということになります。

オフライン

 

#8 2009-11-18 23:04:23

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

Re: ブートセレクタの表示が......

う~ん、、、
以前から多くの方が行なっている普通の操作だと思うのですが。

カーネルを削除するのではなくて
「メニューエントリーに複数表示される項目を整理したい」
と言うことですよね。

更に付け加えると以前のバージョンのカーネルは保険の為に残しておくのも通常行なわれている手法です。

そうすると今度は
$ sudo apt-get remove
が悪者になりかねないですし、難しいですね。
ユーザー側が環境の変化になれるのとツール側の改善が上手く噛み合うまでは問題は起こりやすいかも。

と言うことで「メニューの表示部分の変更」の話ですが、多少混乱してきている様なので
redmanさんも気後れしているかも。

現状のgrub2で変更するなら#6の
$ gedit /boot/grub/grub.cfg
の結果を張り付けてください。

暫く待たれるのであればGUI(ウィンドウ操作)のメニュー設定ツールがアップデートもしくは新規に配布されるでしょう。

オフライン

 

#9 2009-11-18 23:44:02

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: ブートセレクタの表示が......

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

#10 2009-11-18 23:59:09

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: ブートセレクタの表示が......

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

#11 2009-11-19 00:03:40

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: ブートセレクタの表示が......

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

#12 2009-11-19 09:44:55

hito
管理者
登録日: 2007-03-18

Re: ブートセレクタの表示が......

kiyoshi による投稿:

やるとしても、せいぜい、
$ sudo chmod -x /etc/grub.d/30_os-prober
ぐらいでしょう。あ、これもしない方が便利だと私は思いますけど。

こういう「想定された作法でない」やりかたは「最後の手段」にして頂くのが良いかと思います。間違ったやりかたが広まってしまうのは良いことではありません(ここまでUnix文化的な一般論)。ddを用いて*BRをダンプして判断するのも同様で、hackyなアプローチを一般化するのは良くないかなぁ、と個人的には思います(←ddうんぬんについては個人的な意見)。

os_proberを止めるためには、/etc/default/grub.cfgにGRUB_DISABLE_OS_PROBER=trueをセットするのが妥当です。とりあえず動くから(たぶんGRUB2が読むのでUnix permissionは関係ないですし、今回の場合だと動くことすら厳しそうな気もします)、という理由で、設計上想定されていないアプローチを取るのは避けるべきです。

最大の問題は、GRUB2関連のケースの洗い出しが終わっていなくて、https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/444495 のようなバグがあることですが、このあたりは時間が解決してくれるはずです。

オフライン

 

#13 2009-11-19 10:09:33

redman
新しいメンバ
登録日: 2009-11-17

Re: ブートセレクタの表示が......

ありがとうございます
Ubuntuの項目が2つあるのは説明でわかりました。
起動には問題なく使えるのでそのままにします。
Windows7なのにVISTAと認識される件ですが....
$ sudo grep -A10 -i Vista /usr/lib/os-probes/mounted/20microsoft
を入力したところ、

redman@redman-desktop:~$ sudo grep -A10 -i Vista /usr/lib/os-probes/mounted/20microsoft
# Vista (previously Longhorn)
if item_in_dir -q bootmgr "$2" && boot="$(item_in_dir boot "$2")" &&
   bcd="$(item_in_dir bcd "$2/$boot")"; then
    if grep -qs "W.i.n.d.o.w.s. .7" "$2/$boot/$bcd"; then
        long="Windows 7 (loader)"
    else
        long="Windows Vista (loader)"
    fi
    short=Windows
# 2000/XP/NT4.0
elif item_in_dir -q ntldr "$2" && item_in_dir -q ntdetect.com "$2"; then
    long="Windows NT/2000/XP"
    short=Windows
    ini=$(item_in_dir boot.ini "$2")
    if [ -n "$ini" ]; then
        multicount="$(grep -e "^multi" "$2/$ini" | wc -l)"
        scsicount="$(grep -e "^scsi" "$2/$ini" | wc -l)"

と表示されました。

$ sudo dd if=(マウント先)/Boot/BCD | hd | grep -A1 "W."| grep -B1 " .7"
でWindows7のパーティションをdesktopにマウントして入力しましたが.....

redman@redman-desktop:~$ sudo dd if=desktop/Boot/BCD | hd | grep -A1 "W."| grep -B1 " .7"
[sudo] password for redman:
dd: `desktop/Boot/BCD'を開いています: No such file or directory

と表示されました、これは、(マウント先)の意味が間違っているのでしょうか?
よろしくお願いします。

オフライン

 

#14 2009-11-19 12:45:15

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: ブートセレクタの表示が......

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

#15 2009-11-19 13:29:22

hito
管理者
登録日: 2007-03-18

Re: ブートセレクタの表示が......

フォーラムの1ユーザーにすぎないdrs305さんのひとりよがりなコメントなので、上記の
anoirさんのトピックの内容には従わない方が良いのですね?

ちょっと意味が取りにくいのですが、40_customをベースにGRUBの設定を新造する話(カスタマイズのための変数が用意されていないので、やむなくchmod -oしている)を、30_os_prober(カスタマイズのための変数が準備されている)するためだけにに援用できる、ということでしょうか?

自分にはまったく別の話というか、別の基準が適用されるべきものを無理に当てはめている、という点では危険な操作であるように思われますが、いかがでしょうか。

オフライン

 

#16 2009-11-19 13:37:25

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

Re: ブートセレクタの表示が......

このスレッドに出ている方法は全て一長一短で将来的に今のシステム構成に変更が有るとやり直し、又は手直しが必要でしょう。
将来的にお使いのPCでVistaを使用しなければ(単独、又はVistaと7のデュアルブート)
kiyoshiさんの方法が良いでしょう:)

通常は手を加える必要の無いですが、デフォルトで既存の問題が解決出来ないうえに新たな問題が起きている以上、grub2は性能面で優れていますが一般普及型としての実用的な細部の調整はまだ途上にあると考えられます。
詳細は違いますが同じように使い勝手の悪さを感じている人も沢山いると思います。
ここにも一人(二段階ブートとMBMを詳しく解説しているページ)

故に「1ユーザーにすぎないdrs305さんのひとりよがりなコメント」は現状では理にかなっている為に大きく広まっています、簡単には止まらない(国外を含む)でしょう。
(xorg.cfg も似たような流れがありましたね)

日本語フォーラム内でも幾つかトピックが立っていますが触らずに済むバージョンが出るまでは触るしかなく、立場上「触ってはいけません」と警告を発している、後は「我慢するか自己責任で」との解釈ではダメですかね :/

オフライン

 

#17 2009-11-19 13:41:15

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

Re: ブートセレクタの表示が......

あっ、すみません。
#15に気づか無いで送信してしまいました。

オフライン

 

#18 2009-11-19 17:13:35

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

Re: ブートセレクタの表示が......

あぁ、更にすみません。
#12も読んでませんでしたorz
#14を斜め読みで軽く遡って読んだのですが見事に読み飛ばしています(反省)

なので私の#16も読み飛ばして下さい、スレッドの流れから外れたコメントです(更に反省)

オフライン

 

#19 2009-11-19 20:12:34

redman
新しいメンバ
登録日: 2009-11-17

Re: ブートセレクタの表示が......

いろいろと有難うございました。
初心者には難しそうなのであきらめます。
起動には問題が無いのでこのまま使おうとおもいます。

オフライン

 

#20 2009-11-19 22:16:33

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: ブートセレクタの表示が......

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

#21 2009-11-19 22:24:03

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: ブートセレクタの表示が......

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

#22 2009-11-19 22:29:04

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: ブートセレクタの表示が......

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

#23 2009-11-19 23:23:58

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

Re: ブートセレクタの表示が......

いえいえ、コチらこそ考え付かなかったアプローチの方法でした。
そういう刺激が次のアイディアに繋がるし勉強(好奇心を満たす自己満足)にもなりますので大変興味を引きました、ありがとうございます。

オフトピ気味の部分の意味がよく分かりませんが、気にする事もないと思いますよ。
と書きながらやはり意味がよく分からない;)
(「上級者気取り」は、中級、初級の傍観者が、参加、発言している中級、初級者に直接発する事の無い(傍観者だから)感想みたいなものじゃないのかな?)

オフライン

 

#24 2009-11-20 12:58:34

kiyoshi
拒否
From: Linux-Loving-Person
登録日: 2007-02-07

Re: ブートセレクタの表示が......

※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。

オフライン

 

Board footer

Powered by FluxBB