
久しぶりにCloud Ready (Chromium OS)を使ってみようと思ってインストールしようとしたのだが、失敗した。USBメモリに書き込んだイメージでCloud Readyを起動して使うことは問題ないのだが、HDDにCloud Readyをインストールしようとするとダメなの。
Cloud ReadyのHDDへのインストールでは、GPT周りのエラーが出て失敗する。ハードディスクのGPTを全て削除してローレベルフォーマットをしても同じ。インストールしようとしているPC自体が元からEFIかGTPパーティション周りに問題ありでPC-BSD(オワコン)など同様にインストールできないOSがチラホラ。しかし、Cloud Readyは以前の記事の2018年夏頃のバージョンでは正常にインストールできてたのに・・・
以前に触った別のChromium OSのArnoldTheBats World of Whimsyも試してみたが、こちらはUSBメモリで起動できるのはもちろんHDDにインストールすることにも成功した。これは以前ももちろん成功している。
Chromium OSを触りたいという欲求であれば、正常にインストールできたArnoldTheBats World of Whimsyを使い続ければよいのだが、今回はCloud Readyの気分だったので、よりによってCloud Readyの方がインストールできないということで大変気分を害してしまった。
どうするか・・・
「Cloud Readyが使えないならChrome OSを使えば良いじゃない?」これだ。(ヤケクソ)
この記事の内容を行うにはChrome OSをインストールするPC(HDD/SDD)とは別にLinuxの動くPCが1台必要です。また、Chrome OSをインストールするPCによってはこの記事と同じ作業だとUEFI絡み等でChrome OSが起動しない場合があります。(この記事とは違うやり方でないとダメかも)
Brunchの準備
Linux PCでの作業:
Chrome OSをPCにインストールするにはBrunchが必要。GitHubのBrunchの説明を読む。これがほぼ全てのドキュメント。解りやすく書かれているのでそのとおりにするだけ。
https://github.com/sebanc/brunch
Brunchの在り処
https://github.com/sebanc/brunch/releases
バージョン(r)は別途入手するChrome OSのリカバリイメージのバージョンに合わせれば良さそう。
ChromeOSリカバリイメージの入手
これもBrunchのドキュメントに書かれている。
「rammus」は、第4世代IntelCPU以降を搭載したデバイスに推奨されるイメージ「samus」は、第3世代IntelCPU以降を搭載したデバイスに推奨されるイメージ「zork」はAMDRyzen3XXXに使用するイメージ「grunt」は、AMD StoneyRidgeに使用するイメージ
- 「rammus」は、第1世代〜第9世代のIntel CPUに推奨されるイメージ
- 「volteer」は第10世代と第11世代のIntel CPUに推奨されるイメージ
- 「zork」はAMD Ryzen用イメージ
- 「grunt」はStoney Ridge&Bristo lRidge (AMD 第7世代APU)用イメージ
リカバリイメージの在り処
https://cros-updates-serving.appspot.com/
https://cros.tech/
今回インストール予定のノートPCはCeleron B820というSandy Bridge世代CPUを搭載したもの。つまり第2世代のCoreの中でもザコ中のザコ。上の種類を見ると古すぎて対象外。
そうはいっても動くくらいは動くだろうということでダウンロードしたのは「sums」のPinned 87、ファイル名は
chromeos_13505.111.0_samus_recovery_stable-channel_mp-v3.bin.zip
このファイルの中にイメージファイルが(1ファイルだけ)入っているので解凍する。(どこか、わかりやすいPathに、できれば新しいディレクトリを作成してその中に)
Brunchのtar.gzファイルもChrome OSのリカバリイメージファイルを置いたのと同じディレクトリに解凍する。(ファイルが4つほど出てくる)
GPTパーティションを触るのでそれ用のパッケージを追加する。下はdebian/ubuntu系の例。
$ sudo apt-get install cgpt
ここまで前準備完了。
ハードディスク/SSDの準備
Chrome OSをインストールする予定のノートPCのハードディスクを取り外す。20年以上前はノートPCの裏蓋が素人には開けられないような酷い造りの機種もあったけど、最近のノートPCは裏面でメモリやストレージの部分だけフタが外せるようになっていて脱着が簡単なのが多い。作業時は先にバッテリとACアダプタの取り外しを忘れずに。
上の画像のノートPCの場合はHDDを固定するための保持金具があったのでそれも外した。機種によっては保持金具が無いものも。HDDマウンタに刺さるなら外さなくても問題ない。
取り外したHDDをUSB接続タイプの外部HDDマウンタに嵌める。画像のHDDマウンタは3.5インチHDDと2.5インチHDD/SSD兼用なので2.5インチHDDを乗せると凹みがスカスカに余っているけどSATAのコネクタと電源の部分は3.5インチも2.5インチも同じ。このHDDマウンタのUSBケーブルをLinux PCに接続する。USB接続タイプならケーブルの抜き差しはあまり考えずに行って良いけど、eSATAの場合は接続先のPCの電源を落として接続、シャットダウンしてから切断の手順。(一部のPnP対応機器を除く)
Chrome OSのリカバリイメージの書き込み
今回はノートPCのHDDを取り外してUSB外付けでLinux PCに接続し、このHDDにChrome OSを書き込む。そこで重要なのはLinux側で外付け状態になっているノートPCのHDDがどういうデバイス名として認識されているか。これを間違うと当然書き込むことができないだけでなく関係ないHDD/SSDのデータを壊してしまうことになるかも。ハードディスク,SSD,メモリカード等であれば基本的には1台めが/dev/sda、2台めが/dev/sdbのようなデバイス名になる。(debian/ubuntu系Linuxの場合)
今回「がとらぼ」の中の人の環境では、Linuxの動いているPCのシステム用HDDが/dev/sda、USB外付けのノートPCのHDDが/dev/sdb。必ずこのデバイス名であるとは限らず、特にLinuxで動いているPCにOS用のSSDとデータ用のHDDが入っていて、外付けHDDが3つめのストレージであれば/dev/sdcかもしれない。また、デバイスによっては/dev/sdXですらないこともあるので確認大事。 ストレージの確認方法 (/dev/sdaを確認: これはLinuxのOSが入っているストレージを想定)
$ sudo fdisk -l /dev/sda
ディスク /dev/sda: 465.78 GiB, 500107862016 バイト, 976773168 セクタ
Disk model: Hitachi HDS72105
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: EA8B398F-7F4B-7B4E-87DF-A0DA0EAC2858
デバイス 開始位置 最後から セクタ サイズ タイプ
/dev/sda1 4096 618495 614400 300M EFI システム
/dev/sda2 618496 958313125 957694630 456.7G Linux ファイルシステム
/dev/sda3 958313126 976768064 18454939 8.8G Linux スワップ
2台めのストレージを確認するならsudo fdisk -l /dev/sdb
3台めのストレージを確認するならsudo fdisk -l /dev/sdc
Disk modelや容量やパーティションの種類を見ればある程度は何用のストレージか区別できる筈。
以下のインストール例ではLinuxのユーザーのホームディレクトリに「1」というディレクトリを作成して、そこにBrunchを解凍したものとChrome OSのリカバリイメージを解凍したものを置いたということで。
また、 /dev/sdb にChrome OSのリカバリイメージを書き込むということにする。(以下)
赤字の部分の1つめはChrome OSのリカバリイメージのファイル名、赤字の2つ目は書き込み先のハードディスクのデバイス名。
コマンド入力後「書き込み先のストレージの全てのデータが失われますが良いですか?」の質問が英語であるので yes を入力する。
foobar@neon:~/1$ ls -l 合計 3866636 -rw-rw-r-- 1 foobar foobar 498077789 3月 3 14:04 brunch_r87_stable_20210223.tar.gz 解凍後は不要 -rwxr-xr-x 1 foobar foobar 15021 2月 23 15:07 chromeos-install.sh -rw-r--r-- 1 foobar foobar 2320468480 1月 20 00:03 chromeos_13505.111.0_samus_recovery_stable-channel_mp-v3.bin -rw-r--r-- 1 foobar foobar 33554432 2月 23 16:35 efi_legacy.img -rw-r--r-- 1 foobar foobar 33554432 2月 23 16:35 efi_secure.img -rw-r--r-- 1 foobar foobar 1073741824 2月 23 16:35 rootc.img foobar@neon:~/1$ sudo chromeos-install.sh -src chromeos_13505.111.0_samus_recovery_stable-channel_mp-v3.bin -dst /dev/sdb All data on device /dev/sdb will be lost, are you sure ? (type yes to continue) yes umount: /dev/sdb: not mounted. WARNING: Primary GPT header is invalid WARNING: Secondary GPT header is invalid B2B85F83-A9C3-9C44-AE62-766884137300 start size part contents 0 1 PMBR (Boot GUID: B2B85F83-A9C3-9C44-AE62-766884137300) 1 1 Pri GPT header 2 32 Pri GPT table 19255304 605887096 1 Label: "STATE" Type: Linux data UUID: BCD917E2-5ACD-604C-8B32-18711C360657 2117638 65536 2 Label: "KERN-A" Type: ChromeOS kernel UUID: 17DF3785-DCA9-CF45-ACE0-F8F3D64B7C64 Attr: priority=15 tries=15 successful=0 10866696 8388608 3 Label: "ROOT-A" Type: ChromeOS rootfs UUID: 8F8366E4-90D4-2D47-A25D-63099E546FA7 2183174 65536 4 Label: "KERN-B" Type: ChromeOS kernel UUID: 60BF0B97-AAD7-6B46-BBB2-D78CE81D3020 Attr: priority=0 tries=15 successful=0 2478088 8388608 5 Label: "ROOT-B" Type: ChromeOS rootfs UUID: 80B6947B-75CF-5345-9483-28357B19E6C1 16448 1 6 Label: "KERN-C" Type: ChromeOS kernel UUID: E063D18E-E440-6842-B2E6-4336BA402558 Attr: priority=0 tries=15 successful=0 16456 2097152 7 Label: "ROOT-C" Type: ChromeOS rootfs UUID: B60320EC-494C-744D-A377-7DAFD7421C6A 2248712 32768 8 Label: "OEM" Type: Linux data UUID: 38B84FD4-F222-3C4E-AE10-D4ED39B76E95 2113608 1 9 Label: "reserved" Type: ChromeOS reserved UUID: 9356B253-1E00-5C4A-B44B-51EDCF9AD264 2113609 1 10 Label: "reserved" Type: ChromeOS reserved UUID: 1C5D2B5A-2825-754F-9218-4081CAC277E8 64 16384 11 Label: "RWFW" Type: ChromeOS firmware UUID: E576912C-B47F-1143-B5A6-2006430AD5FC 2412552 65536 12 Label: "EFI-SYSTEM" Type: EFI System Partition UUID: B2B85F83-A9C3-9C44-AE62-766884137300 625142415 32 Sec GPT table 625142447 1 Sec GPT header Writing partition 1 8.95MiB 0:00:00 [23.1MiB/s] [===========================================================>] 100% Writing partition 2 16.0MiB 0:00:00 [ 110MiB/s] [===========================================================>] 100% Writing partition 3 2.00GiB 0:01:05 [31.2MiB/s] [===========================================================>] 100% Writing partition 4 16.0MiB 0:00:00 [ 108MiB/s] [===========================================================>] 100% Writing partition 5 2.00GiB 0:01:04 [31.6MiB/s] [===========================================================>] 100% Writing partition 6 512 B 0:00:00 [1.08MiB/s] [============================================================>] 100% Writing partition 7 1.00GiB 0:00:23 [43.8MiB/s] [===========================================================>] 100% Writing partition 8 16.0MiB 0:00:00 [ 104MiB/s] [===========================================================>] 100% Writing partition 9 512 B 0:00:00 [1.11MiB/s] [============================================================>] 100% Writing partition 10 512 B 0:00:00 [ 925KiB/s] [============================================================>] 100% Writing partition 11 8.00MiB 0:00:00 [ 105MiB/s] [===========================================================>] 100% Writing partition 12 32.0MiB 0:00:00 [ 120MiB/s] [===========================================================>] 100% ChromeOS installed.GPT周りのエラーや警告表示が出たとしても無視で、最後の黄色字の部分(実際には黄色ではない)が表示されれば書き込み完了。
USBケーブルを外し、HDDマウンタの電源を切り暫く待ってからHDDをHDDマウンタから取り外してノートPCに戻す。
ノートPCの電源をオンにする。
Chrome OSを起動する
普通ならOSが起動するハズが、No bootable device ということで、ダメじゃんって思うが、これが古いPCの良くも悪くもある部分。
電源を入れ直し、[F2]でBIOSを起動する。イマドキはBIOSじゃなくてUEFIだろうけど、このノートPCは古いのでBIOS。
設定のどこかに「ブートデバイスを選択するメニュー」の「表示」「非表示」項目がある(かもな)ので、ブートメニューを表示できるようにする。このノートPCの場合は電源オン直後に[F12]でブートメニューを表示できるようにする項目があるのでそれをEnableにする。
BIOSの設定を変更したらSaveして再起動する。
電源オンまたは再起動直後に[F12]を押すとブートメニューが表示される。この画面では優先順位が高いのが1で低いのが3。1のDVD/CDにブートメディアが入っていればそれが起動する。なければ2番のハードディスクが起動する。しかし、先程はこの2番のハードディスクを普通に起動しようとしてNo bootable deviceになっていた。
そこで、[↑][↓]で3番のEFI HDD Deviceを選択して[Enter]を押す。このノートPCではこんな感じだけど機種により様々。EFIデバイスの選択項目が無いことも。そしたら違うやり方で。
今度はNo bootable deviceで止まらずに進んだ。(これもPCによっては必ず進むとは限らないのでスミマセン)
初回起動時はこの画像の画面を含みBrunch Frameworkの画面が幾つか長い時間(10分程度?)待たされる。操作の要求は無いのでひたすら待つだけ。初回以降は古い非力なPCで1分程度。
初回起動時はこの後Androidの初回設定のようなのが出るのでWi-Fiの設定をしたりGoogleのアカウントでログインしたり(確認認証も)幾つかの画面が表示されるので適切に入力する。
Googleアカウントでログインまで出来た状態。壁紙が緑のぐにゃぐにゃストライプみたいなのになってるけど、これは以前にCloud Readyで設定したものが勝手に反映されている。
Chromium OSで出来なくてChrome OSでできること。それがAndroidアプリの利用。当然Google Playも最初から入っていてそれが使える。Androidスマートフォンなどで購入したアプリも使える。(だから、スマホと同じGoogleアカウントを使うのがオススメ)
Chromeの設定の中に「アプリ」という項目があって、その中に「Android設定を管理」という項目がある。どう見てもスマートフォンなどのAndroid設定そのままだけど、これがAndroidアプリで使われる環境設定になるものっぽい。
Android用のゲーム。窓表示できるアプリもある。画像はR-TYPE Ⅱ。このゲームの場合は窓表示と全画面表示の両方が可能だった。なお、ゲームのコントロールはタッチパネルを想定しているゲームだとキーボードでは操作できない内容もある。このR-TYPE Ⅱ2だと[↑][↓][←][→]で移動が可能で、ポッドの脱着は[0]でできることが確認できたが、「弾を打つ(+波動砲)」はキーボードには割り当てられていないよう。自動連射が選択できるので弾を撃ちまくり続けるのは可能だが、ゲームとして難しい。
上の画像のピンボールゲームは全画面専用っぽい。このゲームの場合は左右の[Shift]キーでフリップを操作、玉を打ち出すのは[Enter]ということで一応遊べる・・・
かと思いきやフリップは左右の[Shift]同時押しがNGで微妙な操作が要求されるときに片側が押されている判定のせいでその反対側を撥ねさせることができないという大問題。つまり、指を離すのが遅れるとその反対側が操作できなくてボールロストになる。あと、台揺らし(ナッジ)が効かないっぽい。
やはりゲームとして無理。残念。
Androidでいうところのドロワーの画面。並んでるアイコンがAndroidでお馴染みのものばかり・・・
ほとんどPC版Androidといった感じ。Androidアプリが利用可能なのでChromium OSのようなアプリ不足で途方に暮れる感じはないのだが、ゲーム2つ試してみて「使いものにならない」こともあるということを理解した。
でも、面白いのは間違いない。暫くはいろいろ試してみようと思う。
お尋ねします。
私も同じようなSandy Bridge世代のノートにChromeOSをインストールしてみたのですが、No bootable deviceになりました。管理人様のようにEFIデバイスの選択項目は出ませんでした。ちなみに違うやり方とはどのような方法でしょうか、ご教授いただけたら幸いです。
PCの環境によって本当にバラバラなので見当もつきませんが、
まず、Secure Bootに対応しているUEFIだったら無効にしてください。本当に古いPCにはSecure Bootはありませんが、あるならこの無効化は必須です。
Boot Modeのような項目があってUEFIなどになっていたらLegacy Support (Legacy BIOS)などに変更してください。逆に、Legacy Support(Legacy BIOS)になっていたらUEFIに変更して試すのもアリです。
CSMの項目があるならそれを変更してみてください。
ストレージのモードがAHCIであるならIDEモードに変更してみてください。
BIOS/UEFIの変更後は保存して再起動してください。上の変更項目は全部まとめて変更して設定保存して再起動ではなく、1つずつ変更してみてダメなら戻して違う項目を変更してみる方が良いかと思います。
ノートPCのメーカーによってはBIOSの隠しメニューがあります。通常メニューではユーザーは殆どの項目が触れないよう表示されなくなっていて、隠しメニューでようやくいろいろ触れるようになります。AcerだとCtrl+sとか(全ての機種ではないかも)。
ここまででダメという場合は、LinuxのインストールでNo bootable deviceを解決する方法が参考になりそうです。「"linux" "No bootable device"」とか「"ubuntu" "No bootable device"」のようなキーワードでググってみてください。それを片っ端から試してみるとかでしょうか。
管理人様早速のお返事ありがとうございます!
アドバイスいただいたことやってみます。
どうもありがとうございました。