Current filter: »grub2« (Click tag to exclude it or click a conjunction to switch them.)
May 14, 2023
TinyCorePure64で、UEFI対応のPCで動くTiny Core 64をUSBメモリにインストールする
前説
今回は、いよいよオーディオからは縁遠いので、pcのカテゴリーに入れている。
(17日の時点で、読みにくいな、分かりにくいな、と思ったところを多少書き直した。内容は変わっていない。)
前回、うちで使っているTiny Core 64-11.1をインストーラーに転用して、UEFI対応のTC64-14をUSBメモリにインストールした。
しかし簡単にインストーラーに出来るTCを持っている人はそういない。
Tiny Core Linuxのサイトからダウンロードできるものと最小限の機材で、UEFI対応のTCを作るにはどうするのがいいのか、今回はそういうことを考えてみた。
つまり、TinyCorePure64-14.0とPC1つと有線LANのネット環境で、どうしたらいいかということだ。
下記urlからTinyCorePure64-14.0.isoをダウンロードできる。
http://tinycorelinux.net/14.x/x86_64/release/
USBメモリなりに焼いて、ブートする。
HP ProBook 450 G9だとgrubのブート画面が出るんだけど、そこでenterを押したらモニターが真っ暗になる。
ここで「sudo reboot」を打つとPCが再起動するので、OSは起動していることが分かる。
しかしこれでは使えない。
http://forum.tinycorelinux.net/index.php/topic,25015.msg159414.html#msg159414
TCのフォーラムに似たような事例が上がっている。
BIOSの設定で解決した事例のようだけど、うちのケースはどうも違うようだ。
ここではgrub画面から設定変更して起動させる方法も書かれている。これも、うちでは効果は無かった。
結局、今までのところ、450 G9でTinyCorePure64-14.0を起動したときに正常に表示させる方法は発見できていない。
ProBook 450 G3だったら、BIOSのBoot Menuから「Legacy」を選択すると普通に起動できる。
実は450 G3、普通に起動できた後、ちょっとした手数で比較的簡単にUEFI対応のTC64をUSBメモリにインストールできることが分かった。こうして作ったTC64-USBメモリは、450 G9で普通に正常にブートできる。
だから今回は、ProBook 450 G3で、450 G9でも使えるTC 64-14.0を作る方法の記録、ということになる。
以下に記載。
インストールに使うTinyCorePure64-14.0を450 G3で起動
先ず、「TinyCorePure64-14.0」のisoファイルをダウンロードしUSBメモリに書き込みPC(450 G3)に刺す。
下記からダウンロード。
http://tinycorelinux.net/14.x/x86_64/release/TinyCorePure64-14.0.iso
今回は、インターネットに有線LANでつながる環境が必要。
TCのサーバーからダウンロードするものがあるからだ。
PC起動、escキー、f10キーからBIOS設定画面に移行。
Advanced画面を開く。
Secure Boot Configurationから、Configure Legacy Support and Secure Boot を「Legacy Support Enable and Secure Boot Disable」に設定。
Boot Optionから、起動優先順位でUSBを上げる。
Main画面を開き「Save Changes and Exit」を選択。「Yes」をクリック。
PCが再起動。
grubの起動画面が表示される。
(BIOSを設定済みであれば、f9キー、Boot Menuからだけで起動できる。)
今回、450 G3だからBIOS設定はこんな流れだが、当然他の機種なら違ってくる。

画像はスマホで撮った写真からトリミングしたもの。
ブートする方法が4つ選択できる。画像では「waitusb=5」を選択している。
そのほうがゆっくり慎重に起動するので無難、という感じ。
今回は、command line onlyではなく、GUIで操作するウィンドウマネージャを使う。
使えるPCが1台なので、sshで遠隔操作できない。
そうなると日本語キーボードを使えない。TinyCorePure64素のままでは設定できないのだ。USキーボードの設定のままで操作するので、キーボードを打つ操作は極力減らしたい。なしには出来ないが。
「enter」キーで、Tiny Core 起動。
ブート画面は以下。


