01 Jun 2014, 05:01

Lets Noteを買ったのでとりあえずWindows8とArchLinuxのデュアルブートにしてみた

はじめに

新しいノートPCを買った。Panasonicの Let’s Note.

いままで散々弄りまわしてきたVAIOだけれど、 最近になって裏のネジがなくなってしまった。 そのため、ディスプレイが今にも外れそうな危ない状態だ。

VAIOには名残惜しいものの、このままだといつ壊れてもおかしくない。 そんなわけで、新しいPCを買うことになった。 本心は、再びVAIOを購入したいところだったが、VAIOがヨドバシに売っていなかった。

ヨドバシの店頭においてある一番高い、30万に届くような高スペックのLet’s Noteを購入。

最高スペックには最高のOSを!

ということで、Windows8とArchLinuxとのデュアルブートにすることにした。

以下は、インストールするまでの作業メモです。

[toc]

Windows側での事前準備

まず、購入時にはWindows8.1がすでにインストールされている。 デュアルブート化のための準備をWindows側でする。

ArchLinux ディストリビューションを取得

<div class="outline-text-3" id="text-2-1">
  <p>
    以下から、最新版をダウンロード。日本のミラーサイトからダウンロードする。
  </p>

  <ul class="org-ul">
    <li>
      <a href="https://www.archlinux.org/download/">Arch Linux &#8211; Downloads</a> <ul class="org-ul">
        <li>
          archlinux-2014.05.01-dual.iso
        </li>
      </ul>
    </li>
  </ul>
</div></p>

インストール用にUSBメモリ作成

<div class="outline-text-3" id="text-2-2">
  <p>
    USBWriter for Windowsで、ダウンロードしたISOファイルをUSBメモリに焼く。
  </p>

  <ul class="org-ul">
    <li>
      <a href="http://sourceforge.net/projects/usbwriter/">USBWriter | Free software downloads at SourceForge.net</a>
    </li>
  </ul>
</div></p>

高速スタートアップ解除

<div class="outline-text-3" id="text-2-3">
  <p>
    手順にしたがって、高速スタートアップを無効にする。
  </p>

  <ul class="org-ul">
    <li>
      <a href="http://www.eightforums.com/tutorials/6320-fast-startup-turn-off-windows-8-a.html">Fast Startup &#8211; Turn On or Off in Windows 8</a>
    </li>
  </ul>
</div></p>

パーティションを切る

<div class="outline-text-3" id="text-2-4">
  <p>
    コントロールパネル→管理ツール→コンピュータの管理→記憶域→ディスクの管理を機動起動。
  </p>

  <p>
    購入時、ドライブ構成はこんな感じ。
  </p>

  <ul class="org-ul">
    <li>
      合計 240GB <ul class="org-ul">
        <li>
          回復パーティション 800MB
        </li>
        <li>
          EFIシステムパーティション 260MB
        </li>
        <li>
          Cドライブ 221GB
        </li>
        <li>
          回復パーティション 15GB
        </li>
      </ul>
    </li>
  </ul>

  <p>
    CドライブからArchLinux用のパーティションを切り出す。 150GB/70GBの 2対1くらいの比率にしておくか。適当だけど。
  </p></p>
</div></p>

リカバリディスク作成

<div class="outline-text-3" id="text-2-5">
  <p>
    いざというときのために、リカバリディスクを作成。 これはノートPCの説明書にしたがった。
  </p></p>
</div></p>

FAQを読む/ArchWayを読む

<div class="outline-text-3" id="text-2-6">
  <p>
    FAQとArch Wayを読んで、インストールして後悔しないか再度確認。
  </p>

  <ul class="org-ul">
    <li>
      <a href="https://wiki.archlinux.org/index.php/FAQ_(%E6%97%A5%E6%9C%AC%E8%AA%9E)">FAQ (日本語) &#8211; ArchWiki</a>
    </li>
    <li>
      <a href="https://wiki.archlinux.org/index.php/The_Arch_Way_(%E6%97%A5%E6%9C%AC%E8%AA%9E)">The Arch Way (日本語) &#8211; ArchWiki</a>
    </li>
  </ul>
