情報系学部生日記

備忘録や勉強したことのまとめ

CentOS6.8でBondingの設定を行う

CentOS6.8でBonding(チーミング)する手順です。

NetworkManagerの無効化

まずNetworkManagerを無効化します。

sudo service NetworkManager stop
sudo chkconfig NetworkManager off

Bondingの準備

bondingモジュールのエイリアスをbond0に張ります。

sudo echo "alias bonding bond0" >> /etc/modprobe.d/bonding.conf

Bndingモジュールを有効化します。

sudo modprobe bonding

モジュール有効化を確認します。

lsmod | grep bonding

BondingとNICの設定

今回はBondingを行うだけなので固定IPではなく、DHCPIPアドレスを取得します。

bond0の設定(/etc/sysconfig/network-script/ifcfg-bond0)

今回はmodeを1にしているので負荷分散はされません。
普段はプライマリに設定したNICが使用され、プライマリ側がダメになったら他のNICでの通信に切り替わります。
miimonで設定している値はNICの状態を監視する頻度です。
単位はミリ秒です。

DEVICE=bond0
BOOTPROTO=dhcp
ONBOOT=yes
BONDING_OPTS="mode=1 primary=eth0 miimon=500"

eth0の設定(/etc/sysconfig/network-script/ifcfg-eth0,ifcfg-eth1)

普段の設定とは別にMASTERとSLAVEの設定を行う必要があります。
MASTERはBondingに使用するデバイスを指定し、
SLAVEでは自らをSLAVEであることを示します。

DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes

networkの再起動

ここで失敗した場合は設定を見直してください。
それかNetworkManagerの無効化を忘れている場合があります。

sudo service network restart

動作の確認

ifconfigを叩くとbond0にIPアドレスが割り当てられていると思います。
またcat /proc/net/bonding/bond0でbondingの状態が確認できます。

追記

以下のページにも同様の内容を掲載しています。 kit-kimber.github.io

Xubuntuで「システムプログラムの問題が見つかりました」の表示を消す

 何かの拍子にシステムを起動すると「システムプログラムの問題が見つかりました」と表示され、問題を報告するかと聞かれるようになる。
 この表示から発生した問題の詳細が分からないうえに操作に影響が出ていないので、とりあえず邪魔なダイアログが表示されないようにした。クラッシュレポートを消すだけ。

sudo rm -rf /var/crash/*

Ubuntuのデーモン自動起動

Debian系のOSではデーモンの自動起動の設定にsysv-rc-confを使用します。 昔はchkconfigが使えたようなのですが今は使えないようです。 デーモンの自動起動設定は開発用のサーバで使っているCentOSではchkconfigを使用しているのですが、 デスクトップPC用途として使用しているXubuntuでど忘れしてググることが多いのでメモ程度に書いています。 Ubuntuでは確認していませんがXubuntuでは標準で導入されていないんですよね。 apt-getで入れることはできますが。
sysv-rc-conf service_name on/off #service_nameの部分は設定したいサービス名
Ubuntu Manpage: sysv-rc-conf - Run-level configuration for SysV like init script links

rbenvを使ったRubyの導入

rbenvを使用したRubyの導入のまとめです。OSはUbuntuを使用します。

1. rbenvとruby-buildをcloneする

rbenvとruby-buildをGithubからcloneします。
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build

2. パスを通す

~/.rbenv/bin/にパスを通します。.bashrcや.bash_profileとかに適当に書いてください。
PATH="$PATH:~/.rbenv/bin"
編集したファイルをsourceするのをお忘れなく。
それとeval "$(rbenv init -)"もbashrcか.bash_profileに記述してください。

3. Rubyのインストール

あとはお好みのバージョンをインストールするだけ。 rbenv install -lでインストール可能なRubyのバージョン一覧を見ることができます。 rbenv install version_name
ビルドに失敗したらだいたいの場合は「これが足りねえよ!」って言われるので、aptとかで入れてやってください。

4. インストールしたバージョンの適応

rbenv versionsで使用できるRubyのバージョン一覧が表示されます。
rbenv global version_nameで標準で使用するバージョンを指定できます。
またrbenv local version_nameでカレントディレクトリ以下で使用するバージョンを指定できます。

詳しくは公式ドキュメントを参照してください。

github.com

github.com

Django1.4の日本語チュートリアルを見ながら1.9をいじっていたらコケた

Django1.9を使って1.4の日本語チュートリアル通りにいじっていたら、だいぶ早い段階でコケました。

はじめての Django アプリ作成、その 1 — Django 1.4 documentation

DBの設定の部分で

python manage.py syncdb

となっていますが1.9では

python manage.py migrate

python manage.py createsuperuser

でスーパーユーザを作成するのが正解らしいです。

以下参考サイト

Django 1.7の新機能Migrations | Akashic Records

Python Django入門 (3) - Qiita

Ubuntuでキーボードのレイアウトが勝手に変わってしまう

Ubuntuのキーボードレイアウトが、突然英語キーボード設定になることがあった。

(全角半角キーが「`」になってしまうなど)

/etc/default/keyboardのXKBLAYOUTの値を"jp,jp”にすると直る。

XKBLAYOUT="jp,jp"