Installed VirtualBox + CentOS6.4
背景 Background
MacでRubyの勉強をしたい。
Macで環境構築するのは環境構築師Lv1のmabuにはリスクが高いため、
VitrualBoxを利用してCentOSをインストールする。
目標 Goal
- 開発環境として使いやすい環境である事
- rootアカウントは極力使用しないサーバ構成である事
- ローカルPCからSSH接続出来る事
- ローカルPCから直接VertualBox上にあるCentOSを起動できる事
- VirtualBoxがローカルPCを圧迫しない事
- anyenv、Vimを利用できる事
手順 Operation
VirtualBox設定
新規作成時設定内容
- 一般
- 名前:devmabu
- システム
- メモリ:2048MB
- 起動順序
- CD/DVD-ROM
- ハードディスク
- ストレージ:256GB(可変)
- オーディオ:無効化
- ネットワーク
OSインストール後設定変更
- システム
- 起動順序
- ハードディスク
- ストレージ
- ストレージツリーからISOファイルを削除
- 起動順序
パスワードなしのsudo権限をmabulogアカウントに付与
$ su - root パスワード:********************** # visudo mabulog ALL=(ALL)ALL # exit
SELinuxの無効化
$ getenforce Enforcing $ sudo vi /etc/sysconfig/selinux #SELINUX=enforcing SELINUX=disabled
インストール済パッケージ更新
$ sudo yum -y update
SSH、HTTP、MySQL自動起動設定
$ sudo chkconfig sshd on $ sudo chkconfig httpd on $ sudo chkconfig mysqld on $ sudo service sshd start $ sudo service httpd start $ sudo service mysqld start
FW穴開け
$ sudo vi /etc/sysconfig/iptables .... -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT .... $ sudo service iptables restart
ローカルPCのターミナルからSSH、HTTP接続確認
localPC$ curl -I http://localhost:2223 localPC$ ssh -l mabulog -p 2222 localhost
再起動後、設定確認
ターミナルからのSSH接続のため、コピー&ペーストが可能となります。
ウィンドウ無しでVM起動
localPC$ VBoxManage startvm devmabu --type=headless
ローカルPCのターミナルからmabulogアカウントでSSH接続確認
localPC$ ssh -l mabulog -p 2222 localhost
SELinux確認
$ getenforce Disabled
yumレポジトリ追加
良く使用するyumレポジトリをインストールします。
バージョンについては、事前確認済みです。
$ cd /usr/local/src $ sudo rpm --import http://ftp.riken.jp/Linux/fedora/epel/RPM-GPG-KEY-EPEL-6 $ sudo rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi $ sudo rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt $ sudo wget http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm $ sudo wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm $ sudo wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm $ sudo rpm -ivh epel-release-6-8.noarch.rpm $ sudo rpm -ivh remi-release-6.rpm $ sudo rpm -ivh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm $ cd /etc/yum.repos.d $ sudo vi epel.repo [epel] .... #enabled=1 enabled=0 .... $ sudo vi rpmforge.repo [rpmforge] .... #enabled=1 enabled=0 ....
必要なパッケージインストール
$ sudo yum -y install man-pages-ja mercurial git-core \ ncurses-devel make gcc openssl openssl-devel ctags \ zlib-devel bzip2 bzip2-devel readline-devel sqlite \ sqlite-devel libxml2-devel bison bison-devel \ curl-devel libjpeg-devel libpng-devel libtidy \ libxslt libxslt-devel httpd-devel enchant-devel \ libXpm libXpm-devel freetype-devel t1lib \ t1lib-devel gmp-devel libc-client-devel \ libicu-devel oniguruma-devel net-snmp \ net-snmp-devel fontforge tree lynx $ sudo yum -y --enablerepo=epel install re2c libmcrypt \ libmcrypt-devel $ sudo yum -y --enablerepo=remi install memcached \ memcached-devel libmemcached libmemcached-devel \ php-pecl-memcache mysql
公開鍵をGitHubに登録
$ cd $ ssh-keygen $ cat .ssh/id_rsa.pub ssh-rsa asdfasd........................ ....== mabulog@localhost.localdomain
mabu用のhomeディレクトリ設定
GitHubに登録しているmabu用の設定ファイルを設置する
$ cd $ mkdir work $ git clone https://github.com/KazuakiM/mySettingFiles work/mySettingFiles $ diff $HOME/work/mySettingFiles/.bash_profile .bash_profile $ diff $HOME/work/mySettingFiles/.bash_logout .bash_logout $ diff $HOME/work/mySettingFiles/.ctags .ctags $ diff $HOME/work/mySettingFiles/.vimrc .vimrc
個人環境のため、ご利用は計画的にお願いします。
$ ln -sf $HOME/work/mySettingFiles/.bash_profile .bash_profile $ ln -sf $HOME/work/mySettingFiles/.bash_logout .bash_logout $ ln -sf $HOME/work/mySettingFiles/.ctags .ctags $ ln -sf $HOME/work/mySettingFiles/.vimrc .vimrc $ cp -R work/mySettingFiles/.vim .vim $ exec $SHELL -l
アプリインストール
アプリインストール後、作業
$ cd $ ln -s $HOME/.vim/bundle/jellybeans.vim/colors/jellybeans.vim .vim/colors/jellybeans.vim $ ctags --languages=PHP -f $HOME/.vim/tags/php.tags `pwd` $ cd .vim/bundle/vimproc $ sudo make
今後 To be continue.
参考サイトにもある通り、MBAでVirtualBoxを起動は電池消費量が多いため、
不要なサービスなどの停止・削除などを検討する。
こちらはVirtualBox自体の停止等を簡単に行えるShellを作成する方向で進めていますが、
コマンドについては少しづつまとめているため、記事には時間がかかると思われます。
(2014/05/11 追記)
VirtualBox起動シェル記事に省電力について暫定的ではありますが、記載しました。