</div>

<div id="outline-container-sec-2-6-1" class="outline-4">
  <h4 id="sec-2-6-1">
    KISS
  </h4>

  <div class="outline-text-4" id="text-2-6-1">
    <p>
      Keep It Simple, Stupid.
    </p>

    <p>
      シンプルにしとけよ、このバカチンが
    </p></p>
  </div></p>
</div></p>

ArchLinuxのインストール

基本的には以下のページにしたがう。

USBメモリから起動

<div class="outline-text-3" id="text-3-1">
  <p>
    F2からBIOSの設定を変更して、USBメモリから起動する。
  </p>

  <p>
    いきなりエラーしてワクワクするO(〃⌒▼⌒〃)O
  </p>

  <div class="org-src-container">
    <pre class="src src-language">failed to start loader

  <ul class="org-ul">
    <li>
      <a href="https://teksyndicate.com/forum/linux/loaderefi-error-arch-linux/168495">Loader.efi error Arch Linux | Tek Syndicate</a>
    </li>
  </ul>

  <p>
    Secure Bootが怪しいということで、以下のガイダンスにしたがう。
  </p>

  <ul class="org-ul">
    <li>
      <a href="https://wiki.archlinux.org/index.php/Unified_Extensible_Firmware_Interface#Secure_Boot">Unified Extensible Firmware Interface &#8211; ArchWiki</a>
    </li>
  </ul>

  <p>
    rootでログイン成功。
  </p></p>
</div></p>

言語の選択

<div class="outline-text-3" id="text-3-2">
  <p>
    キーマップで日本語を設定。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">loadkeys jp106

  <p>
    文字コードも設定。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">nano /etc/locale.gen

ja_JP.UTF-8 UTF-8

locale-gen export LANG=ja_JP.UTF-8

無線の設定

<div class="outline-text-3" id="text-3-3">
  <p>
    pingしてダメなことを確認する。unknown hostと出てきた。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">ping -c 3 www.google.com

  <div class="org-src-container">
    <pre class="src src-sh">iw dev

phy#0 Interface wlp2s0

ip link set wlp2s0 up

  <p>
    エラーした。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">RTNELINK answerss: Operation not possible do to RF-kill

  <p>
    wifiの物理スイッチがOffになってただけだった。スイッチオンしたら成功。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">wifi-menu wlp2s0

  <p>
    wifi-menuではdhcp設定がうまくいかない。手動設定でうまくいった。pingも通る。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">wpa_supplicant -B -i wlp2s0 -c &lt;(wpa_passphrase <span style="color: #e6db74;">"ssid"</span> <span style="color: #e6db74;">"psk"</span>)

dhcpcd wlp2s0

パーティションを切る

<div class="outline-text-3" id="text-3-4">
  <p>
    以下を参考にパーティションを考える。
  </p>

  <ul class="org-ul">
    <li>
      <a href="https://wiki.archlinux.org/index.php/Partitioning_(%E6%97%A5%E6%9C%AC%E8%AA%9E)#GPT_.E3.81.8B_MBR_.E3.81.AE.E9.81.B8.E6.8A.9E">Partitioning (日本語) &#8211; ArchWiki</a>
    </li>
  </ul>

  <p>
    こんな感じ。swap領域はwikiを信じて作成しない。 rootとhomeを分けておくと rm -rfしたときにデータ復旧できる。
  </p>

  <ul class="org-ul">
    <li>
      / 20GB
    </li>
    <li>
      /home 130GB
    </li>
  </ul>

  <p>
    /bootは、EFI system partitionがあるのでそれをつかう。 (この用語についてはあとでまたでてくる)
  </p></p>
</div>

