Acer ASM5201-A13にFreeBSDをインストールするためのメモ
注意
このページの内容は古くなっています.記録のために残してありますが,更新されません.
以下の説明では,これからFreeBSDをインストールするAcer ASM5201-A13をASM5201と表記する.
もちろん,ここに記述されている内容は無保証である. トラブルが発生した際のために,マニュアルに従ってリカバリ・ディスクを作成しておくことを推奨する.
本稿では,インストールの際に注意すべきことを中心に記述する. FreeBSDのインストールの基本的な手順については,"FreeBSD Handbook“の”Installing FreeBSD",『FreeBSDビギナーズバイブル 改訂第2版』(後藤 大地. 毎日コミュニケーションズ, 2005),『改訂版 FreeBSD徹底入門』(衛藤・のだ・細川他. 翔泳社, 2002)などを参照すること. 『Yahoo!やライブドア、2ちゃんねるなどの大規模サイトで採用されている「FreeBSD」をインストールしてみた』(GIGAZINE)も参考になるかも知れない.
また,Unixの操作やシステム管理方法については,『新The UNIX Super Text — 改訂増補版 (上・下)』(中村・新城・西山他. 山口・古瀬[監修]. 技術評論社, 2003),『Absolute BSD FreeBSDシステム管理とチューニング』(Lucas, M. 佐藤 広生[訳]. 毎日コミュニケーションズ, 2004)などを読むこと.
現状
FreeBSD 8.0-STABLEであれば,ほぼ問題なくインストールでき,使用もできる(はず).
動作を未確認の搭載デバイス
IEEE 1394
以前,8.0-CURRENTをインストールした際にBIOSの設定で無効(disable)にしておかないとインストーラが起動しなかった. また,IEEE 1394で接続できる機器を持っていないので,BIOSで無効にしたままにしている.
サウンド
snd_hdaドライバを組み込むとデバイスを認識することは確認した.
その他
Disk geometryに関する警告
起動時にGEOM: ad4s3: geometry does not match label (255h,63s != 16h,63s)
というgeometryに関する警告が出る.
これは,2008年1月17日(UTC)のsrc/sys/amd64/conf/DEFALTSの変更により,GEOM_{BSD|MBR}の代わりにGEOM_PART_{BSD|MBR}が用いられるようになったことが原因らしい.
現在のところ,警告が出るだけなので無視している.
準備
システムの確認
インストールしたASM5201のスペックと接続した周辺機器は以下の表の通りである.
ただし,メモリは標準の2[GB]から4[GB]にしており,前述の通りIEEE 1394はBIOSの設定で無効にしている. また,キーボードとマウスはASM5201に付属していたUSB接続のものは使用していない.
モデル名 | ASM5201-A13 |
---|---|
CPU | AMD Phenom X3 8400 (2.1[GHz]) |
チップセット | AMD 780G |
メモリ | 4[GB] (標準は2[GB]) |
ビデオ・チップ | ATI Radeon HD 3200 (チップセットに内蔵) |
LAN | Marvell Yukon 88E8071 |
オーディオ機能 | Intel HDA準拠 (動作は未確認) |
HDD | Seagate ST1000DM003 1[TB]に交換. (FreeBSDで約350[GB]を使用) |
光学ドライブ | Lite-On iHAS324-07に交換 |
その他 | ディスプレイ: 三菱電機 RDT231WLM (ハイスピードHDMIケーブルで接続) キーボード: PFU HHKB Lite2 (英語配列,PS/2) マウス: Logicool Wireless Mouse M235 (USB) |
インストールするパーティションの確認
出荷時の段階で,ASM5201のハード・ディスクには以下のような3つのパーティションが切られている. このうち,Windows Vistaのエクスプローラなどからはリカバリ用イメージ領域は見えないので,C:, D:という2つのドライブ(パーティション)が存在するように見えるはずである.
本稿では,3番目のパーティション(D:)にFreeBSDをインストールする. もし,この領域でデータがあれば別の場所に退避しておく.
パーティション | サイズ |
---|---|
リカバリ用イメージ | 14.65[GB] |
ACER(C:) | 232.59[GB] |
D: | 348.93[GB] |
リカバリ・ディスクの作成
FreeBSDのインストール中のブートマネージャの設定画面で"None"を選んでも,インストール終了後はFreeBSDだけしか起動しなくなってしまう. ただし,以下のような手順(詳細は後述)を踏めば,Windows Vistaのブートマネージャを使い,FreeBSDとWindows Vistaのデュアル・ブートは可能である. このため,Acer eRecoveryツールを使い,リカバリ・ディスクを作成しておく.
- FreeBSDをインストールする.
- 作成しておいたリカバリ・ディスクを使って,CドライブにWindows Vista(や付属ソフトウェア)をリカバリする.
- FreeBSDの/boot/boot1をCドライブにコピーする.
- Windows Vistaのブートマネージャにboot1を登録し,Windows Vistaとデュアル・ブートできるように設定する.
起動用ディスクの作成
DVD(あるいは,CD)からブートしてインストールを行うため,日本にあるFreeBSD関連のサイトのFTPサービスに挙げられているFTPサーバより,8.0-RELEASEのISOイメージをダウンロードし,これをDVD(あるいは,CD)に焼いて起動用のディスクを作成する.
インストール作業
BIOSの設定
ASM5201を再起動し,Acerのロゴが表示されている間に"Delete"キーを押し,BIOSの設定画面を表示する. BIOSの設定画面で,“Integrated Pheripherals"から"Onboard Device Setup"を選び,“Onboard 1394 Controller"を"disable"にし,F10キーを押して設定を保存する.
FreeBSDのインストール
ブート
ASM5210を再起動し,Acerのロゴが表示されている間にF12キーを押すと,起動デバイス選択画面が表示されるので,起動用DVDをセットし,CD/DVDドライブからの起動を選択する.
インストーラの起動オプション画面では"1. Boot FreeBSD [Default]“を選択して,インストーラが起動するのを待つ.
その後,国やキーボードの設定などを尋ねられるので,適切なものを選択する.
FreeBSD用スライスの確保
注: FreeBSDでは,Windowsでパーティションと呼ばれている領域はスライスと呼ばれる. そして,スライスをパーティションに分割する.
FDISKパーティション・エディタで,FreeBSDのためのスライスを確保する. 既に述べたように,本稿ではad4s3(ad4の3番目)にFreeBSDをインストールする. このため,“NTFS/HPFS/QNX"と表示されている2つ目(始めのものは,Windows Vista用)のスライスを"D: Delte slice"でいったん削除し,改めて残り全てを"C: Create slice"でFreeBSD用のスライスとして設定する.
パーティションの設定
ディスクラベル・エディタで,FreeBSDのスライスにパーティションを作成する. 本稿では,以下のように設定した.
Mount point | Size |
---|---|
/ | 1,024[MB] |
swap | 8,192[MB] |
/var | 2,048[MB] |
/tmp | 1,024[MB] |
/usr | 約336[GB] (残り全て) |
ブートマネージャの選択画面では,とりあえず"None"を選択しておく.
配布ファイルの選択
必要に応じて,適切な配布ファイルを選択する.
インストール・メディアの選択
本稿ではDVDからインストールするので,インストール・メディアの選択では"CD/DVD"を選択する.
その他
その他は,通常のFreeBSDインストール手順の通りで,特に注意することはない.
最後に,Windows Vistaとのデュアル・ブートに使用するため,/boot/boot1をUSBメモリなどにコピーしておく.
以上で,FreeBSDのインストール作業についての説明は終了である.
Xorgサーバの設定
現在のatiドライバは,ASM5201に搭載されているRadeon HD 3200(RS780)をサポートしている. atiドライバをインストールするためには,meta portであるxorg-driversのインストール時に表示されるドライバの選択画面で,atiドライバのインストールを選択すれば良い.
Xorgの設定ファイルであるxorg.confの記述例は『日記のような備忘録 (2014-04-27)』にある.
この設定では,moused
が事前に起動されていることを期待しているが,hald
(HAL daemon)とdbus
(-daemon)の起動は必要としない.
また,これにはportsでインストールしたフォントのディレクトリ設定も含んでいる.
Windows Vistaとのデュアル・ブートの設定
リカバリ・ディスクの作成で説明したように,FreeBSDをインストールするとWindows Vistaが起動しなくなる. 以下の作業で,Windows VistaとFreeBSDをデュアル・ブートできるように設定する.
最初に,用意しておいたリカバリ・ディスクを用いて,CドライブにWindows Vista(や付属ソフトウェア)をリカバリする.
続いて,以下の方法でWindows Vistaのブート・マネージャを使ってデュアル・ブートを設定する.
これらの作業は『ノートパソコンでVistaとFreeBSDのデュアルブート:メモ』(ゆーゆーじてき☆)に書かれている方法そのものである.
まず,FreeBSDのインストール作業の最後にUSBメモリなどにコピーしておいた/boot/boot1を,Cドライブ直下にコピーした後,適当な名前に変更する. 本稿では,参考にしたページに従い,C:\freebsd.pbrとした.
次に,コマンド・プロンプトを管理者権限で起動する. つまり,コマンド・プロンプトのアイコンを右クリックして「管理者として実行」して,コマンド・プロンプトを起動する.
あとは新しいエントリを作成するために,以下のコマンドをコマンド・プロンプトで実行していく.
bcdedit /create /d "FreeBSD" /application bootsector
作成されたエントリのID(GUID)が数桁の文字列({12a3bc4d-e567-89fg-h0i1-234jk56l7mn8}のようなもの)として表示されるので,これをメモしておく. 以降の説明では,これを{ID}と表記する.
bcdedit /set {ID} device boot
bcdedit /set {ID} device boot
bcdedit /set {ID} path \freebsd.pbr
bcdedit /dislayorder {ID} /addfirst
ブート・メニューに表示される順番を,“FreeBSD”, “Windows Vista"とする. このため,この作業は任意である.
bcdedit /default {ID}
ブート・メニューが表示されてから一定時間(デフォルトで30秒)を経過しても,起動するOSの選択が行われなかった場合に,FreeBSDを起動するようにしている. このため,この作業も任意である.
付録
カーネルとユーザ・ランドの再構築
BIOSの設定で無効にしたIEEE 1394以外のASM5201のデバイスは,カーネルやユーザ・ランドの再構築を行わなくても使用できる. このため,以下の作業は絶対に必要というものではない.
以下の説明では,カーネルとユーザ・ランドのソースを取得し,これらを再構築することで8.0-STABLEとする.
以下の作業は,全てrootで行う.
csupの設定ファイルの設定
/usr/share/examples/cvsup/standard-supfileを/etc/ディレクトリに適当な名前でコピーし,これを変更してcsupの設定ファイルとして使用する.
ここでは,設定ファイルの名前を/etc/supfile-stableとする.
以下に,csupの設定ファイルの記述例を挙げる.
ここで,hostで指定するホスト名はports/sysutil/fastest_cvsupなどを使って,ネットワーク的に近いCVSサーバを選択して記述する.
*default host=cvsup2.jp.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_8
*default delete use-rel-suffix
*default compress
#
src-all
カーネルとユーザ・ランドのソースの更新
csup /etc/supfile-stable
により,カーネルとユーザ・ランドのソースを更新する.
make.confの設定
/usr/share/examples/etc/make.confを参考にして,/etc/make.confを記述する. 以下に,/etc/make.confの記述例を挙げる. ここで,KERNCONFで指定している名前(CAMILLE)は,次に作成するカーネル・コンフィグレーション・ファイルの名前である.
CPUTYPE=opteron
KERNCONF=CAMILLE
カーネル・コンフィグレーション・ファイルの設定
/usr/src/sys/amd64/conf/GENERICを適当な名前でコピーし,これを変更してカーネル・コンフィグレーション・ファイルとして使用する. ここでは,カーネル・コンフィグレーション・ファイルの名前を/usr/src/sys/amd64/conf/CAMILLEとする. 以下に,カーネル・コンフィグレーション・ファイルの記述例を挙げる(詳しくは,FreeBSD Handbookの8.4 The Configuration Fileを参照すること).
## Kernel configuration file for Acer Aspire ASM5201-A13
##
## CPU: AMD Phenom X3 8400 (2.1[GHz])
## Chipset: AMD 780G
## Memory: 4[GB] (DDR2 800[MHz] PC2-6400 1[GB] x 4)
## Video: ATI Radeon HD 3200 (in AMD 780G chipset)
## HDD: 640[GB] Western Digital WD6400AAKS-00A7B0
## LAN: Marvell Yukon 88E8071
## CD/DVD drive: Optiarc AD-7203S
##
cpu HAMMER
ident CAMILLE
#makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
options SCHED_ULE # ULE scheduler
options PREEMPTION # Enable kernel thread preemption
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options SCTP # Stream Control Transmission Protocol
options FFS # Berkeley Fast Filesystem
options SOFTUPDATES # Enable FFS soft updates support
options UFS_ACL # Support for access control lists
options UFS_DIRHASH # Improve performance on big directories
options UFS_GJOURNAL # Enable gjournal-based UFS journaling
options MD_ROOT # MD is a potential root device
options MSDOSFS # MSDOS Filesystem
options CD9660 # ISO 9660 Filesystem
options PROCFS # Process filesystem (requires PSEUDOFS)
options PSEUDOFS # Pseudo-filesystem framework
options GEOM_PART_GPT # GUID Partition Tables.
options GEOM_LABEL # Provides labelization
options COMPAT_43TTY # BSD 4.3 TTY compat (sgtty)
options COMPAT_IA32 # Compatible with i386 binaries
options COMPAT_FREEBSD4 # Compatible with FreeBSD4
options COMPAT_FREEBSD5 # Compatible with FreeBSD5
options COMPAT_FREEBSD6 # Compatible with FreeBSD6
options COMPAT_FREEBSD7 # Compatible with FreeBSD7
options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
options KTRACE # ktrace(1) support
options STACK # stack(9) support
options SYSVSHM # SYSV-style shared memory
options SYSVMSG # SYSV-style message queues
options SYSVSEM # SYSV-style semaphores
options P1003_1B_SEMAPHORES # POSIX-style semaphores
options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4)
options AUDIT # Security event auditing
options MAC # TrustedBSD MAC Framework
options FLOWTABLE # per-cpu routing cache
# Make an SMP-capable kernel by default
options SMP # Symmetric MultiProcessor Kernel
# CPU frequency control
device cpufreq
# Bus support.
device acpi
device pci
# ATA and ATAPI devices
device ata
device atadisk # ATA disk drives
device ataraid # ATA RAID drives
device atapicd # ATAPI CDROM drives
device atapifd # ATAPI floppy drives
options ATA_STATIC_ID # Static device numbering
# SCSI peripherals
device scbus # SCSI bus (required for SCSI)
device ch # SCSI media changers
device da # Direct Access (disks)
device cd # CD
device pass # Passthrough device (direct SCSI access)
device ses # SCSI Environmental Services (and SAF-TE)
# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc # AT keyboard controller
device atkbd # AT keyboard
device psm # PS/2 mouse
device vga # VGA video card driver
device splash # Splash screen and screen saver support
# syscons is the default console driver, resembling an SCO console
device sc
device agp # support several AGP chipsets
# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device miibus # MII bus support
device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet
# Pseudo devices.
device loop # Network loopback
device random # Entropy device
device ether # Ethernet support
device tun # Packet tunnel.
device pty # BSD-style compatibility pseudo ttys
device md # Memory "disks"
device gif # IPv6 and IPv4 tunneling
device faith # IPv6-to-IPv4 relaying (translation)
device firmware # firmware assist module
# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device bpf # Berkeley packet filter
# USB support
device ohci # OHCI PCI->USB interface
device ehci # EHCI PCI->USB interface (USB 2.0)
device usb # USB Bus (required)
device uhid # "Human Interface Devices"
device ukbd # Keyboard
device ulpt # Printer
device umass # Disks/Mass storage - Requires scbus and da
device ums # Mouse
# FireWire support
#device firewire # FireWire bus code
#device dcons # Dumb console driver
#device dcons_crom # Configuration ROM for dcons
# On-die sensor on AMD K8/K10/K11 CPUs
device amdtemp
# Direct Rendering modules for 3D acceleration.
device drm # DRM core module required by DRM drivers
device radeondrm # ATI Radeon
# sound
#device sound
#device snd_hda
カーネルとユーザ・ランドのmakeとインストール
/usr/src/Makefileのコメントとして記述された説明にあるように,以下の手順でカーネルとユーザ・ランドのmakeとインストール,および/etc/ディレクトリの設定ファイルの更新を行う.
- cd /usr/src
- make buildworld
- make buildkernel
- make installkernel
- システムをrebootし,シングル・ユーザ・モードでログイン
- mergemaster -p
- make installworld
- make delete-old
- mergemaster