上の画像は、OS起動後の画面キャプチャしたファイルなんだけど、実際の画像ファイルは、ブラウザ上の表示よりも縦尺が長い。
というか、実際のPCモニター上で、表示画面の縦を圧縮した表示になっているのだ。
だからスマホのカメラでとったBIOS画面と、OS起動後にデスクトップ(というのか?)をキャプチャした画像ファイルで、縦横の尺が違う。上下圧縮していない画像が、キャプチャ画像ファイルとして保存されるからだ。
今回、キャプチャ画像を、実際にPC上に表示された縦横比に近い感じで、ウェブブラウザ上で表示するように設定している。つまり、ブログ上ではキャプチャ画像ファイルの上下を縮めて表示している。
キャプチャ画像が大きすぎて読みにくいということもあったので。
インストールの準備 マウントツール、ターミナルを起動

まず、いくつかのソフトを起動。
上の画面、下の方、アイコンが7つ並んでいる。
右から2つ目、マウントツールをクリックしたら左上のカラフルな小さなウインドウが開く。これで、パーティションやドライブのマウント、アンマウントを管理できる。
OS起動の時点で、起動しているTCのディスク「sdb」が緑、マウントされていることが分かる。
sda1~3は、450 G3のHDDで、普段使っているOS(うちの場合Fedora。世間一般的なPCだったらWindowsが多いか)がインストールされている。
やろうと思えば、ここにTCをインストールできる。
もちろん、そんなことをしたら、HDDの内容はすっかり上書きされて消えてしまう。
つまり今回、ここは触ってはいけない領域、ということだ。
慎重を期すなら「fdisk -l」コマンドでドライブ構成を確認したほうがいいのだけど、今回は省略した。1~3があるのが普段使っているOSのドライブで、マウントされてるsdbで1しかないほうが現在起動しているTCだというのは分かるから。
画面の下、一番右の四角いアイコンで、ターミナルが起動する。上の長四角い灰色のウィンドウがそれだ。
ここからいろいろ操作する。
キャプチャ画面上、ターミナルに「tce」と入力している。入力後、enterキーで、ターミナル上でtceが動く。
tceは、Tiny Coreのソフトウェア管理・インストーラアプリだ。
インストールの準備 OSインストーラー(tc-install)と、grub2をインストール

キャプチャ画面、ターミナルウィンドウの表示。
tceが、スタンバイモード(とでもいえばいいのか)で起動されている。
Search、Provides、Keywords、Quit、と表示されているが、キーボードのキーを打つことで操作する。
Search の「s」を入力。

tce が検索モードになる。「tc-install」と打って、enter。

TCのリポジトリ上で、検索に引っかかったソフトが表示される。
(マウスの操作でターミナルのウィンドウを大きくしている。)
1. tc-install-GUI.tcz
2. tc-install.tcz
tc-installは、TC-OSのインストーラ。これがないとOSをインストールできない。
ちなみに「tcz」は、TCで使うソフトウェアを個々にパッケージ化したもの。tczの形でリポジトリに置かれているのをダウンロードするということだ。
今回使うのは「2」、ターミナル上で操作していく。「1」ならGUIで操作できるはずだが、今回は使ってない。意外と、ターミナル上で操作するのも簡単で不便ではない。
2 を入力し、enter。

tc-install.tcz の簡単な説明が表示される。
このソフト説明表示画面は、しばしば重要な内容が記載されていることがある。

ここで「q」を打つと説明表示からスタンバイモードに移行する。「i」キーで、先に検索表示したソフトのインストールが始まる。
インストール作業が進むに連れて文字列が上に上がっていく。
必要なアプリやライブラリのインストールが終わると、スタンバイモードに戻るんだけど、キャプチャはしていない。

tc-installのインストールは終了し、tceスタンバイモードから「s」で検索。
上のキャプチャ画面は、tceから「grub2」を検索し結果が表示された場面。
検索で引っかかるのは「grub2-multi.tcz」だけなので、ソフト選択画面は表示されず、すぐに説明画面が表示される。
この説明画面の文面は、あとで使う。詳しくは後述。

「q」キー、「i」キーで、grub2-multiをインストール。
関連するソフトも同時にいろいろダウンロード、インストールされる。
インストールが終わったら、「q」で、tce を終了。
これで、USBメモリにTC-14をインストールするために必要なアプリケーション2つを、TC-14にインストールした(ややこしい)。
ターミナル一番下の「clear」はターミナル画面を埋め尽くした文字をクリアし掃除するコマンドだ。
これでenterを押したら、画面がまっさらになる。
インストーラを起動、TC-OSをダウンロード

