戻る

grub-install ...

これは USB メモリ で 行った物ではありません 計算機本体の Linux で 行ったものです。

この Linux で 見た USB  メモリは /dev/sde になっています。 都度都度 変わると考えておいた方が 良いでしょう

計算機に Linux 等が インストールされています。 今回は その計算機に USB メモリを 挿入して
その  USB メモリ に grub-install を行い また 他の OS も 検出する様にしてみる という 場合です。

計算機の 概要 をみておきます というか 取り付けられた ディスクの構成 です

計算機 は ”product: HP xw4600 Workstation (RV724AV) ” と いうものです。

この計算機で grub-install を 行います。

条件として USB メモリは mount  されているものとします。 ( 最初の領域 です。)

grub-install する 計算機で USB メモリは /dev/sde で マウント しているのは /dev/sde1 となっています。

こういう 条件で grub-install を 行います。

grub-install

マウント 先ですので ”--boot-directory=/mnt/boot ”に なっていますが ” /dev/sde ”に インストール します。 ” /dev/sde1 ” では ありません。

root@sla8p58:~#  grub-install --target=i386-pc --debug --boot-directory=/mnt/boot /dev/sde

grub-mkconfig

続いて grub-mkconfig です。

root@sla8p58:~# grub-mkconfig -o /mnt/boot/grub/grub.cfg
...
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
done

この場合は 一組 の 起動項目しか 作成されません 。 他の Linux 等の 項目はありません。

GRUB_DISABLE_OS_PROBER=false

”/etc/default/grub ”と いう ものが できていない linux もあるようですが 今回試みたものは 幸いにも 存在しているようです、
また os-prober 言うものもあるので ”/etc/default/grub ” を 変更してこれを 他の Linux 等の 検出も試みます。

root@sla8p58:~# cd /etc/default/
root@sla8p58:/etc/default# cp -av grub 20210911_grub_ORG
'grub' -> '20210911_grub_ORG'
root@sla8p58:/etc/default# echo "GRUB_DISABLE_OS_PROBER=false" >>grub 
root@sla8p58:/etc/default# diff -s grub 20210911_grub_ORG 
29d28
< GRUB_DISABLE_OS_PROBER=false

改めて grub-install を 試みます。

grub-install ...

root@sla8p58:~#  grub-install --target=i386-pc --debug --boot-directory=/mnt/boot /dev/sde
...
grub-install: info: saving <105,0,512>.
grub-install: info: saving <106,0,512>.
grub-install: info: saving <107,0,512>.
grub-install: info: saving <108,0,512>.
Installation finished. No error reported.

続いて ” grub-mkconfig  ” を 行います。

grub-mkconfig

root@sla8p58:~#  grub-mkconfig -o /mnt/boot/grub/grub.cfg
...
Found Windows 7 on /dev/sda1
Found Slackware 14.2 on /dev/sda10
Found Microsoft Windows XP Professional on /dev/sda2
Found Windows NT/2000/XP on /dev/sda5
Found unknown Linux distribution on /dev/sda7
Found Slackware 15.0 x86_64 on /dev/sda8
Found unknown Linux distribution on /dev/sdb1
Found Debian GNU/Linux 10 (buster) on /dev/sdb3
Found Slackware 14.2 on /dev/sdb5
Found Vine Linux 6.5 (6.5) on /dev/sdb7
Found FreeDOS on /dev/sde1
Found Linux From Scratch (10.0) on /dev/sde2
done

すごいですな USB メモリ の ” FreeDOS ” や ” Linux From Scratch (10.0) ” も 検出 してるようです。

これで 計算機の 起動を USB から 起動するようにして 起動させる事ができれば ちゃんちゃん なのですが

どういう ことなのか 不明ですが 起動できるものと できないものがあるのです。

” root=XXX ” で ” XXX ”の 所を ” /dev/YYY ” とか ” PERTUUID ”また  ” UUID ” 等に しないと いけない場合があります。

起動確認する必要があるのです。 まあ 確認するのは当たり前なのですが?

確認 というか 状況

残念ながら このままでは 起動しないのです

最低限 暫定 の grub.cfg をみておきます。 えー 抜粋ですので 全部ではありませんが このようになっています。

えーと 御覧に なられたように なかなか上手くはいかないようです。

幸いな事に USB メモリの Linux は 別の 計算機 わずか1台 ですが 起動できたので 良し と しておきます。

にゃんたろう 拝!

2022年 8月 30日 火曜日 21:02:53 JST 作成


戻る

Since 2006.-2022.--Copyright © nyantarou All Rights Reserved.