Linuxの最近のブログ記事

uehatsu (2015年11月24日 16:26)

CentOSを新規インストールする度に、Vimで自動コメントアウトの設定がイキになってしまうのでオフにする。

基本Vimの設定はいじりたくないのですが、これだけは毎回変更してます。Webの情報などからコピペするとコメントがだーっと続いてしまい、それを後から削除するのはもうすごい手間がかかる。正直面倒くさい。

ネットを調べると、~/.vim/after/plugin/ 以下に設定ファイルを作成して読み込ませるのが良いとある。その通りにやってみる。

$ mkdir -p ~/.vim/after/plugin
$ vi ~/.vim/after/plugin/common-settings.vim

内容はこう。

autocmd Filetype * set formatoptions-=ro

しかしうまくいかない。

以下のように設定を2行に分けて書いたら動きました。理由は分からず。

autocmd Filetype * set formatoptions-=r
autocmd Filetype * set formatoptions-=o

ひとまず良しとしましょう。

uehatsu (2015年11月13日 13:18)

Debianをほとんど使ったことのない上野です。ちょっと仕事で使う事になったので色々と調べています。DataAPIを使える様にしたかったのですが動かず、手間取ってしまったのでログを残しておきます。

普通にnginxとfcgiwrap, spawn-fcgiをインストールします。(MySQLとかもインストールしますが、ここでは割愛)

$ sudo apt-get install nginx fcgiwrap spawn-fcgi

ここで設定ですが、nginxをちょっとうまく設定してやらないとfcgiwrap側にPATH_INFOが渡らない。

    location / {
        access_log  /var/log/nginx/foobar.access.log;
        error_log   /var/log/nginx/foobar.error.log;

        index index.cgi index.html;

        location ~ \.cgi(/|$) {
            gzip off;
            fastcgi_index index.cgi;
            fastcgi_split_path_info ^(.+?\.cgi)(/.*)$;
            if (!-e $document_root$fastcgi_script_name) {
                return 404;
            }
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include /etc/nginx/fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param PATH_INFO $fastcgi_path_info;
            fastcgi_param PATH_TRANSLATED $fastcgi_path_info;
            fastcgi_pass unix:/var/run/fcgiwrap.socket;
        }
    }

SCRIPT_FILENAME の設定が2回ありますが、この2行でfastcgi_paramsのincludeを挟んでやらないと、うまくパラメーターが上書きできず403エラーが返ってきてしまいます。そのエラーも単に"403"と返ってくるだけ。整形もなにもされていません、たったの3バイト。仕方が無いので2行書いています。
前だけでも、後ろだけでもダメ。Debianのメーリングリストに同様の問題が報告されていたので、バグかなと思いますが、それ以上は追っていません。動いたし(苦笑)

ともかくこれで動くようになりました。めでたし、めでたし(^^)

Movable Type 6 本格活用ガイドブック (Web Designing BOOKS)
Movable Type 6 本格活用ガイドブック (Web Designing BOOKS) 藤本 壱 柳谷 真志 奥脇 知宏 シックス・アパート株式会社

マイナビ 2013-11-30
売り上げランキング : 133328


Amazonで詳しく見る
by G-Tools
uehatsu (2015年1月12日 22:49)

ここのところ、Vagrantを使っていろいろとやるのにはまってます。

インストール方法とかは色々なところに書かれているので、それ以降の事を書いてみたいと思います。

uehatsu (2013年7月 5日 23:11)

前回は CentOS 4.9 のインストール方法をまとめましたが、実サーバからKVM環境に移行するのにrsyncなど使うのはちょっとと考えていました。backup & restore で移行する方法がないか調べていたらヒットし、実際にKVMへの移行が成功したので簡単にまとめます。ここでは CentOS 4.9 を例に書いていますが、CentOS であれば、5, 6 でも可能です。試していませんが、RedHat Enterprise Linux でも同じ手順で移行ができるようです。

利用するのは mondo rescue というもの。元々はLinuxのバックアップツールです。このツールで起動状態でデータをバックアップして、ISOファイルに切り分けてくれます。リストアはISOファイル(もしくはDVD-Rなど)で起動してLinuxのインストールと同じような要領で書き戻すだけです。

