さくらのVPSにCent OS 6.2を入れた時の初期設定
※$や#はあえて書いていません。コピペしやすいので。
基本的には以下を元にしてる
http://weble.org/2011/05/16/sakura-vps-and-centos
rootでログイン
https://secure.sakura.ad.jp/vpscontrol/main/
さくらの管理画面からCentOS6.2(デフォ)をインストール
VPSホームのIPアドレスに対して(自分は)Puttyからアクセス
パスワードはOSをインストールするときに入力したものを入力
一瞬だ
Userの設定
adduser hogeta passwd hogeta # このあと2回入力を求められるので入力
rootと違うものがよいと思われ
sshのPort番号の設定
vi /etc/ssh/sshd_config #Port 22 Port 10022 # 適当な数字、なんでもよい /etc/init.d/sshd restart # 入力終わったら再起動
iptablesの設定
vi /etc/sysconfig/iptables *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :RH-Firewall-1-INPUT - [0:0] -A INPUT -j RH-Firewall-1-INPUT -A FORWARD -j RH-Firewall-1-INPUT -A RH-Firewall-1-INPUT -i lo -j ACCEPT -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT -A RH-Firewall-1-INPUT -p 50 -j ACCEPT -A RH-Firewall-1-INPUT -p 51 -j ACCEPT -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # SSH, HTTP, FTP1, FTP2, MySQL -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 10022 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited COMMIT # 再起動 /etc/rc.d/init.d/iptables restart
sshの設定
vi /etc/ssh/sshd_config # 以下変更点 PermitRootLogin no PasswordAuthentication no PermitEmptyPasswords no # ssh再起動 /etc/init.d/sshd restart
sshの鍵設定
puttygenで作成した公開鍵を使った
cd mkdir .ssh echo '公開鍵の中身' > authorized_keys chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
sudoerの設定
/usr/sbin/visudo hoge ALL=(ALL) ALL #上で作ったUserを追加
tmuxの設定
sudo yum install -y tmux
ですんなり入る
zshの設定
sudo yum install -y zsh
oh-my-zshいいよね
curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh chsh -s /bin/zsh # デフォルトをzshに
yumをまとめていれる
perlとかrubyとかnginxとかコンパイルしますよね?
する方は以下を実行
sudo yum grouplist
yum grouplistで必要なものをひとまとめにインストールできるんだけど、そのリストの一覧が見れる
使いそうなものをかいつまんで入れてみる
yum groupinstall -y "Perl Support" # やる必要なかも yum groupinstall -y "Development tools" # やる必要ないかも yum groupinstall -y "Ruby Support" yum groupinstall -y "Haskell" yum groupinstall -y "Emacs"
rubyのセットアップ
ruby自体は入れたけど
ruby -v ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]
お分かりですよね?
自分はrbenv派なので
基本は以下の記事を参考にしているけどちょこちょこ変えてる
http://mukaer.com/archives/2012/03/12/rubyrbenv/
cd git clone git://github.com/sstephenson/rbenv.git .rbenv
自分の場合はzsh派なので以下のような設定を追記する
cat .zshenv # rbenv if [ -d ${HOME}/.rbenv ] ; then PATH=${HOME}/.rbenv/bin:${PATH} export PATH eval "$(rbenv init -)" fi
自分はvimのquickrunでrubyを呼び出すことが多いんだけど上記のように設定したのは以下の記事が理由(まあドキュメント読めって話ですが紹介記事で満足しちゃいますよね)。
http://blog.glidenote.com/blog/2012/06/26/vim-zshenv-rbenv/
でシェルのリスタート
exec $SHELL
ruby-buildのインストール
mkdir -p ~/.rbenv/plugins cd ~/.rbenv/plugins git clone git://github.com/sstephenson/ruby-build.git
rbenv-gemsetのインストール
cd ~/.rbenv/plugins git clone git://github.com/jamis/rbenv-gemset.git
これからビルド!だけど一応コア数を求める
cat /proc/cpuinfo | grep "cpu cores" cpu cores : 1 cpu cores : 1 cpu cores : 1
1ってなってればコア数が1つしかないんで特にオプション設定せず。
インストールするバージョン一覧を確認
rbenv install --list
ここでは1.9.3-p194と2.0.0-devを入れる
MAKEOPTS=" -j 1" # 意味ないけど rbenv install 1.9.3-p194 rbenv install 2.0.0-dev rbenv rehash source .zshrc # する必要があった
結構時間かかるので放置。
切り替えはrbenv global
rebenv global 2.0.0-dev ruby -v ruby 2.0.0dev (2012-09-18 trunk 36986) [x86_64-linux]
rubyオプションのついたvimをいれる
そのもそもrubyオプションがついているか確認
vim --version | grep ruby +printer +profile +python +quickfix +reltime +rightleft -ruby +scrollbind
うん、ついてない
yum remove vim vim-enhanced yum install ncurses-devel -y svn co https://vim.svn.sourceforge.net/svnroot/vim/vim7 cd vim7 ./configure \ --with-features=huge \ --enable-multibyte \ --enable-rubyinterp \ --enable-pythoninterp \ --enable-perlinterp \ --enable-gpm \ --enable-cscope \ --enable-fontset make && make install # もしかしたらyum -y install ruby-develしてないかもしれない
もう一度確認
vim --version | grep ruby zsh: correct 'vim' to 'vi' [nyae]? n +printer +profile -python +quickfix +reltime +rightleft +ruby +scrollbind Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -D_FORTIFY_SOURCE=1 -D_REENTRANT -D_GNU_SOURCE -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -I/usr/lib64/ruby/1.8/x86_64-linux -DRUBY_VERSION=18 Linking: gcc -L. -rdynamic -Wl,-export-dynamic -Wl,-E -Wl,-rpath,/usr/lib64/perl5/CORE -L/usr/local/lib -o vim -lm -lncurses -lselinux -Wl,-E -Wl,-rpath,/usr/lib64/perl5/CORE -fstack-protector -L/usr/lib64/perl5/CORE -lperl -lresolv -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc -lruby -lpthread -lrt -ldl -lcrypt -lm
なんか大漁!でもちゃんと+rubyになっていることがわかる。
gem install vim-ruby vim-ruby-install.rb
参考:http://d.hatena.ne.jp/hayori/20080607/1212832293
とここまでやって以下の記事でRSenceならrubyオプション要らない的なことが書いてるのを発見したorz
http://vim-users.jp/2011/09/hack229/
perlのセットアップ
自分としたことがperl環境を作る前にrubyにやっていたなんて…
curl -kL http://install.perlbrew.pl | bash # echo source ~/perl5/perlbrew/etc/bashrc >> ~/.zshrc source ~/.zshrc perlbrew install --notest perl-5.14.2 perlbrew switch perl-5.14.2 perl -v curl -kL http://install.perlbrew.pl | bash #echo source ~/perl5/perlbrew/etc/bashrc >> ~/.zshrc source ~/.zshrc perlbrew install --notest perl-5.14.2 perlbrew switch perl-5.14.2 perl -v curl -L http://cpanmin.us | perl - App::cpanminus
※この記事は書きかけでkazuphが出社してしまっています。
※またここまで書いた後記事を分けたほうがいいと思い始めました。