焼肉が食べたい

ただの日記です。技術的に学んだことも書こうと思っていますが、あくまで自分用メモです。

Hyper-VでUbuntu環境構築を行う上で最初にやること/はまりそうなところ

はじめに

いままでCentOSばかり使ってきたけれど、久しぶりにUbuntuをインストールしてみた。 Hyper-V上で環境構築するうえで、はまったところや最初に最低限やっておくべきことをメモしておく。 気づいたことがあれば順次更新予定。

デスクトップ版とサーバ版のどちらを採用するか

Ubuntuには、デスクトップ版とサーバ版の2種類が存在する。 読んで字のごとく、デスクトップ版はGUIが標準でついていて、デスクトップ環境として利用するためのバージョン、サーバ版はサーバとしての機能が充実しているバージョンという区切りらしいが、明確に両者におけるインストールパッケージの違いなどのドキュメントは見当たらなかった。 今回は、デスクトップ版を選ぶ。 また、Ubuntuには、日本語Remixという日本語専用のOSイメージもあるらしいが、今回はそちらではなくUbuntu本体のダウンロードサイトからダウンロードしたイメージを使用した。 尚、バージョンは2017/2現在の最新版の16.04.2を利用した。

Ubuntuインストール時のHyper-Vの設定

UbuntuHyper-Vにインストールしようとしてインストールが始まらない事象が発生した。(PXEbootでDHCPを探す状態になってしまう) 図のように、セキュアブートを無効化することで、OSイメージを起動することができるようになった。 設定->セキュリティ->「セキュアブートを有効にする」のチェックを外す

f:id:chie8842:20170323151109p:plain:w320

ネットワーク構成

ネットワーク接続要件として、以下を満たすようにしたかった。

  • 仮想サーバはインターネットに接続可能
  • Wifi環境が変わっても、ホストサーバから固定のアドレスで仮想サーバに接続可能

これを満たすためには、外部ネットワーク(ブリッジ接続)と内部ネットワークの2つの仮想ネットワークアダプタの設定を行った。

f:id:chie8842:20170323151107p:plain

内部ネットワークの設定

内部ネットワークは、固定IPアドレスを利用したいため、手動でIPv4アドレスを設定する。

f:id:chie8842:20170323151116p:plain

また、Hyper-Vの仮想スイッチマネージャと仮想サーバの設定において、以下を実行する。

  • 仮想スイッチマネージャ 内部ネットワークの名称->「管理オペレーティングシステムの仮想LANIDを有効にする」にチェックを入れ、VLANIDを設定する

  • 仮想サーバの設定 設定->内部ネットワーク->仮想LANIDを有効にする にチェックを入れる

f:id:chie8842:20170323151112p:plain:w280f:id:chie8842:20170323151114p:plain:w280

外部ネットワークの設定

なんでかよくわからないけれど、最初IPv6の設定がリンクローカルになっていて、インターネットに接続できなかった。

Ubuntuの設定->ネットワーク->NICの番号-> IPv6 Method: Link-Local OnlyになっているのをIgnoreにする

f:id:chie8842:20170323151119p:plain

最低限のパッケージのインストール

デスクトップ版は、SSHが標準でインストールされていない。 他にも最低限必要なパッケージをインストールする。

sudo apt-get install ssh vim sysv-rc-conf git curl zsh tree tmux nkf

ホストサーバとの共有ディレクトリを用意する

ホストのWindows上で共有用のディレクトリを作成する。 プロパティを開いて共有設定を行う。 今回は、C:\shareを作成して、共有設定を行った。

f:id:chie8842:20170323151122p:plain:w280f:id:chie8842:20170323151126p:plain:w280 f:id:chie8842:20170323151128p:plain:w280f:id:chie8842:20170323151106p:plain:w280

rootユーザで/etc/rc.localに以下を記述する。

mount -vvv -t cifs -o username=ユーザ名,password=パスワード,uid=1000,gid=1000,iocharset=utf8 //ホストサーバのIPアドレス/share /mnt/share

ロケールを英語にしたけどあとで日本語が使いたくなって実施したこと

殴り書き。

sudo apt-get install language-pack-ja
echo export LANG=ja_JP.UTF-8 >> ~/.profile
source ~/.profile
sudo update-locale LANG=ja_JP.UTF-8
/etc/default/localeを開いてすべてのパラメータ値をja_JP.UTF-8にする。
sudo apt-get install ibus-mozc
ibus-setup
killall ibus-daemon
ibus-daemon -d -x &

System Settings -> Language Support LanguageSupportがインストールされていません、というポップアップが出る。 インストールする、をクリックする。

上記実施しても日本語入力ができないままだった。 GUI画面で以下を実行すると、できるようになった。 System Settings -> Text Entry Switch to next source usingの箱の上で「変換」ボタンを押す。 Switch to previous source usingの箱の上で「無変換」ボタンを押す。

デフォルトのシェルをzshにする

chsh
Password:

Changing the login shell for chie8842
Enter the new value, or press ENTER for the default
        Login Shell [/bin/bash]: /bin/zsh

各種設定ファイルの配置

GitHub上に各種設定ファイルをおいているので、クローン/ダウンロード・配置する。

# GitHubリポジトリからクローン
git clone https://github.com/chie8842/configs.git
# 設定ファイル
.zshrc
.vimrc
.tmux.conf
.jupyter
.gitconfig
.vnc

その他

SELinuxとかiptablesとかもやらないと。(やってない。) JUJUとか触ってみないと。