<div id="outline-container-sec-3-4-1" class="outline-4">
  <h4 id="sec-3-4-1">
    gdisk
  </h4>

  <div class="outline-text-4" id="text-3-4-1">
    <p>
      パーティションツールは、SSDを長持ちさせるために、GPTに対応したgdiskを利用する。
    </p>

    <p>
      (以前つかったことがある GPartedを試みたものの、GPTの設定方法がわからなかった。 どうも一旦すべてのパーティションを削除しないとgptは設定できないようだった)
    </p>

    <div class="org-src-container">
      <pre class="src src-sh">gdisk /dev/sda

    <p>
      nコマンドでパーティション追加。
    </p>

    <ul class="org-ul">
      <li>
        Parttition number は defaultなので Enter
      </li>
      <li>
        First sector は defaultなので Enter
      </li>
      <li>
        Last sector は +20G/Enter
      </li>
      <li>
        GUIDは は defaultなので Enter
      </li>
    </ul>

    <p>
      最後にwでディスクに書き込む。
    </p></p>
  </div></p>
</div></p>

ファイルシステムの作成

<div class="outline-text-3" id="text-3-5">
  <p>
    ext4でパーティションをフォーマットする。
  </p>

  <p>
    まずは、lsblkで device nameを確認
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">lsblk

  <p>
    容量と見比べて、今回は以下が対象。
  </p>

  <ul class="org-ul">
    <li>
      sda7 20G Root用
    </li>
    <li>
      sda8 126G home用
    </li>
  </ul>

  <div class="org-src-container">
    <pre class="src src-sh">mkfs.ext4 /dev/sda7

mkfs.ext4 /dev/sda8

  <p>
    lsblk -fでFSTYPEがext4であることを確認。
  </p></p>
</div></p>

パーティションのマウント

<div class="outline-text-3" id="text-3-6">
  <p>
    パーティションをマウントする。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">mount /dev/sda7 /mnt

mkdir /mnt/home mount /dev/sda8 /mnt/home

  <p>
    EFI system partitionを /boot/efiにマウントする。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">mkdir -p /mnt/boot/efi

mount /dev/sda2 /mnt/boot/efi

ミラーの選択

<div class="outline-text-3" id="text-3-7">
  <p>
    とりあえず、jaistとtukubaを最優先に設定。
  </p></p>
</div></p>

ベースシステムのインストール

<div class="outline-text-3" id="text-3-8">
  <p>
    ついにインストール。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">pacstrap -i /mnt base base-devel

fstabの生成

<div class="outline-text-3" id="text-3-9">
  <div class="org-src-container">
    <pre class="src src-sh">genfstab -U -p /mnt &gt;&gt; /mnt/etc/fstab

Chroot とベースシステムの設定

arch-chroot /mnt /bin/bash

<p>
  ごちゃごちゃしているのでメモは省略。
</p></p>

ブートローダ設定

ブートローダは使ったことがあるGRUBにする。

べんきょ

<div class="outline-text-3" id="text-5-1">
  <p>
    まずは、用語がわからないので、wikiをざっとながめる。
  </p>

  <ul class="org-ul">
    <li>
      <a href="https://wiki.archlinux.org/index.php/Unified_Extensible_Firmware_Interface_(%E6%97%A5%E6%9C%AC%E8%AA%9E)">Unified Extensible Firmware Interface (日本語) &#8211; ArchWiki</a>
    </li>
    <li>
      <a href="https://wiki.archlinux.org/index.php/GUID_Partition_Table_(%E6%97%A5%E6%9C%AC%E8%AA%9E)">GUID Partition Table (日本語) &#8211; ArchWiki</a>
    </li>
    <li>
      <a href="https://wiki.archlinux.org/index.php/UEFI_Bootloaders_(%E6%97%A5%E6%9C%AC%E8%AA%9E)">Boot Loaders (日本語) &#8211; ArchWiki</a>
    </li>
  </ul>

  <p>
    つぎに自分のシステムがUEFIとGPTに対応しているか調べる。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">parted /dev/sda print

  <p>
    冒頭にPartition Table:gpt, リストの2番目に EFI system partitionとかいてある。 どうやらGPTとESPがあるもよう。さすが、最新式。
  </p></p>
</div></p>

GRUBインストール

<div class="outline-text-3" id="text-5-2">
  <p>
    Arch WikiのUEFIシステムのインストール手順にしたがう。ツールを入れる。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">pacman -S grub efibootmgr dosfstools

  <p>
    以下のコマンドでインストール
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub --recheck --debug

