2016/01/27

Nexus 7(2013): Bricked!?

ある日Nexus 7 2013のタッチパネルが全く反応しなくなった。
まぁ、タッチパネルの反応が悪くなることは時々あるので、なんとはなしにリブートしたら・・・・・Googleロゴを表示したままいつまでたっても起動しない。
おいおい・・・ orz.....

最近、Nexus 7で「起動しなくなる(起動時にGoogleロゴの状態でスタックする)」という現象が流行ってるらしい。
Several users reporting ‘bricked’ Nexus 7 devices following Lollipop OTA updates, Nexus 5 seemingly affected too
基本的には「Factory Imageで上書きすれば復旧可能」という話らしいことが解った。
How to Unbrick Google Nexus 7
だがしかし、ググってみたら同じ現象で復旧できなかったヒトのブログが・・・
さようなら、Nexus 7。さようなら、Android。
ぐぬぬ・・・諦めるしかないのか!?

まぁ、完全に症状・状況は一致しているワケだけど、この資金不足の中で新しいタブレットを買うってのもアレだし、かといってタブレット無し生活に戻るってのもまたそれはそれでストレスなので、ダメモトでUnlockしてみることにした。

まぁBootloaderは元気だったワケなので、fastbootツールでの操作は可能だった。上の実例では「そもそもUnlockができなかった」というコトだったんだけど・・・諦めの気持ちを持ちつつ"fastboot oem unlock"してみると・・・
なんということでしょう、あきらめの気持ちとはうらはらに、無事にUnlockできるではありませんか!!←びふぉーあふたー風で

Unlock操作はユーザーデータの消去を強制されるんだけど、その操作も無事に越えられたっぽい。もしかしたらここまでで起動したりするんじゃないの?と思ったけど、それはダメだった。なので、Factory Imageを持ってきて上書きしたところ、無事起動するようになった。

本当はちょっと古めのイメージ(問題が起きない可能性が高い)をもってくるべきだったかもだけど、面倒なので最新のものにした。噂通りファームの問題であれば、またBrickするかもしれないけど、逆にそれで原因が特定されるしw

ということでデータが全部消えたのはアレだけど、新しいのを買うのは避けられたから良しとしよう。
あらかじめUnlockしてある端末は、これで復旧できる可能性がある。Unlockしてない端末の場合は、そもそもUnlockがうまくできない可能性が否定できないが、そこさえ越えられればなんとかなるんじゃないかな。

にしてもGoogleもAsusもちゃtのこの辺の情報はチェックしとけよーwww

2016/01/25

ThinkPad X1 Carbon 2nd Gen (20A7)をWindows 10とGentooのデュアルブートにする

一昨年の春に買って、当初は初期不良っぽいトラブルもあって手元にない時期がずいぶんあったけど、だいたい1年ぐらい前にちゃんとGentooを入れて以来りっぱなLinuxマシンとして稼働してきたThinkPad X1 Carbon (2G)。

Windowsはイラネーダロな勢いでディスクスペースをまるごとGentooに割り当てていたワケだけど、せっかくQtがWindowsPhoneをサポートしているから何かしてみようにもWindowsの開発環境がない・・・

ま、開発って言ってもマトモなアプリが作れるスキルがあるワケでもなく、ちょこちょこっと動かしてみたいだけなので、新しいPCを買いたいという衝動をなんとか抑え込んで今一度X1 CarbonにWindowsな環境を取り戻してみることにした。
いろいろトライしながらやっててほとんど記録取ってないので、具体的な情報じゃないからそのつもりで。←誰に言ってるんだ?

あ、そうそう、同じ環境で使ってるヒトなんてそうそう居ないと信じてるけど、真似して壊れてもおいらは責任負えないからよろしくね←おやくそく。

1. とりあえずバックアップ
いろいろ細かくパーティション切るのは面倒くさかったので、現状でパーティションは3つだけ。

  1. efi
  2. swap
  3. rootfs

なのでrootfsだけバックアップすればいい。
gentooのインストール時に使ったSystemRescueCD(efi対応。どっかのサイトを参考にして作ったんだけど、どこだったかなぁ・・・??)でブートして、/dev/sda3を/mnt/gentooに、バックアップ用のメディア(今回はTranscend製128GBの外付けSSD)を/mnt/windowsにマウントして、"tar cvjpf"でtarballに固めておいた。
% mount /dev/sda3 /mnt/gentoo
% mount /dev/sdc1 /mnt/windows
% cd /mnt/gentoo
% tar cvpjf ../windows/rootfs.tar.bz2 .

2. リカバリ
そもそも今の構成のままrootfsのパーティションを縮小して空けたスペースにリカバリなんていう事ができれば良かったんだけど、それはできないっぽかった。(新規インストールならできたかもしれない・・・)
というワケで先にWindows環境を作り直す。リカバリは購入直後に作ったリカバリメディアから「出荷時状態」に戻すだけ。楽ちん。

