年始のAmazonセールでそこそこのスペックで自分が欲しいPCがあったので買いました。
そして、そのPCを生贄にしてwin10/Archのデュアルブート環境の構築までは行ったので一旦書いてみます。
- 1.PC購入編
- 2.win10設定編
- 3.Archインストール編
の3ステップのお話です。
目的
目的としてはこんな感じです。
- 重量の軽くそこそこのスペックのマシンが欲しい(Goが書ければ良いかなぐらい)
- linuxの勉強がてらmacがオワコンになった将来に備える(macが根強く人気ですが今後どうなるかなぁとなった時に選択肢は色々欲しいなと)
- たまにwinを使いたくなる時もあるかもしれない
注意事項
トラブルシューティングやリカバリを考えるとデュアルブートしない方が断然楽だと思います。
むしろデュアルブートの方が問題が増える。
そこも含めて楽しめる人はデュアルブートやっても良いと思います。
どうやらUEFIとsystemd-bootとかだとそんなにトラブらないのだそうです。
ということで、今回はそういう構成にしています。
旧来のMBR使うようなやつで、GRUBとかの方がハマりやすいらしい。そのあたり、詳しく無いので伝聞レベルですがご容赦下さい。
このあたりを参照…?
https://twitter.com/kotatsu_mi/status/1210950865957220352
1. PC購入編
僕が買ったのは LG ノートパソコン gram 965g です。
https://www.amazon.co.jp/gp/product/B07MZ1K6ZJ/ref=ppx_yo_dt_b_asin_title_o07_s00?ie=UTF8&psc=1
うおおおお pic.twitter.com/QY95gB7R0r
— yank shaving (@yy_yank) January 8, 2020
なんと言っても1kgを下回るこの軽さ。
僕は軽いもの、小さいものがなぜかめっちゃ好きです。
スペック的にはこんな感じ。
- バッテリー28時間
- Core i5
- 13.3インチ
- 965g
- Windows 10(プリインストール)
- メモリ 8GB
- SSD 256GB
まぁこんだけあればGoとかは普通に書けます。
重めのIDE系立ち上げたとしてもなんとかなるでしょう、という感じ。
dockerはしんどいかな?そこも今度試してみようと思います。
今は10万越えですが、セール期間だったので9万弱で購入出来ました。
1つ不満があるとすれば、SSD容量でしょうか。
デュアルブートするなら512GBとかは欲しいかも。
とはいえ、256GBでも余裕はあります。
最悪、軽めの外づけSSDとかですかね。
換装は出来るかわからないし、出来たとしても面倒そう。
メモリは8GBですが、今のところストレスないです。
一応16GBとかに換装出来ます。
困ったらメモリは差し替えるかもしれません。
2. win10設定編
デュアルブートをやるためにはwindows側の設定も多少いじる必要があります。僕がやったのはこれだけです。
- 高速スタートアップoff
- winのパーティション縮小(今後かさむことなどを考えてCドライブを64GBに縮小)
- Secure Boot off
- usb deviceの起動順をいじる
- ハードウェアクロックをUTCにする
- WindowsがUEFIか確認する→UEFIだった
- WindowsがGPTかMBRか確認→GPTだった
この際、GPTとUEFIだったので一番望ましい状態であることがわかったので楽だった。
もしMBRとかだったらwindows側のクリーンインストールから入ってUEFIの設定とGPTフォーマットするとかそういうのが必要だったと思う。
僕の場合はwin側はほとんど触らずにArchをインストールするステップに進めたわけです。
3. Archインストール編
ザックリとこの流れでした。
- USBインストールメディア作成
- パーティション作成
- パーティションフォーマット
- fstabとかやる
- 作成したパーティションにマウント
- pacmanでArchのbaseとかをinstall
- shutdownしてUSBを外す
- Archを起動
- wpa_supplicantでwifiの設定
一番気をつけたのはパーティションの作成、削除などの対象を間違えないことです。そこさえ間違えなければなんとかなる。
winのパーティション消しちゃったとかなったらwinのリカバリから入ることになるだろうし
泣くことになるのは目に見えていたのでそこを一番慎重にやりました。
あとは、打ったコマンドをすべて記録しておくこと(ls とかcdとかは省くけど)。これも結構大事。
参考にしたのはArchのwikiと、以下の記事でした。
https://qiita.com/TsutomuNakamura/items/b60518f8788e5e998744
https://qiita.com/mopp/items/f1912433abbed69f5f99
Archインストールの具体的な手順
具体的に自分がやった流れを書いていきます。
インストールメディア作成
このやり方通りにやれば出来ます。
iso落として来て各OSのツールやコマンドでやる感じです。
僕の場合はmacでdiskutilとddを使いました。
https://wiki.archlinux.jp/index.php/USB_%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%83%A1%E3%83%87%E3%82%A3%E3%82%A2
ちなみにbootable usbにするために買ったのはこれでした。
https://www.amazon.co.jp/gp/product/B01AJOAH1S/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1
インストールメディアを作成して、心の準備ができたらUSBをPCに指しこんで起動しましょう。
パーティション作成
起動したら真っ黒画面になるわけですが、ここからはUSB起動での作業です。まずはパーティションの作成。自分の場合はこうですが、パーティション番号は各自の環境に合わせてください。
#root(64GB)
sgdisk -n 7:0:+64G -t 7:8300 -c 7:"Linux filesystem" /dev/sda
#home(128G)
sgdisk -n 8:0:+128G -t 8:8300 -c 8:"Linux filesystem" /dev/sda
#recovery(1G)
sgdisk -n 9:0:+1G -t 9:8300 -c 9:"Linux filesystem" /dev/sda
フォーマットとマウント
こちらのコマンドも、各自の環境に合わせてください。
#フォーマット
mkfs.ext4 /dev/sda7
mkfs.ext4 /dev/sda8
#マウント
mount /dev/sda7 /mnt
mkdir /mnt/boot
mkdir /mnt/home
mount /dev/sda1 /mnt/boot
mount /dev/sda8 /mnt/home
色々必要なものインストールしてfstab設定
色々つっこんでいきます。
wifi-menu
timedatectl set-ntp true
vi /etc/pacman.d/mirrorlist
pacstrap /mnt base base-devel zsh git dialog wpa_supplicant
genfstab -p /mnt >> /mnt/etc/fstab
arch-chrootしてlocaleの設定
SSDに色々突っ込んでいたところにログインします。
arch-chroot /mnt
echo yy.yank.arch > /etc/hostname
ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
pacman -S vi
pacman -S vim
vi /etc/locale.gen
locale-gen
echo LANG=en_US.UTF-8 > /etc/locale.conf
色々入ってなかったのでインストールしつつ、mkinitcpioでRAMの設定
RAMの設定。パスワードも設定します。
この記事を作成時点ではこれらをインストールしていますが、
今後依存関係も変遷すると思いますので必要なコマンドがあるかどうかはこの時点で色々確認しておいた方が良いです。
pacman -S mkinitcpio
pacman -Syu --needed base base-devel
pacman -S linux
pacman -S linux-firmware
mkinitcpio -p linux
passwd
boot loaderの設定
systemd-bootを入れていきます。
bootctl --path=/boot install
vi /boot/loader/loader.conf
$ # default arch
$ # timeout 1
$ # editor 0
cp /usr/share/systemd/bootctl/arch.conf /boot/loader/entries/
pacman -S intel-ucode
$ # Intelのマイクロコード修正もここで入れておく
blkid -s PARTUUID -o value /dev/sda7 >> /boot/loader/entries/arch.conf
$ # 手打ちは大変なので、rootパーティションのPARTUUIDを追記しておく
vi /boot/loader/entries/arch.conf
$ # title Arch Linux
$ # linux /vmlinuz-linux
$ # initrd /intel-ucode.img
$ # initrd /initramfs-linux.img
$ # options root=PARTUUID=hogehoge rw
なんか紆余曲折あって足りなかった依存をインストール
実はここまでの手順だけだと、いざ起動した時に
dhcpcdが入っていなくて困りました。
なので、この時点で以下あたりを入れておくとあとあと楽だと思います。
とりあえず、作った環境でインターネットにつながればなんとかなる…!
pacstrap /mnt linux base base-devel cryptsetup device-mapper dhcpcd e2fsprogs inetutils jfsutils linux-firmware logrotate lvm2 man-db man-pages mdadm nano netctl perl reiserfsprogs s-nail sysfsutils texinfo usbutils vi xfsprogs
参考)
https://www.archlinux.site/2019/10/arch-linuxbase.html
アンマウントして終了
設定は終了したので、アンマウントして終了。USB外して再起動
exit
umount -R /mnt
shutdown -h now
USB抜いて起動、Archに入って諸々設定
ここからはインストールしたArch上での作業です。USBインストールメディアは一旦おやすみです。
もちろん困ったことがあった場合にはUSBで再びブートして、インストールしたArchをいじることも可能です。
wifi設定
wifi-menuは使えません。依存入れれば良いんかな?
ちょっと自分はわからなかったのでwpa_supplicantというコマンドで設定して、dhcpcdでDHCP割当しました。
参考にした記事はこちら)
https://qiita.com/niranken/items/0ed41c284dd636fcaf0d
だいたいこの通りにやればできました。
ping 8.8.8.8
ping www.google.com
でつながればOKです。
それでもうまくいかない場合は、自宅のネットワーク環境の問題かパスワード不備、DNSの問題だとresolve.confいじったりも必要だと思います。
まとめ
だいたいこんな感じです。
今のところ、winもArchも普通に起動してデュアルブートライフを始められています。
次回は”Archデスクトップ環境編” or ”ドキッ!windows updateで大ピンチ!?編” などでお会いしましょう!
※windows updateで大ピンチ!?編が無いことを願っている
おまけ
作業してた時のツイート
bootable usbがamazonで数万円とかで販売されてるのなかなかすごいな…これとか https://t.co/QHaXyvPhvz
— yank shaving (@yy_yank) January 10, 2020
The Arch Way結構共感する
— yank shaving (@yy_yank) January 11, 2020
何回再起動してF2キー押してもBIOS起動しないな〜と思ったらなんかWin10から変わったぽいな
— yank shaving (@yy_yank) January 15, 2020
Archインストールチャレンジ
— yank shaving (@yy_yank) January 19, 2020
target not found wpa
— yank shaving (@yy_yank) January 19, 2020
target not found supplicant
とのことです
"Don't use YouTube tutorials. Read the official documentation - it's always up to date."https://t.co/sKe04gVJhc
— yank shaving (@yy_yank) January 19, 2020
そうですよね
とりあえずwinとarchのデュアルブート出来た。
— yank shaving (@yy_yank) January 19, 2020
そこそこすんなり行ったなぁ。どっかでどっちかトラブることもあるだろうけどまぁそれはそれで
0 件のコメント:
コメントを投稿