2015/05/17

Windows7とLinuxのマルチブート

以前Windows7とArchLinuxのデュアルブートに挑戦しました。
前はブートローダのインストールで失敗してしまいましたが、今回はうまくできました(*´∀`)♪

使ったPCは以前と同じで
 富士通 LIFEBOOK AH56/GN
 Intel Core i7-2670QM
 メモリ 8GB
 HDD 500GB
でBIOS-MBR環境でインストールしていきます。
  1. Windowsの準備
  2. 今回はWindowsの領域を80GBにしました。
    パーティション1がシステムで予約済みでパーティション2がWindowsのシステム領域です。
    (Linuxでの表記は/dev/sda1と/dev/sda2です。)
  3. ArchLinuxのインストール
  4. loadkeys jp106
    //ネット接続
    //有線接続の場合は自動認識のはずですが、接続できなかった場合は
    systemctl start dhcpcd.service
    //無線の場合は
    iw dev
    wifi-menu wlp11s0
    //wlp11s0の部分は自分の環境に合わせて変えてください。
    ping -c 3 www.google.com
    cfdisk /dev/sda
    //拡張領域(300GB)を作ってその中にLinuxをインストールしていきます。
    //拡張領域は100GBずつ区切りました。
    //(120GBくらい残ってるのはBSDをインストールしようとして挫折した残骸です…)
    mkfs.btrfs -L Arch /dev/sda5
    mount /dev/sda5 /mnt
    vi /etc/pacman.d/mirrorlist
    //日本のサーバーを上の方に移動
    pacstrap /mnt base base-devel
    genfstab -U -p /mnt >> /mnt/etc/fstab
    vi /mnt/etc/fstab
    //btrfsのマウントオプションを変更
    //hddの場合noatime,autodefrag,compress-force=lzo,space_cacheに変更
    //ssdの場合noatime,discard,ssd,compress=lzo,space_cacheに変更
    //このマウントオプションにしておくと良い感じ…なのか?
    arch-chroot /mnt /bin/bash
    vi /etc/locale.gen
    locale-gen
    echo LANG=en_US.UTF-8 > /etc/locale.conf
    export LANG=en_US.UTF-8
    vi /etc/vconsole.conf
    //KEYMAP=jp106を追加
    ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
    hwclock --systohc --utc
    echo Arch > /etc/hostname
    //Archは自分の好きなホストネームに
    vi /etc/pacman.conf
    //[multilib]をアンコメント
    //次の3行を下の方に追加
    //[archlinuxfr]
    //SigLevel = Optional
    //Server = http://repo.archlinux.fr/$arch
    pacman -Syu
    pacman -S yaourt
    passwd
    pacman -S grub
    chattr -i /boot/grub/i386-pc/core.img
    //↑のコマンドはエラーが出る?
    //エラー無視して進めて問題なかったので放置
    grub-install --target=i386-pc --recheck --debug --force /dev/sda5
    chattr +i /boot/grub/i386-pc/core.img
    grub-mkconfig -o /boot/grub/grub.cfg
    pacman -S zsh vim rxvt-unicode
    useradd -m -g users -G wheel -s $(which zsh) wakame
    passwd wakame
    //wakameは自分のユーザーネームに
    visudo
    pacman -S xorg-server xorg-server-utils
    pacman -S xf86-video-intel
    //グラフィックドライバーは自分の環境に合わせて変えてください
    pacman -S xf86-input-synaptics
    vi /etc/X11/xorg.conf.d/10-keyboard.conf
    //Section "InputClass"
    // Identifier      "Keyboard Defaults"
    // MatchIsKeyboard "yes"
    // Option          "XkbLayout" "jp"
    // Option          "XkbModel"  "jp106"
    //EndSection
    pacman -S cinnamon
    pacman -S lightdm lightdm-gtk-greeter
    vim /etc/lightdm/lightdm.conf
    //greeter-session=~~の部分を
    //greeter-session=lightdm-gtk-greeter
    systemctl enable lightdm
    //↓は無線でネットに接続する場合
    pacman -s iw wpa_supplicant modemmanager gnome-keyring
    systemctl enable NetworkManager
    systemctl enable ModemManager
    //ここまで無線の場合
    exit
    
    mkdir /win
    mount /dev/sda2 /win
    dd if=/dev/sda5 of=/win/arch.bin bs=512 count=1
    reboot
    
    再起動後、普通にWindowsが起動します。
    c:\にarch.binができているはず
    cmdを管理者として実行
    bcdedit /create /d "Arch Linux" /application bootsector
    //右クリ→範囲指定(k)で表示された{ID}を選んでコピー
    //以下{ID}の部分は右クリ→貼り付け(p)
    bcdedit /set {ID} device partition=c:
    bcdedit /set {ID} path \arch.bin
    bcdedit /displayorder {ID} /addlast
    bcdedit /timeout 5
    bcdedit //ちゃんと追加されてるか確認
    
  5. ubuntu系のインストール
  6. ここでは例としてLinuxMintを使用。
    (インストーラー起動の前にGpartedでパーティションを作成したほうが吉)
    普通にインストーラーを起動して進めていき、ブートローダーのインストール先をLinuxMintをインストールするパーティションに設定(私の場合は/dev/sda6)
    ターミナルを開いて
    sudo su
    mkdir /win
    mount /dev/sda2 /win
    dd if=/dev/sda6 of=/win/mint.bin bs=512 count=1
    exit
    exit
    
    再起動してwindowsを起動。
    ArchLinuxの時と同じように設定していきます。
    cmdを管理者として起動して
    bcdedit /create /d "Linux Mint" /application bootsector
    bcdedit /set {ID} device partition=c:
    bcdedit /set {ID} path \mint.bin
    bcdedit /displayorder {ID} /addlast
    bcdedit
    
他のLinuxも「システムをインストールするパーティション」と「ブートローダーのインストール先」を調整することでマルチブートできると思います。

0 件のコメント:

コメントを投稿