mikeo_410
  1. Grub
    1. 1.How to ー Grub

How to

ときどき Lubuntu を使います。SSDが小容量なので、USBで外付けしたHDDにインストールしています。Lubuntu を使う時以外は外しています。

SSDを一旦外して、戻して起動すると、Grubのプロンプトで止まってWindows11が起動しません。どうやら、Lubuntu を入れると、パソコン内蔵のSSDにGrubがインストールされ、それを介してwindows11が起動していたようです。

1. Grubのコマンドライン操作

まず、キーボードからキートップの刻印通りに入力されないことに戸惑います。普通のキーボードはjp106で、英語の基本的なキーボードはus101と区別されますが、Grubはus101と解釈しているようです。キーボード自体はキーの位置を表すコードを出力するだけなので大差ないのですが、キートップの刻印が異なります。101キーボードの図を見て操作できます。

Grub自体の対応は、「setkey」コマンドで変更することのようですが、実用的ではないので覚えるよりないと思います。英数は同じなので、特殊文字のいくつかを覚えます。

必須なのは (、) 、丸括弧、パーレン(parenthesis)がズレていることです。

図_1.jp106キーボードの特殊文字

!

1

2

#

3

$

4

%

5

&

6

7

(

8

)

9

0

=

-

~

^

|

\

BS

P

`

@

{

[

L

+

;

*

:

}

]

M

<

,

>

.

?

/

_

\

図_2.us101キーボードの特殊文字

~

`

!

1

@

2

#

3

$

4

%

5

^

6

&

7

*

8

(

9

)

0

_

-

+

=

BS

P

{

[

}

]

|

\

L

:

;

M

<

,

>

.

?

/

setkeyコマンドは、特殊文字に下表のような名前を付けていて、

setkey at bracketleft

は、[ bracketleft を @ at に割り当てることのようです。

例えば、「9」のキーのキートップには「) parenright」が刻印されていますが、実際にGrubが認識するのは「( parenleft」なので、キートップ通りに入力されるようにするには、

setkey parenright parenleft

と設定するのだと思います。

! exclam

@ at

# numbersign

$ dollar

% percent

^ caret

& ampersand

* asterisk

( parenleft

) parenright

- minus

_ underscore

= equal

+ plus

[ bracketleft

{ braceleft

] bracketright

} braceright

; semicolon

: colon

' quote

" doublequote

` backquote"

~ tilde"

\ backslash"

| bar"

, comma"

< less"

. period

> greater

/ slash

? question

  space

Grubのコマンドラインは高機能で、編集には不便がありません。補完が効くので助かります。

2. Grubの起動

ブートできない状態になって意図せず Grub がきどうしたもので、残念ながら起動する方法は知りません。記憶を元に書いています。

3. ブート対象を探す

lsコマンドがあって、ブラウズできます。単にlsとすると、

(hd0)  (hd0,gpt1) (hd0,gpt2)

のようなドライブ、パーティションの情報が表示されます。

        ls (hd0,gpt2)/

のように、パスのセパレータを付加すれば下位のパスが表示されます。

パスは大文字と小文字が区別されています。

4. Windowsを起動する

chainloader (hd0,gpt2)/efi/Microsoft/Boot/bootmgfw.efi

boot

実際にはgptパーティションではないと思いますが、このように表示され、確実とは言えませんがgpt2からブートできたと思います。同じ場所には2つ .efi ファイルがありましたが、他方は起動しませんでした。

一度、Windowsが起動できれば、次の起動ではGrubは開かず、普通にブートするようになりました

5. BIOSのブートデバイス選択

HPのパソコンなので、電源投入直後にESCキーを繰り返し押すとBIOSのメニューになります。

F9が「Boot Menu」になっています。

現在は正常にUSBデバイスが一覧に載りますが、一次起動用USBが表示されないので困っていました。

このメニューの最後は、「Boot from EFI file 」となっています。これを選ぶと、ドライブやファイルがブラウズされるようになっていて、Grub で、chainloader、boot するのと同じであることを知りました。

この方が便利ですが、.efi ファイルが沢山あって、選択に迷うことは同じです。

USBは、EFI/boot/bootX64.efi で起動したと思います。

6. USBの起動

USB起動でバックアップツールを起動して、SDDの換装をしようとしていました。

内蔵可能なメディアを外付けできないとクローンはできないと思います。

一旦、異なるインタフェースのHDDにシステムをバックアップし、空のSSDに換装してから、USB起動でバックアップを戻します。

しかし、このパソコンは、USBを様々作り直してみても起動しませんでした。

WindowsをGrubで起動できたことから、少し理解できました。

BIOSのブートメニューでEFIを選ぶと Grubと同様にブートファイルが探せます。

これによって、USBデバイス上のブートファイルを起動することで、USBからバックアップツールが起動できるようになったので、SSDの換装ができました。

7. 回復ドライブ

「すべてのアプリ」「windowsツール」に「回復ドライブ」があります。

しかし、このパソコンは「この PC では回復ドライブを作成できません」となります。

多くの場合、出荷時に recovery image パーティションが作成されているようですが、このパソコンは省かれています。

これが理由のようです。

また、recovery image パーティションが存在しても、同様に「回復ドライブを作成できません」となることがあるらしく、「Windows RE の状態が Disabled」と言うことがあるようです。

8. システム修復ディスク

「すべてのアプリ」「windowsツール」に「コントロールパネル」があります。

「システムとセキュリティ」「バックアップと復元(windows7)」「システム修復ディスクの作成」で起動可能メディアが作れると思ったのですが、これはCD/DVDのみで、USBメモリは対象ではないようです。残念ながらこのパソコンにはCD/DVDがついていません。USBで外付けなら可とは思いますが。

9. Windows11のインストールメディア

microsoftのサイトからWindows11のインストールメディアの作成ツールがダウンロードできることを知ったので試してみました。

問題なく起動するので、インストールではなく、小さく表示されている「修復」機能を使います。

10. WindowsPE

今回は試していません。

11. Grubの削除

今回は、1度だけGrubのコマンドラインを使用しただけで復旧しました。Grubがメインのディスクに残っていますが問題はありません。

これを、削除したければ、Windows11のインストールメディアで起動して「修復」を行えば良いものと思います。


題目一覧へmikeo_410@hotmail.com(updated: 2022/09/08)