LoginSignup
0

More than 3 years have passed since last update.

posted at

updated at

Alpineを仮想PCにインストール

この記事について

Alpine LinuxVirtualBox / VMware Workstation Player(以下VMware)へ、Vagrant等に頼らずインストールするための手順書です。

執筆時の環境
Windows10 1909
AlpineLinux 3.11.2
VirtualBox 6.1
VMware Workstation Player 15.5

準備

AlpineLinuxの入手

仮想PC向けに要らない要素を削ぎ落したVIRTUAL版がおすすめです。

VirtualBox用Tips
GuestAdditionsのパッケージが64bit用しかないので、`x86_64`がおすすめです。
VMware用Tips
デフォルトNICのドライバがVIRTUAL版には入っていないので、仮想PCのセットアップ後に一手間必要になります。後述の説明を参照して下さい。

仮想PCセットアップ(Tips)

シリアル接続
VIRTUAL版の場合シリアルポート経由で接続でき、インストールの段階でターミナルエミュレータのコピペ機能等が利用できます。 名前付きパイプを利用する場合、パイプ名には\\.\pipe\という接頭辞が必要なので注意しましょう。
VirtualBox用Tips
ストレージ
コントローラを virtio-scsi にするとオーバーヘッドを減らせます。
ネットワーク
アダプタータイプを準仮想化ネットワーク(virtio-net)にするとオーバーヘッドを減らせます。
VMware用Tips
VIRTUAL版にはデフォルトNIC用のドライバが入っていないため、デバイスタイプの変更が必要です。 仮想PCを作成後VMwareを一旦終了させて、*.vmxファイルに以下の一行を追記して下さい。