デュアルブート対応

<div class="outline-text-3" id="text-5-3">
  <p>
    これもwikiにしたがう。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">pacman -S os-prober

grub-mkconfig -o /boot/grub/grub.cfg

  <p>
    grub-mkconfigがエラーする。 os-proberを単体で実行しても同じエラーメッセージがでる。 os-proberを削除するとエラーがでない。どうもこれが悪いみたい。
  </p>

  <ul class="org-ul">
    <li>
      <a href="http://unix.stackexchange.com/questions/105389/arch-grub-asking-for-run-lvm-lvmetad-socket-on-a-non-lvm-disk">partition &#8211; Arch GRUB asking for /run/lvm/lvmetad.socket on a non lvm disk &#8211; Unix & Linux Stack Exchange</a>
    </li>
  </ul>

  <p>
    manualで grub menuを設定する。/etc/grub.d/40_customを編集。 以下を書くことで、grubのmenuにwindowsを表示できる。ArchLinuxはかってに表示される。
  </p>

  <div class="org-src-container">
    <pre class="src src-language">#!/bin/sh

exec tail -n +3 $0

This file provides an easy way to add custom menu entries. Simply type the

menu entries you want to add after this comment. Be careful not to change

the ‘exec tail’ line above.

if [ “${grub_platform}” == “efi” ]; then menuentry “Microsoft Windows 8.1 x86_64 UEFI-GPT” { echo “Loading Microsoft Windows 8.1…” insmod part_gpt insmod fat insmod search_fs_uuid insmod chain search –fs-uuid –set=root $hints_string $uuid chainloader /EFI/Microsoft/Boot/bootmgfw.efi } fi

menuentry “System shutdown” { echo “System shutting down…” halt }

menuentry “System restart” { echo “System rebooting…” reboot }

  <div class="org-src-container">
    <pre class="src src-sh"><span style="color: #a9a9a9;"># </span><span style="color: #a9a9a9;">uuid</span>

grub-probe –target=fs_uuid /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi 1231-C3B2 # hints_string grub-probe –target=hints_string /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi –hint-bios=hd0,gpt2 –hint-efi=hd0,gpt2 –hint-baremetal=ahci0,gpt2

  <p>
    /boot/grub/grub.cfgに反映させる。このコマンドでgrub.cfgに追記される。
  </p>

  <div class="org-src-container">
    <pre class="src src-sh">grub-mkconfig -o /boot//grub/grub.cfg

  <p>
    ここまで完了したら、reboot!
  </p>

  <p>
    再起動してgrubメニューにArchLinuxとWindowsが表示されていることを確認。今日はつかれたので、ここまで。
  </p></p>
</div></p>

参考にしたページのBookMarks

ArchLinuxとは

<div class="outline-text-3" id="text-6-1">
  <ul class="org-ul">
    <li>
      <a href="http://dic.nicovideo.jp/a/arch%20linux">Arch Linuxとは (アーチリナックスとは ) &#8211; ニコニコ大百科</a>
    </li>
    <li>
      <a href="http://divide-et-impera.org/archives/1388">Ubuntuに飽きた俺達の楽園はArch Linuxにあった | Divide et impera</a>
    </li>
    <li>
      <a href="http://zaka-think.com/linux/archlinux/archlinux%E3%82%92%E3%82%84%E3%82%81%E3%81%9F%E7%90%86%E7%94%B1/">Archlinuxをやめた理由 | ざかしんく</a>
    </li>
  </ul>
</div></p>

インストール

<div class="outline-text-3" id="text-6-2">
  <ul class="org-ul">
    <li>
      <a href="https://wiki.archlinux.org/index.php/Installation_Guide_(%E6%97%A5%E6%9C%AC%E8%AA%9E)">Installation Guide (日本語) &#8211; ArchWiki</a>
    </li>
    <li>
      <a href="https://wiki.archlinux.org/index.php/Beginners'_Guide_(%E6%97%A5%E6%9C%AC%E8%AA%9E)">Beginners&#8217; Guide (日本語) &#8211; ArchWiki</a>
    </li>
  </ul>