PCに、TCをインストールするUSBメモリスティックを刺す。
キャプチャ画面上、左上、マウントツールに、自動的に「sdc1」が追加される。
「sdc」がUSBメモリスティック、「sdc1」がUSBメモリスティック上のパーティションということだ。
ターミナルから、OSインストールのコマンド「sudo tc-instoll.sh」を打つ。

キャプチャ画面、ターミナル上、tc-instollが起動している。
インストールの設定開始。
Install from [R]unning OS, from booted [C]drom, from [I]so file, or from [N]et. (r/c/i/n): n
今回、ネット上のTiny CoreのサーバーからOSをダウンロードしインストールする。
ターミナル上、「n」を入力し、enter。
ネットインストールを選択したら最新のOSが自動的に選択されるらしい。
古いのを使いたければ、isoファイルをダウンロードして、USBメモリに書き込んだ上でPCに刺し「i」を選ぶんだけど、キーボードから手打ちでisoファイルの場所を指定しないといけないので手間がかかる。今回はしない。
Running OSという選択もある。
今回、インストールに使っているOSはTC64-14で最新なので、もしかしたらこっちの方が手軽だったかもしれない。
(実際やってみたら、全く手軽ではなかった。ネットインストールがずっと楽だ。)

ネットインストールで、OSを32bitか64bitか選択できる。今回は「64」で、enter。

ネットインストールなので、OSがダウンロードされる。
TC-OSインストール設定、インストール

ダウンロード終了したら、インストール方法を設定していく。
説明が英語で表示されている。Frugal、HDD、Zipの3通り。
Frugalが通常のインストールらしいが、説明を読むと、HDDがUSB接続のデバイスにインストールする場合で、今回はこれを選択。
ちょっと、まぎらわしい。
「h」、enter。

インストール先をどこにするか設定。
ここは要注意。
前述したが、本来インストールすべきではないところにインストールしたらすっかり上書きされて失くしてはいけないものが消えてしまう。
sdbとsdcは「On a removable device.」と表示されている。
間違えないように注意換気しているようだ。
今回は「sdc」にインストールするので、「3」、enter。
そうしたら、下記表示される。
Install Extensions from this TCE/CDE Directory:
追加インストールするものを、動かしているTCから移行できるらしい(触ってないので実は知らない)。
過去に使ってきた資産から使えるようにという配慮なのだろう。ただ、インストールするOSが異なるバージョンだった場合、tczのバージョンも違う可能性があるので、すんなり使えるとは限らないと思われる。
今回は何もないので、enterキーでいい。

フォーマットの選択。
今回はTCをインストールしたUSBメモリを起動ディスクにするので、あとから「grub2」をインストールする。
そのためにはフォーマットが「vfat」でなければならないようだ。
前に「HDD」を選択しているが、説明書きに「A single FAT partition will be made」と書かれてあった。だから、ここでvfat以外を選択したらどうなるのか分からない。
4. vfatなので、素直に「4」、enter。
Enter space separated boot options:
Example: vga=normal syslog showapps waitusb=5
これは、ブートローダーの設定らしい。
入れておいた方が無難かな、と思って僕はこのままコピペして設定している。
入力後、enter。
今回、GUIでTCを操作しているのは、マウスでこうした文面をコピペして入力できるのが便利だからだ。
繰り返しになるが、USキーボード設定なので、日本語キーボードでは使いにくい。
コピー&ペーストで済むのはかなり楽なのだ。
ただし、「ctrl + c」「ctrl + v」ではコピぺできない。マウスのホイールボタン、中央クリックでコピペする。これは個別の環境によって違うかもしれない。
Last chance to exit before destroying all data on sdc1
Continue (y/..)?
「y」、enter。
これでインストール開始。

キャプチャは、インストール終了した画面。
Press Enter key to continue.とあるので、enter。
UEFIに対応できるGrub ブートローダーをインストール

キャプチャ画面、ターミナルウィンドウが2つに増えている。
下のターミナルウィンドウで、tceを起動。

「grub2」を検索。
何をしようとしてるかというと、grub2の説明画面を表示しようとしている。
そこに記載された文面が必要なのだ。

