0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Hyper-VにArch Linuxをインストール

Last updated at Posted at 2020-05-03

#はじめに
 Windows10Pro の Hyper-V仮想マシンに Arch Linux を最小限インストールした手順のメモです。Archのインストールは初めてでしたが、ハマりどころが2点ほどありました。

  • Hyper-V仮想マシンからのライブ環境起動に失敗 ?!
  • pacstrapのオプションに linux(kernel) も必要 !

 前者については同様な情報が見つかっていないので、自分の環境だけなのかもしれません。
 後者は公式の Install_guide を確認することで解決しましたが、baseグループから kernel2019年10月に外されたのが原因でした。それ以前のネット情報を頼りにしていたため、すぐには気づきませんでした。

#インストール環境

#インストール方法
##1. Hyper-V 仮想マシン作成
 Hyper-Vマネージャーを使って仮想マシンを作成する。クイック作成で、ダウンロードしたisoイメージを指定し、セキュアブートを無効化します。ネットワークは規定のスイッチのままで大丈夫です。
Create_Virtual_Machine.png
 そのまま仮想マシンに接続します。
05_Virtual_machine_created.png

##2. ライブ環境の起動
 仮想マシンに接続しても、なぜかライブ環境が起動せず、下の画面に、、、
07_Mapping_table.png
 よくわからないまま exitコマンドで抜け、改めて1行目の Arch Linux archiso x86_64 UEFI CD を選択することで、無事にライブ環境を起動できました。
08_UEFI_Menu.png

##3. ライブ環境での設定
####3.1. キーボードレイアウト
 まず、必要に応じてキーマップを設定します。

# loadkeys jp106

####3.2. インターネット接続確認
 DHCP環境であれば設定は不要ですが、念のためネット接続を確認しておきます。

# ping -c3 archlinux.jp

####3.3. パーティション作成
 ここでは、swapなしの単純なパーティションとします。

Partition Code Name Mount point
/dev/sda1 EF00 EFI system partition /mnt/boot
/dev/sda2 8300 Linux filesystem /mnt
 gdisk /dev/sda
  n    # 新規パーティション
  #[ENTER] 
  #[ENTER] 
  +512M 
  EF00
  n    # 新規パーティション
  #[ENTER] 
  #[ENTER] 
  #[ENTER] 
  #[ENTER]
  p    # パーティション一覧
  w    # 書き込み指定
  Y    # 書き込み確認

gdisk.png

####3.4. パーティションのフォーマット
 EFIシステムパーティションをfat32で、ルートパーティションをxfsでフォーマットします。

# mkfs.fat -F32 /dev/sda1
# mkfs.xfs -m crc=1 /dev/sda2

####3.5. ファイルシステムのマウント
 ルートを/mntに、EFIシステムを/mnt/bootにマウントします。

# mount /dev/sda2 /mnt
# mkdir /mnt/boot
# mount /dev/sda1 /mnt/boot

####3.6. ミラーの設定
 /etc/pacman.d/mirrorlistを編集して、国内ミラーをトップにあげる、もしくは、単純に以下の2行だけでも良いと思います。

/etc/pacman.d/mirrorlist
Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch
Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch

####3.7. ベースシステムおよびカーネル等のインストール
 ハマりどころその2です。インストールガイドどおりが無難ですが、忘れないうちに dhcpcdvi などの適当なエディタもインストールします。
 前述のとおり、以前は base グループにカーネルやエディタ等も含まれていたようです。

# pacstrap /mnt base linux linux-firmware dhcpcd vi

####3.8. fstabの生成

# genfstab -U /mnt >> /mnt/etc/fstab

####3.9. chroot

# arch-chroot /mnt

####3.10. タイムゾーン

# ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
# hwclock --systohc

####3.11. ロケール
 とりあえず英語環境で大丈夫ということであれば、LANG=C にて運用することとし、ロケール設定を省略できます。
 必要に応じてキーマップは変更しておきます。

# echo KEYMAP=jp106 > /etc/vconsole.conf

####3.12. ネットワーク設定
 ここでは hoge としますが、適当な hostname を設定します。

# hostnamectl set-hostname hoge
# echo hoge > /etc/hostname
# echo -e "127.0.0.1 localhost\n::1 localhost" >> /etc/hosts

 再起動に備えて、DHCP機能を有効化します。

# systemctl enable dhcpcd

####3.13. rootパスワード設定

# passwd

####3.14. ブートローダー

# bootctl install
# vi /boot/loader/loader.conf

エディタで /boot/loader/loader.conf を編集します。

/boot/loader/loader.conf
 default arch
 timeout 3
 editor no
# cp /usr/share/systemd/bootctl/arch.conf /boot/loader/entries/
# blkid -s PARTUUID -o value /dev/sda2 >> /boot/loader/entries/arch.conf
# vi /boot/loader/entries/arch.conf

エディタで /boot/loader/entries/arch.conf を編集します。
PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX は、blkidコマンドで最終行に追加した値に置き換えます。

/boot/loader/entries/arch.conf
## This is just an example config file.
## Please edit the paths and kernel parameters according to your system.

title   Arch Linux
linux   /vmlinuz-linux
initrd  /initramfs-linux.img
#options root=PARTUUID=XXXX rootfstype=XXXX add_efi_memmap
 options root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rootfstype=xfs add_efi_memmap
# bootctl update
# bootctl

####3.15. 再起動
 chroot から抜けて、システムを再起動します。

# exit
# reboot

 再起動後もいくつか設定が残っていますが、今回は最小限インストールということで、省略します。

#あとがき
 もともと、Windos10上で古いCAEツールを使用するためにCentOSの仮想マシンを構築しましたが、Hyper-Vでは解像度が固定されて使いにくかったため、linux-vm-tools に対応しているArch Linuxでの再構築を試みましたが見事にハマりました。一応、Manjaroで当初の目的を果たしましたが、機会があればArch Linuxで GUI環境構築にも再トライします。

#更新履歴

  • 2020/05/03 初稿

#参照

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?