3. Linux用ディスクスペースの確保
Windows 8.1な環境を再構築して「ディスクの管理」から状態を確認したところ以下の4つの領域に分けられていた。
  1. 復旧用のスペース?
  2. efi領域
  3. Windows用のメインスペース
  4. OEM用?
4つめの領域の用途がよく解らないけど、多分リカバリイメージを入れてあった領域じゃないかな。リカバリメディアを既に作成しているせいか、中身が入っているように見えない。
いずれにしてもここら辺りを参考に「ディスクの管理」画面の3の領域を右クリックして「領域の縮小」を選択し、メインの領域が約100GBぐらいになるように調整。すぐに適用されて、ディスクスペースが100GBぐらいになる。最近のWindowsは割と優秀だな。

4. Gentoo環境を復旧する。
SystemRescueCDでブートしてGentoo用の領域を確保する。
partedには以下の領域が示されている。(確かこんな順番だった)
  1. 復旧用?
  2. efi領域
  3. 「領域の縮小」で削り出した空きスペース
  4. Windows用のメインスペース
  5. OEM用?
"rm"コマンドで3と5を削り、swapとrootfsの領域を作る。efi用の領域は既にあるので作り直す必要はない。
% parted -a optimal /dev/sda
(parted) rm 5
(parted) rm 3
(parted) mkpart primary xxxxx xxxxx
(parted) mkpart primary xxxxx -1
(parted) name 5 swap
(parted) name 6 rootfs
(parted) q
% mkswap /dev/sda5
% mkfs.ext4 /dev/sda6
あとは新たなrootfs領域である/dev/sda7を/mnt/gentooに、1で使ったバックアップメディアを/mnt/windowsにマウントして、"tar xvjpf"で/mnt/gentoo以下にファイルを書き戻す。(通常のGentooのインストールでやるtarballの書き込みと同じ)
% mount /dev/sda6 /mnt/gentoo
% mount /dev/sdc1 /mnt/windows
% cd /mnt/gentoo
% tar xvjpf ../winodws/rootfs.tar.bz2
ファイルの展開が終わったら/dev/sda2(リカバリした時にできたefi領域)を/mnt/gentoo/boot/efiにマウントし、proc、/sys、/devを/mnt/gentoo以下にマウント(バインド)してchrootする。
% mount /dev/sda2 /mnt/gentoo/boot/efi
% mount -t proc proc /mnt/gentoo/proc
% mount --rbind /dev /mnt/gentoo/dev
% mount --rbind /sys /mnt/gentoo/sys
% cd /mnt/gentoo
% chroot /mnt/gentoo /bin/bash
% source /etc/profile
まずはfstabの中身を修正しておこう(efi、swap、rootfsに割り当てるパーティションのUUIDを適切なものに書き直す)。
おわったらefiにgrubを登録する。
% grub2-install --target=x86_64-efi --efi-direcotry=/boot/efi --bootloader-id=Gentoo
% grub2-mkconfig -o /boot/grub/grub.cfg
旧来の「デュアルブート環境」であれば、ここら辺りでgrubからWindowsを起動できるよう設定するところなんだけど、今回ここの部分はefiが担当してくれるので何も考えずにGentooが起動するように設定すればいい。

5. リブート
再起動してLenovoのロゴが表示されたら「Enter」→「F12」で起動ディスクのセレクションができる。ここに「Gentoo」と「Windows Boot Manager」が仲良く並んでいるはずなので、起動したい方を選ぶ。
後からGentooを登録した(しなおした)せいかGentooの方がリストの上に居るので、デフォルトではGetnoo、ブートセレクトすればWindowsという状態になっている。

ここのところは「最後に選択した奴が一番上に来る」とかして欲しいところだなーと、密かに思ったりしている・・・というのも、この後Windows 8.1をWindows 10にアプデしたんだけど、何度か再起動がかかった時にうっかり放置していつのまにかGentooの画面になってる・・・みたいなことがあった。ちょっと勘弁してほしかったりする・・・
(まぁ、今考えたらインストールしている間だけでもブートの優先順位変えればよかったのかもだけど、どうやって変えるのか調べてないし、終わったからまぁいいや←ぉぃ)

6. ってことで
無事にデュアルブートになった。
Windows 10へのアップグレードでは上に書いた通り再起動をずっと監視してなきゃいけなかったり、アップグレード後にgrubがエラー吐くようになったのでブートローダを再インストールしたりと若干バタバタしたけど、現在は概ね問題なく稼働中。ディスクスペースはWindows 10が100GB、Gentooが140GBぐらいの割り当てだけど、まぁなんとか足りてる感じ。

いろいろ試しながら確認しながら作業したから、結局たったこれだけの作業に丸一日かかってしまってちょっと疲れたけど、せっかく手元にLumiaが居るのでまぁぼちぼちいろいろやってみようと思ってる。

あー・・・でもつかれたなー・・・

2016/01/20

Jolla: Firmware Update 2.0.1.7 (Early access release)

Jollaは昨年末に資金面でいろいろバタバタしてたって話は聞いていて、特にTablet回りでの話ではOS開発にものすごくコストかかっちゃってーみたいな感じの話があったから、もしかしたらしばらくアップデートは停滞するのかもなーとか思ってたんだ。