表示を拒否された。
「can't open '/tmp/select.aus': Permission denied」とある。権限が無いということだ。
一旦、「q」を打ってtceを閉じて、「sudo chmod 777 /tmp/select.aus」と打ち込んで権限を変更してから、再度、tceを起動しgrub2を検索したら表示されるようになる。
ここらはキャプチャし忘れた。
どうも表示を拒否される場合とされない場合があるようで、理由がよくわからない。
拒否された場合は権限を変更したら対処できる。

下のターミナル画面、grub2-multiの説明が表示されている。
ここから、上のターミナル画面に、ブートローダーのインストールコマンドをコピペする。
前述したが、コピペはマウスの中央クリックで行う。
コピペしたコマンドはこれ。
sudo grub-install --target=x86_64-efi --boot-directory=/mnt/sdc1/EFI/BOOT --efi-directory=/mnt/sdc1 --removable
コマンドには「--target=x86_64-efi」と記述されている。
これは「UEFI」に対応するブートローダーをインストールする設定だ。
今回は、Legacy BIOSに対応しない、UEFIでしか動かない新しいPCで起動できるTCを作るのが目的なので、対応できるブートローダーをインストールする必要がある。
コマンドの文面には、インストール先が「/mnt/sdc1」と記載、設定されている。
今回、ブートローダーのインストール先はOSインストール先の「sdc1」なので、コマンドの文面を書き換える必要がない。当然、違うのであれば書き換える必要がある。
さて、enterキーでインストール開始する前に、sdc1をマウントする必要がある。
キャプチャ画面左上、マウントツールで「sdc1」をクリックし、緑に。
これでsdc1が「/mnt/sdc1」にマウントされ、インストールが可能になる。
これをしなかったら、インストールできないので注意。

enterキーで、インストール。
警告は表示されるが、「Installation finished. No error reported.」で、問題ない。
これでブートローダーがインストールできた。
しかしまだやることがある。
grub.cfg を設定
grub.cfg を設定しておかないと、ブートしてもうまくいかない。
新規OSインストールした「sdc1」にはgrub.cfgがないので作る。これも「sdb」のgrub.cfgから可能な限りコピペしていく。
一般的にはgrub.cfgはユーザーが弄るものではないようなんだけど、Tiny Coreの場合はユーザーが作る。

下のターミナルは、「sdb」側を表示。lessでgrub.cfgの内容を表示。
less /mnt/sdb/EFI/BOOT/grub/grub.cfg
上のターミナルは、「sdc1」側を表示し、ここでgrub.cfgをviエディタで作る。
vi /mnt/sdc1/EFI/BOOT/grub/grub.cfg

下から上に、コピペできるところはコピペして作る。
(viの使い方はここでは触れない。
と言いながら、書き忘れ。USキーボードなので「:」は「; + shift」で入力する。これで「:wq」が打てる筈。)
しかし実は、後で気付いたのだけど、vfatのフォーマットで作っているので、ふつうにUSBメモリをWindows PCとかにでも刺してファイル作成、編集が出来る。
viを使ってやるよりも、そっちのほうが楽な場合もあるかもしれない。
インストールに使ったTCをシャットダウン、インストールしたUSBメモリスティックから起動

これで一通り、作業終了。
上のキャプチャ画面下、一番左のアイコンをクリックするとPCをシャットダウンできる。