元々のディスク使用量分のハードディスクが必要ですが、パーティションの切り直し機能を持っているので、元のディスクより小さなハードディスクなどにも書き戻しができる優れものです。実環境からKVM環境に以降する際にデバイス名が違ってしまう事がありますが、それもインストールの途中で手動ではありますが変更する事が可能です。インストーラーはCUIですのでちょっと敷居が高いかも。複数台ある実サーバや、古いサーバで動いているものをKVMでまとめたいなんて人にはもってこいの仕組みです。

1. mondo rescueのインストール

インストール自体はRPMで簡単です。wgetなどでダウンロードしてインストールします。

# wget ftp://ftp.mondorescue.org/rhel/4/i386/afio-2.5-1.rhel4.i386.rpm
# wget ftp://ftp.mondorescue.org/rhel/4/i386/buffer-1.19-4.rhel4.i386.rpm
# wget ftp://ftp.mondorescue.org/rhel/4/i386/mindi-busybox-1.18.5-3.rhel4.i386.rpm
# wget ftp://ftp.mondorescue.org/rhel/4/i386/mindi-2.1.5-1.rhel4.i386.rpm
# wget ftp://ftp.mondorescue.org/rhel/4/i386/mondo-3.0.3-1.rhel4.i386.rpm
# rpm -ivh afio-2.5-1.rhel4.i386.rpm buffer-1.19-4.rhel4.i386.rpm mindi-busybox-1.18.5-3.rhel4.i386.rpm mindi-2.1.5-1.rhel4.i386.rpm mondo-3.0.3-1.rhel4.i386.rpm

2. データのバックアップ

以下のコマンドで、/backup 以下に 4G で切り分けられたISOイメージが、server-backup-(日付)-n.iso という形で連番で作られます。/backup 以下はバックアップ対象に含めません。ホットバックアップが売りですが、ファイルハンドラがオープンされたままのファイルがバックアップ後も正しく読めるかどうかの担保はされていないようなので、バックアップする際はファイルアクセスをするサービスは停めた方が良さそうです。自分の環境では、25G前後のバックアップで1時間半ほどかかりました。KVMサーバにISOイメージをコピーするのだけで1時間以上かかったので、併せて2時間半ほどになります。ISOイメージのコピーが済んだらバックアップ元の実サーバを止めます。

# mondoarchive -O -i -g -0 -s 4g -p server-backup-`date +%Y%m%d` -l GRUB -d /backup -E /backup

3. インストーラの起動

KVMであればISOイメージの1番を接続、ISOイメージが利用出来ない場合や移行先も実サーバの場合は作成したISOイメージをDVD-Rに焼いて、そこから起動します。起動すると boot プロンプトが出るので以下のように打って Enter キーを押します。これでハードディスク初期化モードで、かつインタラクティブモードのCUIインストーラが起動します。

boot: nuke interactive

4. パーティションの変更

自分の環境ではパーティションのデバイス名が変わっていたので変更しました。また、KVMのハードディスクイメージが実HDDのサイズより小さいので、パーティションサイズも小さくしました。

5. リストア

インストーラの通りに進めると簡単にリストアが終わります。自分の環境では、30分強でおわりました。

6. boot loader のインストール(GRUB)

boot loader (GRUB) の情報も必要があれば書き換えます。自分の場合はインストール先のパーティション名と、パーティションのデバイス名などを変更しました。

7. MACアドレスの書き換え

ここでする必要はありませんが、先にネットワークカードのMACアドレスを書き換えます。具体的には実際のネットワークカードのMACアドレスから、KVMの仮想ネットワークカードのMACアドレスに書き換えます。

sh-3.00# mount /dev/sda3 /mnt
sh-3.00# vi /mnt/etc/sysconfig/network-scripts/ifcfg-eth0
=====
-HWADDR=00:XX:XX:XX:XX:XX
+HWADDR=52:XX:XX:XX:XX:XX
=====

8. インストーラーの終了(ゲストOSの終了)

exit コマンドで終了すると記載がありますが、私の環境ではできませんでした。KVM 側から強制終了します。

9. CDROMの切断

KVMでCDROMを切断します。

10. 起動 しかし 失敗

KVM を起動させましたが、GRUBが立ち上がりません。数回テストしたうち、問題無く立ち上がるようにリストアできた事もあったので、操作に問題があったのかもしれません。何度もトライするのが面倒だったので、GRUBを自分でインストールする事にしました。