</div>

<div id="outline-container-sec-6-2-1" class="outline-4">
  <h4 id="sec-6-2-1">
    Arch Linux のリリースを USB ドライブに書き込む方法
  </h4>

  <div class="outline-text-4" id="text-6-2-1">
    <ul class="org-ul">
      <li>
        <a href="https://wiki.archlinux.org/index.php/USB_Installation_Media_(%E6%97%A5%E6%9C%AC%E8%AA%9E)">USB Installation Media (日本語) &#8211; ArchWiki</a>
      </li>
      <li>
        <a href="https://wiki.archlinux.org/index.php/Installing_Arch_Linux_on_a_USB_key">Installing Arch Linux on a USB key &#8211; ArchWiki</a>
      </li>
    </ul>
  </div></p>
</div>

<div id="outline-container-sec-6-2-2" class="outline-4">
  <h4 id="sec-6-2-2">
    パーティションの切り方
  </h4>

  <div class="outline-text-4" id="text-6-2-2">
    <ul class="org-ul">
      <li>
        <a href="https://wiki.archlinux.org/index.php/Partitioning_(%E6%97%A5%E6%9C%AC%E8%AA%9E)#GPT_.E3.81.8B_MBR_.E3.81.AE.E9.81.B8.E6.8A.9E">Partitioning (日本語) &#8211; ArchWiki</a>
      </li>
      <li>
        <a href="http://blog.volment.com/archives/=47">実は簡単Arch Linuxのインストール手順! | volment</a>
      </li>
      <li>
        <a href="http://qiita.com/syui/items/1ffec0f12c253cda122b">awesome &#8211; ArchLinuxのGUI環境設を整える vol.1 &#8211; Qiita</a>
      </li>
    </ul>
  </div></p>
</div>

<div id="outline-container-sec-6-2-3" class="outline-4">
  <h4 id="sec-6-2-3">
    デュアルブート関係
  </h4>

  <div class="outline-text-4" id="text-6-2-3">
    <ul class="org-ul">
      <li>
        <a href="https://wiki.archlinux.org/index.php/Windows_and_Arch_Dual_Boot_(%E6%97%A5%E6%9C%AC%E8%AA%9E)">Windows and Arch Dual Boot (日本語) &#8211; ArchWiki</a>
      </li>
      <li>
        <a href="https://wiki.archlinux.org/index.php/GRUB_(%E6%97%A5%E6%9C%AC%E8%AA%9E)#UEFI-GPT_.E3.83.A2.E3.83.BC.E3.83.89.E3.81.A7.E3.82.A4.E3.83.B3.E3.82.B9.E3.83.88.E3.83.BC.E3.83.AB.E3.81.95.E3.82.8C.E3.81.9F_Windows_.E3.81.AE.E3.83.A1.E3.83.8B.E3.83.A5.E3.83.BC.E3.82.A8.E3.83.B3.E3.83.88.E3.83.AA">GRUB (日本語) &#8211; ArchWiki</a>
      </li>
      <li>
        <a href="http://d.hatena.ne.jp/godai_0519/20140128/1390919028">ThinkPad X240をArch Linuxとのデュアルブートにするメモ &#8211; 堕(惰)プログラマ開発記録</a>
      </li>
      <li>
        <a href="https://spica.pw/blog/archives/=157">x240にArchとWindows8.1を共存させる | In the Spica</a>
      </li>
    </ul>
  </div></p>
</div></p>

その他

<div class="outline-text-3" id="text-6-3">
  <ul class="org-ul">
    <li>
      <a href="https://qiita.com/tags/archlinux">archLinuxに関する32件の投稿 &#8211; Qiita</a>
    </li>
    <li>
      <a href="http://qiita.com/xorphitus/items/3711895eb5d9f946c782">Arch Linux快適デスクトップ環境の構築 &#8211; Qiita</a>
    </li>
    <li>
      <a href="http://futurismo.biz/archives/2064">Windowsと Mint Linuxのデュアルブート環境をVAIOに構築した手順メモ | Futurismo</a>
    </li>
  </ul>
</div></p>