Ubuntu14.04のVM作ったらとりあえずやること

  • 54
    Like
  • 0
    Comment
More than 1 year has passed since last update.

この記事について

対象読者

  • Ubuntu の VM を建てたり捨てたりする人

手に入るもの

  • パッケージリポジトリが国内ミラーに向いた日本語 Ubuntu 環境
  • コピペで使える Ubuntu trusty64 の Vagrantfile

実践

コピペでそのまま使えるように記載。

# デフォルトエディタをvimに変更
sudo update-alternatives --set editor $(update-alternatives --list editor | grep 'vim.basic')

# パッケージリポジトリを日本ミラーサーバーに変更
sudo sed -i'~' -E "s@http://(..\.)?(archive|security)\.ubuntu\.com/ubuntu@http://ftp.jaist.ac.jp/pub/Linux/ubuntu@g" /etc/apt/sources.list

# よく使うパッケージをインストール
sudo apt-get -y update
sudo apt-get -y install software-properties-common
sudo add-apt-repository -y ppa:git-core/ppa
sudo apt-get -y update
sudo apt-get -y install language-pack-ja wget curl zip unzip git

# 言語系環境変数を日本語UTF-8に変更
sudo update-locale LANGUAGE=ja_JP.UTF-8 LC_ALL=ja_JP.UTF-8 LANG=ja_JP.UTF-8

# タイムゾーンをAsia/Tokyoに設定
sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

以下蛇足(解説)

デフォルトエディタの変更

sudo update-alternatives --set editor $(update-alternatives --list editor | grep 'vim.basic')

update-alternatives で editor を vim に変更するワンライナーです。 --set <name> <path> で非対話的な設定変更ができます。
渡す path も update-alternatives によって管理されているものから取得しています。

対話的にやる場合は、 update-alternatives --config editor と実行して、表示された選択肢に従って任意のエディタの番号を入力します。

パッケージリポジトリのサーバー変更

sudo sed -i'~' -E "s@http://(..\.)?(archive|security)\.ubuntu\.com/ubuntu@http://ftp.jaist.ac.jp/pub/Linux/ubuntu@g" /etc/apt/sources.list

標準状態では http://<国コード>.<archive または security>.ubuntu.com/ubuntu のようなURLになっていますので、その辺を正規表現でひっかけて JAIST に変更しています。
ついでに sed -i'~' でバックアップファイル sources.list~ を作成。

標準状態の URL は将来のバージョンでは変更される可能性もありますので、これは 14.04 trusty における例として見てください。

Official Archive Mirrors for Ubuntu でミラーリストが確認できます。日本国内の場合は JAIST か理研の二択のような状況で、2015年2月現在は JAIST が最も安定して高速です。

よく使うパッケージのインストール

sudo apt-get -y update
sudo apt-get -y install software-properties-common
sudo add-apt-repository -y ppa:git-core/ppa
sudo apt-get -y update
sudo apt-get -y install language-pack-ja wget curl zip unzip git

標準状態だと Git 1.9.x が入ったりするので、最新Stable版が取れる PPA をあらかじめ追加しています。このへんは目的にもよりますのでお好みで。

日本語環境の設定

sudo update-locale LANGUAGE=ja_JP.UTF-8 LC_ALL=ja_JP.UTF-8 LANG=ja_JP.UTF-8
sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

ロケールについてはパッケージ language-pack-ja を入れた場合の話ですが、言語関係の環境変数を更新し、タイムゾーンを Asia/Tokyo に設定しています。

設定後はログインしなおすなり VM を再起動するなり必要になる場合があります。

おまけ

筆者は Vagrantfile に記述してこんな感じで使ってます

Vagrantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :

VAGRANTFILE_API_VERSION = "2"

$ubuntu_setup = <<EOS
sudo update-alternatives --set editor $(update-alternatives --list editor | grep 'vim.basic')
sudo sed -i'~' -E "s@http://(..\.)?(archive|security)\.ubuntu\.com/ubuntu@http://ftp.jaist.ac.jp/pub/Linux/ubuntu@g" /etc/apt/sources.list
sudo apt-get -y update
sudo apt-get -y install software-properties-common
sudo add-apt-repository -y ppa:git-core/ppa
sudo apt-get -y update
sudo apt-get -y install language-pack-ja wget curl zip unzip git
sudo update-locale LANGUAGE=ja_JP.UTF-8 LC_ALL=ja_JP.UTF-8 LANG=ja_JP.UTF-8
sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
EOS

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "ubuntu/trusty64"
  config.vm.provider "virtualbox" do |vb|
    # お好みで
    vb.name = "sandbox"
    vb.memory = 2048
    vb.cpus = 2
  end
  config.vm.provision "shell", inline: $ubuntu_setup
end

以上です。