11. レスキューモードで起動

CentOS 4.8 のISOファイルを接続し起動。プロンプトに 「boot: linux rescue」と入れてレスキューモードで起動。キーボードやネットワークの設定をして進むとシングルモードで起動します。

12. GRUB のインストール

grub-install コマンドで GRUBをインストールします。

# chroot /mnt/sysimage/
# grub-install /dev/hda/

13. 再起動

KVM で DVD イメージを切断した上で、exit コマンドを2回打ってレスキューモードを抜け再起動させます。

これでKVMで起動が確認できました。古いうるさく熱いサーバが一台止まったのでずいぶんと快適になりました。将来はこのサーバもKVMをストップさせて、Raspberry Pi で運用したいと考えています。いつになるかな、、、(^^;;

KVM徹底入門 Linuxカーネル仮想化基盤構築ガイド
KVM徹底入門 Linuxカーネル仮想化基盤構築ガイド 平 初 森若 和雄 鶴野 龍一郎 まえだ こうへい

翔泳社 2010-07-08
売り上げランキング : 212134


Amazonで詳しく見る
by G-Tools
サーバ/インフラエンジニア養成読本 仮想化活用編 [クラウドな現場で役立つ知恵と知識が満載!] (Software Design plus)
サーバ/インフラエンジニア養成読本 仮想化活用編 [クラウドな現場で役立つ知恵と知識が満載!] (Software Design plus) SoftwareDesign編集部 編

技術評論社 2012-04-11
売り上げランキング : 15435


Amazonで詳しく見る
by G-Tools
uehatsu (2013年7月 3日 23:54)

CentOS 4.9 がリリースされてずいぶんと月日が経ちますが、未だにCentOS 4.x 系環境が必要という人もいらっしゃいます。自分もその一人です。先日のエントリーで CentOS 6.4 に KVM を入れて、そこに CentOS 4.9 をインストールするという話を書きましたが、CentOS 4.9 のインストール方法の詳細については省略しました。今日はそこをまとめます。

1. CentOS 4.8 ISOファイルのダウンロード

CentOS 4.9 をインストールしたいのに、4.8の話をし出しても気が狂っているわけではございません。CentOS 4.8 と 4.9 では差分が少ないため、今は 4.8 のディスクイメージしか配布されていないためです。
また、CentOS 4.8 のディスクイメージも大手配布サイト(例:ftp.riken.jp など)には既になく http://vault.centos.org/ からダウンロードして来ます。

i386版 : http://vault.centos.org/4.9/isos/i386/

x86_64版 : http://vault.centos.org/4.9/isos/x86_64/

KVMなど仮想環境で利用する場合はディスクが分かれていると作業がしにくいので、torrentファイルをダウンロードして、BitTorrentクライアントでダウンロードするのが良いでしょう。WindowsならµTorrent、MacやLinuxならならTransmission

あたりがよろしいかと。あ、µTorrentはMac版もあります。私は使った事ありませんが(^^;;

2. ISOファイルをアップロード、もしくはディスクを焼く

KVMなど仮想化環境で利用するならISOディスクイメージのまま、必要があればアップロードなどしてください。実機やISOが利用出来ない場合はディスクに焼いて下さい。Macであれば標準のディスクユーティリティで焼けます、方法やWindowsの場合は別途調べて下さい。ここでは省略します。

3. CentOS 4.8 のインストール

4.8をインストールします。インストーラーに従ってインストールしてください。

4. yumのリポジトリデータの編集

インストールした後、yumでアップデートをかける前にレポジトリのデータを書き換えます。すでにミラーサイトが閉鎖されているためアップデートができないのです。ここでも http://vault.centos.org/ を利用するようにします。具体的には /etc/yum.repos.d/CentOS-Base.repo のmirrorlistをコメントアウトし、baseurlを以下の様に書き換えて下さい。

--- CentOS-Base.repo     2013-06-23 01:48:28.000000000 +0900
+++ /etc/yum.repos.d/CentOS-Base.repo     2013-06-23 01:50:27.000000000 +0900
@@ -13,8 +13,9 @@

 [base]
 name=CentOS-$releasever - Base
-mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
+#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
 #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
+baseurl=http://vault.centos.org/4.9/os/$basearch/
 gpgcheck=1
 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4
 priority=1
@@ -23,8 +24,9 @@
 #released updates
 [update]
 name=CentOS-$releasever - Updates
-mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
+#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
 #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
+baseurl=http://vault.centos.org/4.9/updates/$basearch/
 gpgcheck=1
 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4
 priority=1
@@ -33,8 +35,9 @@
 #packages used/produced in the build but not released
 [addons]
 name=CentOS-$releasever - Addons
-mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons
+#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons
 #baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/
+baseurl=http://vault.centos.org/4.9/addons/$basearch/
 gpgcheck=1
 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4
 priority=1
@@ -43,8 +46,9 @@
 #additional packages that may be useful
 [extras]
 name=CentOS-$releasever - Extras
-mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
+#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
 #baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
+baseurl=http://vault.centos.org/4.9/extras/$basearch/
 gpgcheck=1
 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4
 priority=1
@@ -53,8 +57,9 @@
 #additional packages that extend functionality of existing packages
 [centosplus]
 name=CentOS-$releasever - Plus
-mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
+#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
 #baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
+baseurl=http://vault.centos.org/4.9/centosplus/$basearch/
 gpgcheck=1
 enabled=0
 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4
@@ -64,8 +69,9 @@
 #contrib - packages by Centos Users
 [contrib]
 name=CentOS-$releasever - Contrib
-mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
+#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
 #baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
+baseurl=http://vault.centos.org/4.9/contrib/$basearch/
 gpgcheck=1
 enabled=0
 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4

5. アップデート

yumコマンドを使って、4.8 から 4.9 にアップデートします。

# yum -y update
# reboot

6. 確認

起動時にプロンプトの表示が 4.9 になっている事を確認します。また、以下のコマンドでも確認できます。

# cat /etc/redhat-release
CentOS release 4.9 (Final)

今回こうやってまとめましたが、http://vault.centos.org/ にファイルがあるとは言え、色々な観点から実用するのは避けた方が良いでしょう。よほどの事がなければ CentOS 6.4 への移行をお勧めします。PerlやPHPなどのバージョンの関係で移行出来ない人も多いのは事実なのですが、、、(^^;;

CentOS 6で作るネットワークサーバ構築ガイド (Network Server Construction Guide S)
CentOS 6で作るネットワークサーバ構築ガイド (Network Server Construction Guide S) サーバ構築研究会

秀和システム 2012-02
売り上げランキング : 146948


Amazonで詳しく見る
by G-Tools
Bittorrent (Protocol)
Bittorrent (Protocol)

売り上げランキング : 2387114


Amazonで詳しく見る
by G-Tools
uehatsu (2013年7月 1日 00:39)

自宅サーバにCentOS 6.4 を入れております。最終目的はKVMサーバ&バックアップサーバとして利用する事です。

自分の仮想環境としてCentOS 4.9が欲しい訳ですが、今日はその手前としてCentOS 6.4にKVMをインストールして仮想環境を立ち上げる方法をまとめます。

1. Intel-VP, AMD-V の対応を確認

Qemu, KVMで利用するIntel-VP, AMD-VがサーバのCPUで利用可能か確認します。BIOSの設定で変更できる場合もあります。詳しくはマザーボードなどのマニュアルを参照してください。

# cat /proc/cpuinfo | grep vmx | wc -l
1以上で対応している(0の場合は未対応)

2. KVM(仮想化モジュール群)のインストール

全てvirshで設定しても良いのですがXorg上で仮想マシンマネージャーを立ち上げるのが簡単。今回はそちらで設定します。Xorgのインストールほうほうは以下のエントリーをご参照下さい。CentOS 6.4 で 後から Xorg をインストール

# yum groupinstall "Virtualization" "Virtualization Client" "Virtualization Platform" "Virtualization Tools"

3. Initスクリプトの設定 とサービスの起動

いつものお約束です。libvirtdを起動します。

# chkconfig libvirtd on
# chkconfig libvirtd --list
libvirtd            0:off     1:off     2:on     3:on     4:on     5:on     6:off
# service libvirtd start

4. br0の設定

ブリッジインターフェースの設定です。こちらのページを参考にしてください。CentOS 6.4 でブリッジインターフェースを設定

5. 仮想マシンの作成

A) ISOファイルのアップロード
サーバにISOファイルをアップロードします。もしくはダウンロードしてきます。この際、KVMからISOファイルが見える必要がありますので、/root 配下ではなく、/usr/local/iso 配下にファイルを置きます。

# mkdir /usr/local/iso
(今回は例として/usr/local/iso/ 以下にCentOS 4.8のDVDイメージをアップロード)
# ls /usr/local/iso/
CentOS-4.8-i386-binDVD.iso

B) メニューから仮想マシンマネージャーを立ち上げ

