[FreeBSD-users-jp 96002] BIOS/UEFI, ThinkPad X230, lenovofix
丸山直昌
maruyama @ ism.ac.jp
2016年 12月 17日 (土) 16:35:44 UTC
丸山です。
このMLで特定のハードウェアの話をするのは好ましくない、と思いつつも、
Lenovo ThinkPad X230の話を書いてしまいます。というのは、X230ではLegacy
Boot mode と UEFI Boot modeの切り替えがBIOS設定画面からできるからです。
一台のマシンに二つの Boot Mode は不要だし、運用途中でBoot Modeを変更する
のも労力の無駄でしかないわけですが、ソフトウェアのテストや開発が目的であ
れば、一台で両方試せる方が楽とか、費用が安く上がる、という場合はあり得る
わけです。私は、何と3年以上も日常的に使っているThinkPad X230が切り替え可
能であることに先月になってやっと気が付き、急遽Biosのアップデート用ソフト
をlenovoのサポートサイトから手に入れて適用し、TrueOS11.0のテストに使い始
めました。その上 X230は内臓ada0 diskが脱着可能なSATA 600なので、7mm 2.5
インチSATA SSDと「X230用ディスクマウントキット」(1000円くらい)があると、
簡単に内臓ディスクが交換できて、これはテスト機としては申し分なしです。
http://download.trueos.org/master/amd64/TrueOS-Desktop-2016-12-15-x64-USB.img
を使ってこの X230に 11.0 を入れた結果を一部ここに書いておきます。このイ
ンストーラーは Legacy BIOS, UEFI どちらのモードでも起動でき、Legacyで起
動してインストール作業を行ったた場合には、Legacyで内臓ディスクから起動し
た場合にTrueOS11.0が動くようにインストールされ、UEFIで起動してインストー
ル作業を行った場合には、UEFIで内臓ディスクから起動した場合にTrueOS11.0が
動くようにインストールされます。内臓ディスクを、どちらで起動しても11.0が
動くようにすることは、原理的には簡単なことですが、それはインストーラーの
標準の機能としては用意されていません(それが有用なこととも、重要なことと
も思いません)。
以下、それぞれのモードでインストールした場合の内臓ディスクのパーティショ
ン分割状況と、 fdiskの出力を紹介しておきます。いずれも「内臓ディスク全部」
をTrueOS11.0に割り当て、ブートローダーは BSD boot loader(grubではなく)
を選択、という一番簡単なインストールの場合です。ここで何故私が fdisk の
出力を示すか、その理由ですが、 lenovo の製品の中には「変態」のBIOSを持つ
物があって、そのために man gpart には"lenovofix" なる特別のオプションが
書いてあります。ここに示す fdiskの出力と、このディスクでTrueOS11.0がちゃ
んと起動するという事実は、 X230のBIOSがそのような変態ではない、というこ
とを証明していると考えるからです。
さらに付け加えると、X230の UEFI は、私が苦労した TOSHIBA dynabookN51のよ
うな変態でもありません。規格に十分に適合していると感じています(UEFI規格
を正確には知らないので、こういう言い方しかできませんが)。
# 中古でも X230は買うべし!
Legacyの場合:
# gpart show ada0
=> 40 500118112 ada0 GPT (238G)
40 512 1 freebsd-boot (256K)
552 491708416 2 freebsd-zfs (234G)
491708968 8388608 3 freebsd-swap (4.0G)
500097576 20576 - free - (10M)
# fdisk ada0
******* Working on device /dev/ada0 *******
parameters extracted from in-core disklabel are:
cylinders=7938384 heads=1 sectors/track=63 (63 blks/cyl)
Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=7938384 heads=1 sectors/track=63 (63 blks/cyl)
Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 238 (0xee),(EFI GPT)
start 1, size 500118191 (244198 Meg), flag 0
beg: cyl 0/ head 0/ sector 2;
end: cyl 1023/ head 255/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>
----------------------------------------------------------------
UEFI の場合
# gpart show ada0
=> 40 500118112 ada0 GPT (238G)
40 204800 1 efi (100M)
204840 491483136 2 freebsd-zfs (234G)
491687976 8388608 3 freebsd-swap (4.0G)
500076584 41568 - free - (20M)
# fdisk ada0
******* Working on device /dev/ada0 *******
parameters extracted from in-core disklabel are:
cylinders=496149 heads=16 sectors/track=63 (1008 blks/cyl)
Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=496149 heads=16 sectors/track=63 (1008 blks/cyl)
Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 238 (0xee),(EFI GPT)
start 1, size 500118191 (244198 Meg), flag 0
beg: cyl 0/ head 0/ sector 2;
end: cyl 1023/ head 255/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>
--------
丸山直昌@統計数理研究所
freebsd-users-jp メーリングリストの案内