前回はDebianで試したけど今回はUbuntuの自作テンプレートを作ってみる。ちなみに公式Wikiにも書いてある
用意
ここから公式テンプレートをダウンロードする。今回はubuntu-14.04-x86_64-minimal.tar.gzをダウンロードした
ダウンロード後起動してSSHにて以下実行
sources.listの編集
/etc/apt/sources.listを以下に変更
deb http://ubuntutym.u-toyama.ac.jp/ubuntu trusty main restricted universe deb http://ubuntutym.u-toyama.ac.jp/ubuntu trusty-updates main restricted universe deb http://ubuntutym.u-toyama.ac.jp/ubuntu trusty-security main restricted universe multiverse
そのあとにapt-get update
apt-get upgrade
パッケージインストール
apt-get install -y sudo curl git bash-completion software-properties-common
ユーザーの追加
adduser thr3a adduser thr3a sudo adduser thr3a adm
aptの高速化とdebファイルを残さないようにする
echo 'force-unsafe-io' | sudo tee /etc/dpkg/dpkg.cfg.d/02apt-speedup > /dev/null echo 'DPkg::Post-Invoke {"/bin/rm -f /var/cache/apt/archives/*.deb || true";};' | sudo tee /etc/apt/apt.conf.d/no-cache > /dev/null
タイムゾーンの変更
dpkg-reconfigure tzdata
ゴミ削除
> /var/log/messages; > /var/log/auth.log; > /var/log/kern.log; > /var/log/bootstrap.log; > /var/log/dpkg.log; > /var/log/syslog; > /var/log/daemon.log; > /var/log/apt/term.log; rm -f /var/log/*.0 /var/log/*.1 /var/log/*.gz
debキャッシュ削除
rm -rf /var/cache/apt/archives/* apt-get clean
以上がSSHからやる作業 以降はOpenVZホスト側の作業
コンテナの停止
IDが777の場合 適宜読み替える
vzctl set 777 --ipdel all --save rm -f /var/lib/vz/private/777/etc/hostname vzctl stop 777
生成
cat << EOF > /tmp/excludes .bash_history lost+found /dev/* /mnt/* /tmp/* /proc/* /sys/* /usr/src/* EOF cd /var/lib/vz/private/777 tar --numeric-owner -zcf /var/lib/vz/template/cache/ubuntu-14.04-mod.tar.gz . -X /tmp/excludes
LAMP構成の場合
PHPの公式パッケージが古いので外部のを導入する
add-apt-repository ppa:ondrej/php5
もしPythonエラー出たら以下を実行
sudo locale-gen en_US.UTF-8 export LANG=en_US.UTF-8
インストール
apt-get install -y apache2 libapache2-mod-php5 php5 php5-curl php5-gd php-pear mysql-server php5-mysql