C) "localhost (QEMU)" を右クリックし"新規"を選択

D) 名前に仮想マシンのニックネーム、「ローカルのインストールメディア」を選択し「進む」をクリック

E) 「ISOイメージを使用」で先ほどアップロードしたISOイメージを選択、OSの種類を"Linux"、バージョンを"Red Hat Enterprise Linux 4"にして「進む」をクリック

F) 割り当てメモリーと仮想CPU数を指定して「進む」をクリック

G) 割り当てディスクイメージの容量を指定て「進む」をクリック

H) 詳細なオプションで、「ホストデバイス eth0 (Bridge 'br0')」、「固定 MAC アドレスを設定」をチェック、MACアドレスは初期値のまま、仮想化の種類は「KVM」、アーキテクチャーは「i686」を選択して「完了」をクリック

I) CentOS 4.8 i386 をインストール

J) CentOS 4.9 にアップデート

仮想マシンマネージャーでマウスをゲストからホストに復帰させるには左Alt + 左Ctrl を押します。仮想マシンマネージャーの画面を閉じるとバックグラウンドでゲストOSが動き続けています

6. 仮想マシンの自動起動設定

このままだとホストを再起動してもゲストが自動起動してくれません。その設定をします。ホスト終了時にゲストがちゃんとサスペンドするようACPIを有効にしておきましょう(CentOSでは通常有効になっています)

 # virsh autostart (仮想マシンのニックネーム)

