目的
小型で無音、低電力なLXCホストを構築。
type PでVMを動かすのはつらいけど、LXCならわりといける。
作って増やせて壊せる環境って最高。
OSインストールについて
- Xubuntu 14.04 ISOファイルをダウンロード
- UNetbootinでブータブルUSBを作成
- http://unetbootin.sourceforge.net/
- Macで作るとうまくブートしないことがあった
- Linuxで作るといけた
- USBブートしインストール
- BIOS(起動時F2)でUSBから起動できるように設定すること
初期設定
1. アップデート
初回ログイン時にアップデートの通知が表示される。指示に従いインストールする。
カーネルの更新も入るため、アップデート後は再起動する。
2. 日本語入力環境の構築
uimとuim-mozcをインストールする。
uimの選択理由は、xrdpでも難なく使えたから。
(ibus, fcitxではダメだった)
$ sudo apt-get install uim uim-mozc
その後、メニューより「設定」→「言語サポート」を起動する。
「不完全な言語サポート」という画面が表示されるので、指示に従いインストールする。
「キーボード入力に使うIMシステム」から「uim」を選択する。
再起動する。
3. 有線ネットワークドライバの変更
デフォルトでsky2というドライバが導入され、有線ネットワークはそのままでも利用可能。
ただし、高負荷をかけると通信不可になる不具合がある。
sky2の使用を止め、Marvellのsk98linドライバを導入する。
公式版だとKernel 2.6.Xまでの対応なので、3.16.Xで使えるように修正して使用する。
修正版は下記に置いておく。導入方法も下記参照。無保証。
https://github.com/kinumi/sk98lin
4. SSHの導入
リモートメンテ用。
$ sudo apt-get install ssh
5. xrdpの導入
リモートメンテ用。
X11RDP-o-Maticで入れる。
https://github.com/scarygliders/X11RDP-o-Matic
Type Pだとビルドに半日以上かかるので、別マシンでビルドして入れるのが良い。
ビルド済バイナリを下記に置いておく。無保証。
https://drive.google.com/folderview?id=0BzkCNJJu2girdjZPMFVydm1DbFE&usp=sharing
$ dpkg -i x11rdp_0.9.0-1_i386.deb xrdp_0.9.0-1_i386.deb
6. LXC, LXC-Web-Panelの導入
目的の品。LXC-Web-Panelはお手軽管理用に入れておく。
$ sudo apt-get install lxc
$ wget -O - http://claudyus.github.io/LXC-Web-Panel/claudyus.gpg.key | sudo apt-key add -
$ echo "deb http://claudyus.github.io/LXC-Web-Panel/ debian/" | sudo tee /etc/apt/sources.list.d/lwp.list
$ sudo apt-get update
$ sudo apt-get install lwp
$ sudo update-rc.d lwp defaults
7. IPアドレス変更
eth0、wlan0のIPアドレスをそれぞれ適切に変更する。
8. LXCのストレージバックエンドでbtrfsを使う
lxcのストレージバックエンドにbtrfsを使えるようにする。
btrfsにすることで、クローンやスナップショットが便利になる。
9. cifs-utilsの導入、NASのマウント
NASでDropboxを同期させて、マウント。
コンテナからそこを参照できるようにする。
$ sudo apt-get install cifs-utils
$ sudo mkdir /mnt/Dropbox
$ sudo vi /etc/fstab #下記参照
$ sudo mount -a
//a.b.c.d/Dropbox /mnt/Dropbox cifs username=xxx,password=xxx,uid=xxx,gid=xxx,file_mode=0644,dir_mode=0755 0 0
//a.b.c.d/GoogleDrive /mnt/GoogleDrive cifs username=xxx,password=xxx,uid=xxx,gid=xxx,file_mode=0644,dir_mode=0755 0 0
//a.b.c.d/xxx /mnt/dsm-xxx cifs username=xxx,password=xxx,uid=xxx,gid=xxx,file_mode=0644,dir_mode=0755 0 0
//a.b.c.d/yyy /mnt/dsm-yyy cifs username=xxx,password=xxx,uid=xxx,gid=xxx,file_mode=0644,dir_mode=0755 0 0
10. セキュリティアップデートの自動適用設定
セキュリティアップデートが自動的に適用されるようにしておく
https://help.ubuntu.com/community/AutomaticSecurityUpdates
$ sudo apt-get install unattended-upgrades
$ sudo dpkg-reconfigure -plow unattended-upgrades