03. Pinebook が文鎮化したとき

2017/07/06 -- Posted by : bitset

概要


Pinebook の設定ファイルを *ちょっと* 間違っため起動できなくなり文鎮化してしまいました。
復旧までの道のりを記します。

 

きっかけ: 外部モニタを繋ぎたい


PinebookにはminiHDMIポートがあります。 当然、 Dualモニターで使おうとHDMIを接続しました。

hdmi.jpg

しかし、外部モニタを認識しません。

monitor.png

どこで設定してるんだろうと探すと、 /boot/uEnv.txt に以下の記述がありました。

20: # disp_mode=screen0 or screen1 or dualhead or xinerama or clone

これを

20: disp_mode=dualhead

と変更して再起動すると、、、

boot.jpg

ここから先に進まなくなりました。 時々再描画しているので中で再起動を繰り返してるようです。
ということで、Pinebook が文鎮化しました。(ワタシも文鎮化)

 

復旧方法を探す


**再インストールだけは絶対嫌!**

ここでラズパイだったら microSDを取り出し、PCでマウントして設定を戻せばOKですが、Pinebook のブートデバイスは 内臓のeMMC です。 なんとか eMMCの /boot パーティションにアクセスし設定を元に戻さないといけません。

中身はPINE64のボードなので、PINE64関連で調べてみると次のページに辿り着きました。

PINE64 - Main Page - Simple Step to Image Your MicroSD​

http://wiki.pine64.org/index.php/Main_Page#Simple_Step_to_Image_Your_MicroSD

ここに書いてある

PINE64 Installer

https://github.com/pine64dev/PINE64-Installer/blob/master/README.md

のリンクを開くと、一縷の希望が!

pine64-installer.png
 

復旧DISKの作成


上記のページの Download -> Latest Version

https://github.com/pine64dev/PINE64-Installer/releases/latest

のリンクから 64bit Linux版をダウンロードします。

downloadx640.png

ダウンロード出来たら、解凍して実行します。

$ unzip pine64-installer-2.0.0-beta.2-linux-x64.zip
$ ./pine64-installer-2.0.0-beta.2-linux-x64.AppImage 

 

(起動直後の画面)

installer-1x640.png

 [Choose an OS] を選択し、

installer-2x640.png

  • Taget: PINEBOOK
  • OSイメージ: Ubuntu

を選択

installer-3x640.png

microSD(/dev/sdb)を書き込み先デバイスに選択し、  [Flash!]  を実行するとインストール(起動DISK作成) が始まります。

installer-4_640.png

  1. OSイメージダウンロード
  2. OSイメージ書き込み
  3. フラッシュ
  4. Vefiry

の手順を行うので時間がかかります。書き込みが終わっても結構待たされます。

Ubuntu のイメージは7.7GBあるので、8GB以上のmicroSDが必要です。(他OSは未確認)

 

復旧処理


作成した復旧DISK(microSD) を挿して電源を入れると、Ubuntuが起動します。

login.jpg

いつものデフォルトアカウント:pine64/pine64 でログインし、復旧を始めます。

最初に起動DISKのデバイス名、使用状況を確認します。

pine64@pinebook:~$ df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/root        7688408 1067244   6258264  15% /
devtmpfs          815488       0    815488   0% /dev
tmpfs            1018172       0   1018172   0% /dev/shm
tmpfs            1018172    8736   1009436   1% /run
tmpfs               5120       4      5116   1% /run/lock
tmpfs            1018172       0   1018172   0% /sys/fs/cgroup
/dev/mmcblk0p1     51082   23278     27804  46% /boot

 

起動した microSD は /dev/mmcblk0 として認識されているようです。
次に、内蔵eMMCを探します。

pine64@pinebook:~$ sudo fdisk -l
[sudo] password for pine64: 

Disk /dev/mmcblk0: 7.5 GiB, 8010072064 bytes, 15644672 sectors
...

Device  Boot     Start     End      Sectors   Size  Id Type
/dev/mmcblk0p1       40960   143359   102400   50M  c W95 FAT32 (LBA)
/dev/mmcblk0p2      143360 15644671 15501312  7.4G 83 Linux

Disk /dev/mmcblk1: 14.5 GiB, 15518924800 bytes, 30310400 sectors
...

Device  Boot   Start     End   Sectors  Size  Id  Type
/dev/mmcblk1p1       40960   143359   102400   50M  c W95 FAT32 (LBA)
/dev/mmcblk1p2      143360 30310399 30167040 14.4G 83 Linux

 

eMMCは /dev/mmcvlk1 でした。 (容量的にも合ってます)
/dev/mmcblk1p1 が FAT32 なので /boot  です。 ここをマウントすれば /boot/uEnv.txt を編集できるハズです。

$ mkdir /tmp/hoge                                              ....  マウントポジションを作成し
$ sudo mount  /dev/mmcblk1p1 /tmp/hoge/       .... eMMCをマウント
$ sudo vim /tmp/hoge/uEnv.txt                           .... 設定ファイルを修正(元に戻す)

 

無事編集できました。シャットダウンして 復旧用DISK(microSD)を抜きます。

$ sudo sync
$ sudo shutdown -h now

 

microSDを取り出して、再び電源を入れなおすと無事起動し、文鎮からPinebookに戻りました。

 

最後に


今回作成した microSD は復旧用DISKとして保管しておくことにしました。

Pinebookユーザーの方は、心に余裕があるうちに復旧用DISKを作成しておいたほうが良いと思います。
 

- 以上 -

Share:

Most Recent Posts

07. ラズパイでフレームバッファ #1

ラズパイの3.5インチLCDに画像表示を行います。

06. ImageMagick で帳票作成 (データ作成編)

jinja2を使って、JSONファイルをImagemagick用データに変換します。

05. ImageMagick で帳票作成 (実践編)

Imagegagick を使って、業務に耐えうるレベルのPDF帳票を作成します。