これでCentOS 6.4のKVMにCentOS 4.9がインストールできました。既に大手サイトでも配布が終わっているCentOS 4.9のインストール方法は次回に!!(^^)v

KVM徹底入門 Linuxカーネル仮想化基盤構築ガイド
KVM徹底入門 Linuxカーネル仮想化基盤構築ガイド 平 初 森若 和雄 鶴野 龍一郎 まえだ こうへい

翔泳社 2010-07-08
売り上げランキング : 9989


Amazonで詳しく見る
by G-Tools
サーバ/インフラエンジニア養成読本 仮想化活用編 [クラウドな現場で役立つ知恵と知識が満載!] (Software Design plus)
サーバ/インフラエンジニア養成読本 仮想化活用編 [クラウドな現場で役立つ知恵と知識が満載!] (Software Design plus) SoftwareDesign編集部 編

技術評論社 2012-04-11
売り上げランキング : 14350


Amazonで詳しく見る
by G-Tools
uehatsu (2013年6月29日 21:38)

この所連投していますが、自宅サーバにCentOS 6.4 を入れております。最終目的はKVMサーバ&バックアップサーバとして利用する事です。

このエントリーではminimalインストールしたCentOS 6.4に後からXorgをインストールする方法をまとめます。

1. CentOS 6.4 のminimalインストール

最初からXorgをインストールしなかったとします。ここでは最小限(minimal)インストールしたとします。

2. RPM のアップデート

インストール後のアップデートをします。

# yum update
# reboot

3. Desktopグループのインストール

yumでDesktopをgroupinstallします。

# yum groupinstall Desktop

4. Xorg設定ファイルの作成

設定ファイルを作成して/etc/以下にコピーします。

# Xorg -configure
# mv /root/xorg.conf.new /etc/xorg.conf

5. Xの起動テスト

telinitコマンドを使ってXの起動テストをします。

# telinit 5

6. Xの起動でエラーになったのでgrub起動設定を変更 "nomodeset"

起動エラーが起こったのでチェック。grubの起動オプションを変更します。

# vi /boot/grub/grub.conf
===== kenel行の末尾に nomodeset を追加
        kernel /vmlinuz-2.6.32-358.....  rhgb quiet nomodeset
=====
# reboot

7. 再起動後Xの起動テスト

再起動した後に改めて起動テストをします。

# telinit 5

8. 無事に起動してログインできたらinittabの書き換え

ちゃんとXが起動したらinittabの設定を3から5へ変更します。