ethernet0.virtualDev = "vmxnet3"`

インストール

  1. ログイン … rootと入力すればパスワードなしでログインできます。

    localhost login: root
  2. ログイン後 … setup-alpineと入力してインストーラを起動します。

    localhost:~# setup-alpine
  3. キーボードの選択(1/2) … 日本語キーボードであればjpと入力します。

    Available keyboard layouts:
    (省略)
    Select keyboard layout [none]: jp
  4. キーボードの選択(1/2) … 日本語キーボードであればjpと入力します。
    AT互換機の場合jp-OADG109A、macの場合jp-macの方が良いかもしれません。

    Available variants: jp-OADG109A jp-dvorak jp-kana jp-kana86 jp-mac jp 
    Select variant []: jp
  5. ホスト名 … デフォルト設定localhostで良ければenter。

    Enter system hostname (short form, e.g. 'foo') [localhost]:
  6. ネットワーク設定 … 以下の手順をネットワークアダプタ(インターフェース)毎に繰り返します。

    DHCPを設定する場合
    1. インターフェース名 … デフォルト設定eth?(?=0~)でenter。
      Which one do you want to initialize? (or '?' or 'done') [eth0]
    2. アドレス … デフォルト設定dhcpでenter。
      Ip address for eth0? (or 'dhcp', 'none', '?') [dhcp]
    固定IPを設定する場合
    1. IPアドレス … 192.168.xx.xxと入力
      Ip address for eth0? (or 'dhcp', 'none', '?') [dhcp] 192.168.137.128
    2. ネットマスク … デフォルト設定255.255.255.0でenter。
      Netmask? [255.255.255.0]
    3. デフォルトゲートウェイ … 1つだけホスト側仮想アダプタのIPを設定し、他はデフォルト設定(空)のままenter。
      ただしdhcpを割り当てたアダプタが存在する場合は、全て空にします。
      Gateway? (or 'none') [none] 

  7. ネットワーク手動設定 … デフォルト設定noでenter。手動で設定する場合は、/etc/network/interfaces をviで編集することになります。

    Do you want to do any manual network configuration? [no]
  8. ドメイン名 … ネットワーク設定でdhcpを選択したアダプタが存在する場合、この設定はスキップされます。通常はデフォルト設定(空)でenter。

    DNS domain name? (e.g 'bar.com') []
  9. DNS … ネットワーク設定でdhcpを選択したアダプタが存在する場合、この設定はスキップされます。ホスト側のDNS設定に合わせるか、1.1.1.1等のパブリックDNSのIPを入力します。

    DNS nameserver(s)? [] 1.1.1.1
  10. rootパスワード … 適当に入力します。

    Changing password for root
    New password:
    Retype password:
  11. タイムゾーン … Asia/Tokyoと入力します。

    Which timezone are you in? ('?' for list) [UTC] Asia/Tokyo
  12. Proxy設定 … デフォルト設定noneで良ければenter。

    HTTP/FTP proxy URL? (e.g. 'http://proxy:8080', or 'none') [none]
  13. NTPサーバの選択 … デフォルト設定chronyで良ければenter。

    Which NTP client to run? ('busybox', 'openntpd', 'chrony' or 'none') [chrony]
  14. ダウンロードサイトの選択 … fと入力することで最も応答の速いミラーサイトを探しますが、たまにメンテナンスで止まったりするので、デフォルトの1で良いと思います。(CDNなので各時点で適切なサーバに回されるはず)

    Available mirrors:
    1) dl-cdn.alpinelinux.org
    (省略)
    Enter mirror number (1-46) or URL to add (or r/f/e/done) [1]: f
  15. SSHサーバの選択 … デフォルト設定opensshでenter。

    Which SSH server? ('openssh', 'dropbear' or 'none') [openssh] 
  16. インストール先ドライブの選択 … sdaと入力します。

    (省略)
    Which disk(s) would you like to use? (or '?' for help or 'none') [none] sda
  17. パーテーション設定の選択 … sysと入力します。

    (省略)
    How would you like to use it? ('sys', 'data', 'lvm' or '?' for help) [?] sys
  18. 最終確認 … yと入力します。

    WARNING: Erase the above disk(s) and continue? [y/N]:
  19. 完了 … 以下のメッセージが表示されたら完了です。

    Installation is complete. Please reboot
  20. 再起動 … isoイメージの取り出しを行ってから、rebootと起動し再起動します。
    またはpoweroffと入力し一旦終了(&スナップショット作成)してから再起動します。

再起動後の初期設定

起動スクリプトのバグ(?)修正

mv /etc/profile.d/color_prompt /etc/profile.d/color_prompt.sh と入力することで、プロンプトに色が付くようになります。

rootの置換

sudoの導入

  1. apk add sudo と入力し、sudoをインストールします。
  2. visudo と入力し、sudoの設定ファイルを開きます。
  3. /# %wheel と入力し# %wheel ALL(ALL) = ALL の行を検索します。
  4. 2xと入力し、コメント(#)を外します。(以下のようになればOK)
    %wheel ALL=(ALL) ALL
  5. :wqと入力し、保存&終了します。

ユーザーの追加

  1. adduser ユーザー名 でユーザーを追加します。
  2. adduser ユーザー名 wheel と入力し、作成したユーザーがsudoを使えるようにします。

rootの封印

作成したユーザーでログインし直し、rootを封印します。

  1. sudo passwd -l root と入力し、rootアカウントをロックします。
  2. sudo passwd -d root と入力し、rootのパスワードをクリアします。

共有フォルダの設定

edge/communityパッケージが必要となるので、sudo vi /etc/apk/repositories と入力しコメント(#)を外しておく必要があります。

VirtualBox Guest Additions

  1. sudo apk add virtualbox-guest-additions virtualbox-guest-modules-virt でGuestAdditionをインストールします。 ※32bit版ではここで失敗します!
  2. sudo rc-update add virtualbox-guest-additions defaultで起動時にサービスが立ち上がるようにします。
  3. sudo adduser $USER vboxsf でログイン中のユーザーに仮想フォルダへのアクセス権を付与します。

OpenVMTool

  1. sudo apk add --update open-vm-toolsでインストールします。
  2. sudo apk rc-update add open-vm-toolsで起動時にサービスが立ち上がるようにします。
  3. sudo vmhgfs-fuse -o allow_other /mnt/hgfs/で、/mnt/hgfs以下に全ての共有フォルダがマウントされます。

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
What you can do with signing up
0