上の写真は新規インストールしたOSから起動したところ。
しかし、本当に出来るようにしたいのは、450 G9によるTC64インストールだ。
起動画面表示の方法は、今後、暇なときに探していきたい。
May 07, 2023
最新のノートPCを最新のTiny Core 64で起動する
前説
最新のコンピューターを使うには新しい知識が必要だ。それらはどんどん古くなる。
アップデートしないといけないんだけど、僕の場合はどこかに書いておかないと忘れるので備忘録として書いておく。
今回、オーディオの話はないんだけど、Tiny Coreはうちではオーディオ以外で使うことはあまりなさそうなので、オーディオのエントリーにしておく。
まず今回、HP ProBook 450 G9を入手した。
HPのネットショップで注文。
メモリはデフォルトの8GB DDR4-3200のままだが、CPUを「Intel(R) Core(TM) i7-1255U」に変更。最大4.7GHzで走る。
新品のPC購入、しかも10万円以上なんて、たぶんMacBook Pro (Mid 2010)以来じゃないかな。
450 G9、とりあえずTiny Coreを走らせようとして分かったこと。
ブートはセキュリティがかかっている。
流石、最新型だ。
セキュアブートをOFFにしないとUSBからは起動しない。
OFFにしていたら、元々インストールされているWindows11からは起動できなくなる。ONに戻したら起動可能になる。
ちょっと、ややこしい。
側から見ただけではONなのかOFFなのか分からない。覚えておくか、BIOSの確認が必要だ。
32bit OSは起動しない。
つまり、Tiny Coreのインストール用イメージである「CorePlus」は起動できない。
2019年10月のエントリー(http://blown-lei.net/endive/blosxom.cgi/audio_diary/20191027a.htm)に書いてある手法は、そのままでは使えないことが分かった。
途中、ProBook 430 G5も弄ってみた。
先ず、「TinyCorePure64-14.0」のイメージをUSBメモリに書き込み、PCに刺す。
PC起動、escキー、f10キーからBIOS設定画面に移行。
Advanced画面を開く。
Secure Boot Configurationから、Configure Legacy Support and Secure Boot を「Legacy Support Enable and Secure Boot Disable」に設定。
Boot Optionから、起動優先順位でUSBを上げる。
Main画面を開き「Save Changes and Exit」を選択。「Yes」をクリック。
PCが再起動。
grub2の起動画面が表示される。
この時点で「tc」が選択されている。enterキー。
Tiny Core 起動。
こんな感じ。
このようにBIOSを設定したら、起動できる。
f9キーからのBoot Menuではどうかというと、USBからの起動で「UEFI」と「Legacy」を選択できる。
UEFI-xxxx(USBスティック名)からだと、f9を推さなかった時と同じ流れで起動。
Legacy-xxxx(USBスティック名)を選択したら、grubの起動選択画面が表示される。enterで起動。UEFIで起動したときと表示のされ方が違う。
こんな感じで、TinyCorePure64は起動するんだけど、「CorePure64-14.0」は起動できない。
違いは「EFI」ディレクトリの有無。
このディレクトリの奥にはefiboot.imgやgrub.cfgがある。CorePure64には、これがない。
どうやら、新しい機械で起動するには、EFIに対応している必要があるようだ。
こうして起動した「TinyCorePure64-14.0」だけど、「読み出し専用」でブートされるので実質的には使えない。ソフトのインストールや設定が出来ない。
理由は分からないのだけど、これらのイメージは元々CD-R用らしく、使えるようにするには「インストール」する作業が必要なのだろう。
インストール用イメージである「CorePlus」はどうか。
電源ボタンを押すだけでは起動できない。
BIOSから起動する必要がある。
f9キーを押してBoot Menuを表示。
UEFIからは起動しない。「TinyCorePure64-14.0」とは挙動が違う。
Legacyを選択すると、TinyCorePure64と同じ流れで起動できる。違うのは、どのようなOS、window managerを使うかとか、CLI(最近はCUIって言わないのかな)で起動するか、などを選択して起動させることが出来ることだ。
ProBook 450 G3ではどうか。
これは以前から普段使い用になっている古めのノートPC。
TinyCorePure64、CorePlusは起動できる。
BIOSからのBoot Menu。
UEFI-xxxx(USBスティック名)を選ぶと起動しない。
Legacy-xxxx(USBスティック名)を選ぶと起動できる。OS起動の選択画面表示、選択、enterで起動。
CorePure64は、起動しない。
さて、新型のProBook 450 G9ではどうか。「TinyCorePure64-14.0」の起動を試みる。
PC起動、escキー、f10キーからBIOS設定画面に移行。
Advanced画面を開く。Boot Optionから、起動優先順位でUSBを上げる。
Secure Bootの設定はここにはない。
Security画面を開く。
ここにSecure Boot Configurationがある。クリックで設定画面に移行。「Secure boot」のチェックを外す。
Main画面、「Save Changes and Exit」。
再起動。
f9キーで起動を選択。
legacy UEFIという選択肢は、ない。
UEFIから起動したら、grub起動画面が表示される。430 G5のときと同じような画面だ。
enterキー。
画面が真っ暗なままになる。
家庭内LANを確認したらIPアドレスは振られていてpingは通る。だけどこれでは手も足も出ない。ブラックボックスみたいなものでOSが起動しているのかどうかも分からない。
(5月9日追記。真っ黒な画面のまま「sudo poweroff」を打ったらPCがシャットダウンした。OSは動いている。)
他に手は無いか。
Security画面から、TPM Embedded Securityの設定画面に。
TPM Deviceを「hidden」に。これで起動してみたら、「Tpm Ppi」という画面が表示される。
TPMが切れるけどいいか?AcceptならF1だと。F1キーを押す。
再起動。
grub起動画面表示、enterキー、画面真っ暗。同じである。
関係ないのなら、危なっかしいのでTPMの設定は戻しておく。
他にも、grub起動画面から選択項目を変えてみたり、grubコンソールからの起動なども試みたが、同じ。
CorePlus、CorePure64は起動しない。f9から選択しても結局蹴られる。
試みにFedoraのインストール用イメージをUSBメモリに書き込んで起動を試みたところ、Secure boot有効でも起動する。流石、Fedora。
ままよ、なにはともあれ、起動できるTiny Coreをインストールできるか、やってみよう、、、
やってみたらなんとかなった。
前説、ここまで。
最新のTCを、最新のPCで動かす
まず、うちのオーディオシステムに使っているTiny CoreをOSインストーラーにする。
うちのPPAPシステムは、Tiny Core Pure64-11.1で作られている。
それらはimgファイルにバックアップしてあって、USBメモリに書き込めば利用できる。これに「tc-install.tcz」をインストールしたら、OSインストーラーとして使える。
インストールに使うハードはUEFI、Legacy、両方使える環境が必要。
ProBook 430 G5を選択。
mpdサーバーのimgファイルをUSBメモリに書き込んで、ProBook 430 G5で起動。
BIOSからLegacyを選択。
sshでLAN経由でログインし操作する。
tceコマンドで「tc-install.tcz」をインストール。
もう1本、USBメモリを用意してFATでフォーマット。なぜFATかというと、grub2をインストールするから。
これを430 G5に刺して、fdisk -lでデバイスを確認。
コマンド「sudo tc-install.sh」を打ち、このUSBメモリにTCをインストールする。ネットインストールを選択したら、最新のTiny Core Pure64-14をインストールできる。
以下、経過。
tc@box:~$ sudo tc-install.sh > Core Installation. Install from [R]unning OS, from booted [C]drom, from [I]so file, or from [N]et. (r/c/i/n): n > The latest version is 14.0 Enter architecture (32)bit, (64)bit or (q)uit: 64 > Select install type for /tmp/net_source/corepure64.gz Frugal * Use for frugal hard drive installations. Note: You will be prompted for disk/partion and formatting options. HDD * Use for pendrives. Your BIOS must support USB-HDD booting. * A single FAT partition will be made. Note: Requires dosfstools extension. Warning: This is a whole drive installation! Zip * Use for pendrives. Drive will be formatted into two FAT partitions. * One small one for USB_ZIP boot compatibility, and used to hold Tiny Core. * The remaining partition will be used for backup & extensions. Note: Requires dosfstools and perl extensions. Warning: This is a whole drive installation! Select Install type [F]rugal, [H]DD, [Z]ip. (f/h/z): h > Select disk for corepure64 1. sda 2. sdb On a removable device. 3. sdc On a removable device. Enter selection ( 1 - 3 ) or (q)uit: 3 > Install Extensions from this TCE/CDE Directory: > Select Formatting Option for sdc1 1. ext2 2. ext3 3. ext4 4. vfat Enter selection ( 1 - 4 ) or (q)uit: 4 > Enter space separated boot options: Example: vga=normal syslog showapps waitusb=5 vga=normal syslog showapps waitusb=5 > Last chance to exit before destroying all data on sdc1 Continue (y/..)? y > Writing zero's to beginning of /dev/sdc Partitioning /dev/sdc Formatting /dev/sdc1 mkfs.fat 3.0.26 (2014-03-07) 1+0 records in 1+0 records out 440 bytes (440B) copied, 0.005070 seconds, 84.8KB/s UUID="E84A-CD33" Setting up corepure64 image on /mnt/sdc1 Applying syslinux. Installation has completed Press Enter key to continue. tc@box:~$
さて、最新の64-14をインストールしたUSBメモリが出来たら、ここから起動。
まだUEFIからは起動できない。
Legacyを選んで起動する。
パスワードを設定。
tceからopensshをインストール、設定、起動。
filetool.sh -bで保存。
LAN経由でログインし操作できるようにするのは、本体のキーボードが日本語キーボードとして使えないので不便だからだ。たぶんUSキーボードの設定になっている。「*」を打つのに「shiftと8」、「_」を打つのに「shiftと-」を打たないといけない。
ssh経由で操作したら、使い慣れた日本語キーボードを使うことが出来る。
これにtceで「tc-install.tcz」をインストール(後々、インストーラーとしても使えるようにするため)。
更に「grub2-multi.tcz」をインストール。grub-2.06がインストールされる(因みに64-11だったらリポジトリが異なるのでgrub-2.04だ)。
これだけでは、grub2は機能しない。
ブートローダーインストールのコマンドを打つ。
下記コマンドは、tceで表示されるgrub2-multi.tczの説明の中に表示された記述例に少し手を入れたもの。
tc@box:~$ sudo grub-install --target=x86_64-efi --boot-directory=/mnt/sdb1/EFI/BOOT --efi-directory=/mnt/sdb1 --removable Installing for x86_64-efi platform. grub-install: warning: cannot open directory `/usr/local/share/locale': No such file or directory. Installation finished. No error reported. tc@box:~$
警告出て大丈夫かと思ったが、警告だけでNo errorだからいいらしい。
再起動、UEFIから起動したら、grub2操作画面が表示された。grub2が表示されるということは、前進じゃん?
しかしbootを打っても起動しない。
何かエラーの表示の後で「booting in blind mode」と表示されて文鎮化する。
一般的には「grub.cfg」ファイルは、ユーザーがみだりに編集してはいけないということになっている。
しかしTiny Core Linuxは違う。フォーラムに書き込まれた内容によると、どうやらユーザーが編集して作ることになっているようだ。流石Tiny Core。
grub.cfgがないので、作る。
まずは、TinyCorePure64から流用し、あちこちネット上の情報を集め書き換え、下記の通り。
置き場は「EFI/BOOT/grub」でいいのだろう、と。
Legacy BIOSから起動して書き込む。「filetool.sh -b」を打たなくても保存される。
vi /mnt/sdb1/EFI/BOOT/grub/grub.cfg # Load Graphical modules insmod efi_gop set gfxmode=auto set gfxpayload=keep set gfxterm_font=unicode terminal_output gfxterm linux /boot/vmlinuz64 loglevel=3 vga=791 initrd /boot/corepure64.gz
これで、UEFIから起動したgrub2操作画面から「boot」を打つとOSが起動するようになった。
insmod の設定がないと、blind mode になるらしい。
ところが、Legacyで起動し動かしていた間にインストールしたopensshが起動していない。パスワードも失くしているようだ。
どうも、UEFIから起動するかLegacy BIOSから起動するかで、挙動が変わるらしい。
/opt/.filetool.lstも見当たらない。どこに行ったのか。というか、何で無くなってるのだろう。
仕方ない。
UEFIから起動したところから、環境を1から作り直してみる。どうなるんだろう、、、
残念。
何故か解らないが、構築した環境を保存できない。
これでは使えない。どうなってるんだろうかな、、、
ここからフォーラム等々調べて、grub.cfgの記載は下記の通りになった。
loadfont unicode insmod all_video terminal_output gfxterm linux /boot/vmlinuz64 loglevel=3 waitusb=5 vga=791 initrd /boot/corepure64.gz boot
waitusb=5 が無かったら、OS起動時にUSBメモリから読み込まないものが出るらしい。あるべきものが無いままにOS起動するので、パスワードを紛失したりtceでインストールが出来なくなったりするらしい。
記載追加することで、Legacyで起動したときと同じように問題なく動くようになった。
最下行に「boot」を追加。
これで、grub2操作画面にならずにOSが起動するようになった。
sshからrebootを打てば再起動してそのままsshで再ログインできる。棚の下に押し込んだままで再起動をかけることが出来るということだ。利便性は大きく向上する。
ProBook 450 G9でも動くかな、、、動きました!ミッションクリア!
しかし今回、なんとかなったけど、UEFIから起動するしかない、最新の機械しかない環境で、TCを動かそうとしたらどうしたらいいのだろうか。何か方法はあるんだと思うけど、未確認。