# vi /etc/inittab
=====
-id:3:initdefault:
+id:5:initdefault:
=====

8. 再起動

inittabを変更したら再起動します。

# reboot

これでXorgを一切入れていない状態からXが起動できます。環境によってはXorgを入れた後にグラフィックチップのドライバを入れる場合があると思います。デフォルトで入っているドライバでも十分動きますので、必要な方だけトライしてみてください(^^)

CentOS 6で作るネットワークサーバ構築ガイド (Network Server Construction Guide S)
CentOS 6で作るネットワークサーバ構築ガイド (Network Server Construction Guide S) サーバ構築研究会

秀和システム 2012-02
売り上げランキング : 185450


Amazonで詳しく見る
by G-Tools
Xorg.Conf
Xorg.Conf Jesse Russell

Book on Demand Ltd. 2012-05-29
売り上げランキング :


Amazonで詳しく見る
by G-Tools
uehatsu (2013年6月27日 18:12)

自宅サーバ構築中なのですが、せっかくなのでKVMなどをインストールしてみようと思っております。

KVMを普通にインストールするとネットワークインターフェースがNATになってしまい非常に使い勝手が悪い。という事でCentOS 6.4にKVM用のブリッジインターフェースを作成する手順をまとめます。

1. Network Managerの停止

これをやらないとネットワークを噛んだままになるので必ずやっておきます。

# chkconfig NetworkManager off
# service NetworkManager stop

2. bridge-utilsのインストール

brctlコマンド等必要な物をインストールします

# yum install bridge-utils

3. br0 の追加

ブリッジとしてbr0を追加します

# brctl addbr br0
# brctl stp br0 off
# brctl addif br0 eth0

4. network-scriptsの修正

eth0とbr0がブリッジモードで接続できるようにnetwork-scriptsを修正します

# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-br0
# vi /etc/sysconfig/network-scripts/ifcfg-br0
=====
DEVICE="br0"
BOOTPROTO="static"
BROADCAST="192.168.0.255"
DNS1="192.168.0.1"
GATEWAY="192.168.0.1"
IPADDR="192.168.0.50"
NETMASK="255.255.255.0"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Bridge"
=====
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
=====
DEVICE="eth0"
BOOTPROTO="static"
HWADDR="XX:XX:XX:XX:XX:XX"
ONBOOT="yes"
TYPE="Ethernet"
BRIDGE="br0"
=====

5. ネットワークの再起動

br0がブリッジとして機能し始めます

# service network restart

6. ブリッジインターフェースの確認

bridge nameにbr0が、interfaceにeth0が出ていれば成功です

# brctl show
=====
bridge name     bridge id               STP enabled     interfaces
br0             8000.XXXXXXXXXXXX       no              eth0
=====

7. iptablesの設定

デフォルトで全てオフ(0)になっていますが、念のため

# vi /etc/sysctl.conf
=====
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
=====
# sysctl -p /etc/sysctl.conf
=====
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
=====

これで、ネットワークが内部・外部から接続できれば、設定終了です。お疲れさまでした(^^)

KVM徹底入門 Linuxカーネル仮想化基盤構築ガイド
KVM徹底入門 Linuxカーネル仮想化基盤構築ガイド 平 初 森若 和雄 鶴野 龍一郎 まえだ こうへい

翔泳社 2010-07-08
売り上げランキング : 9989


Amazonで詳しく見る
by G-Tools
サーバ/インフラエンジニア養成読本 仮想化活用編 [クラウドな現場で役立つ知恵と知識が満載!] (Software Design plus)
サーバ/インフラエンジニア養成読本 仮想化活用編 [クラウドな現場で役立つ知恵と知識が満載!] (Software Design plus) SoftwareDesign編集部 編

技術評論社 2012-04-11
売り上げランキング : 14350


Amazonで詳しく見る
by G-Tools
uehatsu (2013年6月20日 21:19)

先のエントリーにも書きましたが、今gitlabというRuby on Railsによるgithubクローンをいじっています。

すでに語り尽くされてはいるものの、rbenv, ruby-buildを使って さくらのVPS(CentOS 6.4)にRubyをインストールする方法をまとめてみたいと思います。

1. 必要なRPMのインストール(後々必要な物も一緒に入れています)