思ってたんだけど・・・

ごめん。想像以上に頑張ったんだね、Jolla!
ってことでOSのアプデがキタ。

[release notes] 2.0.1/Taalojärvi [Early Access]

Early Accessだけど、2.0.1シリーズがリリースされたらしい。
とりあえずアップデート。
リリースノートによると、主な変更点はこんな感じ。

  1. Dropbox / OneDrive (のアカウント)と画像をシェアできるようになった。
  2. ネイティブアプリからの「共有」先としてAndroidアプリを選択できるようになった。
  3. 連絡先の(個別の)表示のところに直近のやりとり(メッセージ、メール)が表示されるようになった。
  4. パスワード入力フィールドの入力内容の可視化ができる(?)[Allow toggling password text visibility in password fields across the OS]
  5. イベントビューのショートカットメニューからイベント設定に飛べるようになった。
  6. ホームスクリーンのフリック操作の感度がよくなった(?)[Flicking between Homescreen views made easier]
  7. 「信頼されないアプリ」のインストール時にJollaアカウントが不要になった(?)[Allow installing untrusted software without Jolla account]
  8. タブレット:Bluetoothのペアリング画面とファイル転送ダイアログのランドスケープ表示がサポートされた。
  9. 端末からSDカードのフォーマットができるようになった。

なんかだいたいこんなのがハイライトらしい。後はたくさんバグフィックスしたとか。

1に従って設定→アカウントのところにDropboxとOneDriveが追加されてるんだけど、もしかしてDropboxの方は二段階認証に対応してないのかな??
アカウントパスワードを入力して認証開始した段階でエラーが出て、紐付けができない。

OneDriveの方は問題なくイケたんだけど、画像を共有しようとした時にOneDrive側のフォルダが"CameraRoll"に固定になってる(保存先を選択できない)ように見える・・・
まぁ、使えるのは使えると思うけど、もうちょっと柔軟性が欲しいかな。

とりあえずEarly AccessだからまだBuggyなところもあるかもだけど、なによりもちゃんとOSの開発が進んでいたことが解ったことが何よりもうれしいところだね。

タブレットの方ものんびり待ってるから、よろしくね?>Jollaさん

2016/01/03

明けました!2016年!

明けました。

ま、例年通りはりきらない程度にぼちぼちやっていこう。

年末はJollaのフリック入力のエントリを書きつつパッケージにしてみる努力をしてて、まぁ一応「Patchmanager」対応のパッケージを作ってみた。さーて、どーすっかね、あれ。

で、例年通り箱根を(テレビでだけど)見た。いやー、去年初優勝した青山学院、今年は1区から一度も1位を譲らない「完全優勝」。圧巻だったねー。確か去年のインタビューで「優勝は来年以降の予定だった」みたいなことを言ってた気がするんだけど、そういう意味でも今年はホントに「強い」チームだった。

往路は1、3、4区で区間賞。特に4区の田村選手は去年同じ区間を1年生ながら区間新で区間賞を取った選手。5区の山登り、去年圧巻の走りをした神野選手は2度の疲労骨折など怪我に泣かされてたって話だったけどこのレースにしっかり間に合わせてきてて、区間2位の快走でトップをキープ。2位の東洋に3分程の差をつけて往路優勝!

そして注目の復路、先陣を切る6区は今回唯一の1年生・小野田選手。直前まで笑顔を見せるリラックスした状態から、なんと区間記録まであと1秒という58分32秒で7区につなげる快走!区間賞もあげたいぐらいの快走だったけど、この区間、日体大の秋山選手が区間記録を20秒以上縮める58分09秒で区間賞を奪取!!この人の走りもすごかった!

そしてその後も7区、8区、10区と区間賞を取る快走を見せて1区から一度もトップを譲らない(大会史上実に39年振りの)「完全優勝」!

2位東洋、3位駒澤ともに1区での出遅れがあったものの、東洋は2区で、駒澤は5区でそれぞれ2位、3位になった後は、他を寄せ付けず順位をキープして走り通した。残念ながら今年は首位青山学院をもう一つ脅かすような事ができなかったものの、それぞれのランナーが持てる力を十分に発揮した感じがした。すばらしい。

その他にも沢山ドラマがあって書ききれないけど、今年も20校+学連選抜の選手のみなさん、および大会スタッフのみなさん、本当におつかれさまでした(ぺこり)。

つーワケで、今年も箱根が終わった。
去年、一昨年とこの後端末をポチったらしき記録が残っているが、今年は資金難なのでパスする予定。ってか、PreOrderでJolla Tabletをポチってるワケなので、気長に届くのをまってみるかな。他にもちびっと投資(?)してるヤツがあるので、ぼちぼち入ってくるはず。ま、入ってくればこのブログで紹介することもあるかもねw

さて、とりあえず正月の休みは今日を入れてあと2日。休みの間に去年書いたフリック入力用のspecファイルとパッケージ作成用のスクリプトをちょっと手入れしておこうかな。

という事で、2016年もよろしくです。