# yum install gcc gcc-c++ make git
# yum install openssl-devel readline-devel zlib-devel libcurl-devel
# yum install ImageMagick ImageMagick-devel ipa-gothic-fonts ipa-mincho-fonts ipa-pgothic-fonts.noarch ipa-pmincho-fonts.noarch

2. rbenvのインストール

A) srcのclone

# cd /usr/local/src
# git clone http://github.com/sstephenson/rbenv.git

B) .bashrcの修正と反映

# vi /etc/bashrc
===== 以下を追記
export PATH=$PATH:/usr/local/src/rbenv/bin
export RBENV_DIR="/usr/local/src/rbenv"
export RBENV_ROOT="/usr/local/src/rbenv"
eval "$(rbenv init -)"
=====
# source ~/.bashrc

3. ruby-buildのインストール

A) srcのclone

# mkdir /usr/local/src/rbenv/plugins
# cd /usr/local/src/rbenv/plugins
# git clone http://github.com/sstephenson/ruby-build.git

B) ruby-buildのインストールスクリプト(install.sh)を環境に合わせて修正

# cd /usr/local/src/rbenv/plugins/ruby-build
# vim install.sh
=====(以下の部分を書き換え)
 if [ -z "${PREFIX}" ]; then
-  PREFIX="/usr/local"
+  # PREFIX="/usr/local"
+  PREFIX="/usr/local/src/rbenv"
 fi
=====

C) インストール

# ./install.sh

4. rubyのインストール

A) インストールバージョンの確認

# rbenv install -l
Available versions:
  1.8.6-p383
  1.8.6-p420
  1.8.7-p249
  1.8.7-p302
  1.8.7-p334
  1.8.7-p352
  1.8.7-p357
  1.8.7-p358
  1.8.7-p370
  1.8.7-p371
  1.9.1-p378
  1.9.1-p430
  1.9.2-p0
  1.9.2-p180
  1.9.2-p290
  1.9.2-p318
  1.9.2-p320
  1.9.3-dev
  1.9.3-p0
  1.9.3-p125
  1.9.3-p194
  1.9.3-p286
  1.9.3-p327
  1.9.3-p362
  1.9.3-p374
  1.9.3-p385
  1.9.3-p392
  1.9.3-p429
  1.9.3-preview1
  1.9.3-rc1
  2.0.0-dev
  2.0.0-p0
  2.0.0-p195
  2.0.0-preview1
  2.0.0-preview2
  2.0.0-rc1
  2.0.0-rc2
  2.1.0-dev
  jruby-1.5.6
  jruby-1.6.3
  jruby-1.6.4
  jruby-1.6.5
  jruby-1.6.5.1
  jruby-1.6.6
  jruby-1.6.7
  jruby-1.6.7.2
  jruby-1.6.8
  jruby-1.7.0
  jruby-1.7.0-preview1
  jruby-1.7.0-preview2
  jruby-1.7.0-rc1
  jruby-1.7.0-rc2
  jruby-1.7.1
  jruby-1.7.2
  jruby-1.7.3
  jruby-1.7.4
  maglev-1.0.0
  maglev-1.1.0-dev
  maglev-2.0.0-dev
  mruby-dev
  rbx-1.2.4
  rbx-2.0.0-dev
  rbx-2.0.0-rc1
  ree-1.8.6-2009.06
  ree-1.8.7-2009.09
  ree-1.8.7-2009.10
  ree-1.8.7-2010.01
  ree-1.8.7-2010.02
  ree-1.8.7-2011.03
  ree-1.8.7-2011.12
  ree-1.8.7-2012.01
  ree-1.8.7-2012.02
  topaz-dev

B) ruby 1.9.3-p429 のインストール

# rbenv install 1.9.3-p429

C) rubyのバージョン確認

# rbenv versions
  1.9.3-p429

D) システム全体で利用するRubyのバージョンを指定

# rbenv global 1.9.3-p429
# rbenv rehash

E) バージョンの確認

# rbenv version
1.9.3-p429 (set by /usr/local/src/rbenv/version) 
# rbenv versions
* 1.9.3-p429 (set by /usr/local/src/rbenv/version)

F) パスとバージョンの確認

# which ruby
/usr/local/src/rbenv/shims/ruby
# ruby -v
ruby 1.9.3p429 (2013-05-15 revision 40747) [x86_64-linux]

ひとまず、Rubyのインストールはここまで。現時点での1.9系最新版 1.9.3p429 をインストールしています。続きは、また今度(^^)v

HerokuではじめるRailsプログラミング入門
HerokuではじめるRailsプログラミング入門掌田 津耶乃 相澤 歩

ソフトバンククリエイティブ 2013-03-15
売り上げランキング : 24428


Amazonで詳しく見る
by G-Tools


Ruby on Rails 3 ポケットリファレンス
Ruby on Rails 3 ポケットリファレンス山田 祥寛

技術評論社 2012-01-26
売り上げランキング : 29823


Amazonで詳しく見る
by G-Tools


改訂新版 基礎Ruby on Rails (基礎シリーズ)
改訂新版 基礎Ruby on Rails (基礎シリーズ)黒田 努 佐藤 和人 株式会社オイアクス

インプレスジャパン 2012-03-05
売り上げランキング : 3287


Amazonで詳しく見る
by G-Tools

uehatsu (2013年6月20日 15:38)

最近NoSQLがもてはやされておりますが、代表と言ったらMongoDBでしょうか。そのMongoDBをディスリまくっていることで有名(?)なのがRedis。スピードもさることながら、導入の手軽さや、レプリケーション実装、ホットバックアップなどなどいたれりつくせり。ただ、今ひとつ有名になりきれていない感が。

今、githubクローンのgitlabというRailsアプリを動かしているんですが、その中のコンポーネントの一つとしてこのRedisが必要でした。Ubuntuなんかには普通にポーティングされているけど、Amazon Linuxのレポジトリには無く、CentOSもremiレポジトリに用意されているのはちょっと古いバージョンだったりと、そこも残念感たっぷり。そこでインストール手順をまとめてみました。

1. Redisのインストール
make test に tcl が必要なので、test 前にインストールしています。

# cd /usr/local/src
# wget http://download.redis.io/redis-stable.tar.gz
# tar zxvf redis-stable.tar.gz
# cd redis-stable
# make
# yum install tcl
# make test
# make install

2. 設定ファイルの配置
設定ファイル無しでもサービスは起動できますが、この後する自動起動に必要なので用意します。

# mkdir /etc/redis /var/lib/redis
# cp redis.conf /etc/redis/.
# vi /etc/redis/redis.conf
以下の箇所を書き換えて下さい

(修正前)
=====
daemonize no

logfile stdout

dir ./
=====

(修正後)
=====
daemonize yes

logfile /var/log/redis.log

dir /var/lib/redis/
=====

3. Initファイルの用意
同梱のInitファイルはそのまま使えないのでGistからダウンロードします。

# curl https://gist.github.com/uehatsu/5800543/download | tar zx -O > /etc/init.d/redis-server
# chmod a+x /etc/init.d/redis-server

4. 起動設定と起動
サービスインストール後のお約束です。

# chkconfig redis-server on
# chkconfig redis-server --list
=====
redis-server 0:off 1:off 2:on 3:on 4:on 5:on 6:off
=====
# service redis-server start

これで準備が出来ました。Redis自体の利用方法などは、他に詳しいサイトがありますので、そちらをご覧下さい:-P

WEB+DB PRESS Vol.73
WEB+DB PRESS Vol.73 設樂 洋爾 白土 慧 奥野 幹也 佐藤 鉄平 後藤 秀宣 mala 中島 聡 堤 智代 森田 創 A-Listers はまちや2 大和田 純 松田 明 後藤 大輔 ひろせ まさあき 小林 篤 近藤 宇智朗 まかまか般若波羅蜜 Mr. O WEB+DB PRESS編集部

技術評論社 2013-02-23
売り上げランキング : 9773


Amazonで詳しく見る
by G-Tools

NOSQLの基礎知識 (ビッグデータを活かすデータベース技術)
NOSQLの基礎知識 (ビッグデータを活かすデータベース技術) 本橋信也 河野達也 鶴見利章 太田 洋

リックテレコム 2012-04-25
売り上げランキング : 8038


Amazonで詳しく見る
by G-Tools

NoSQLデータベースファーストガイド
NoSQLデータベースファーストガイド 佐々木 達也

秀和システム 2011-04
売り上げランキング : 182418


Amazonで詳しく見る
by G-Tools

Who is uehatsu?

uehatsu

アーカイブ

Facebook page