2011年1月28日金曜日

VirtualBox Guesst Addirion インストール

こんばんわ、Cです。

VirtualBoxのゲストOSで仮想化環境に最適化するためのサービスを入れる。

■VirtualBox でVboxGuestAddirions.isoを読み込ませる
※VirtualBoxのコンソール画面から実行すること
#mount -t iso9660 /dev/cdrom /media/cdrom
#/media/cdrom0/VBoxLinuxAdditions-x86.run
#shutdown -r now

実験的に入れてみたけど、VirtualBOXはあくまでもバックアップディスクの保存場所して使うし、
普段持ち歩いてUSBメモリからブートして使うし、入れる必要は無いと思った、あくまでも実験的。

Linux Kernel Complie

Cです。

あたらしめのカーネル使ってみようと思う。

必要なパッケージ:make,bzip2,gcc,build-essential

■linux kernel sourceを頂いてこよう
#cd /usr/src/
#wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.34.7.tar.bz2

■解凍しよう
#mv linux-2.6.34.7.tar.bz2 linux-2.6.34.7.tar
↑ なんだろうな、bz2って拡張子をつけているのに、ホントはtarだとよ。
#tar xvf linux-2.6.34.7.tar
#ln -s linux-2.6.34.7 linux
↑行方不明にならないように
#cd linux-2.6.34.7

■コンフィグ
#make oldconfig
↑この後エンターキーに消しゴムのせる。
詳しく調整したい人は消しゴムをのせない。
#make dep
#make clean

■コンパイル
#make bzImage
#make modules
↑長いのでティータイム

■インストール
#make modules_install
#cp /usr/src/linux-2.6.34.7/arch/x86/boot/bzImage /boot/vmlinuz-2.6.34.7
#cp /usr/src/linux-2.6.34.7/vmlinux /boot/vmlinux-2.6.34.7
#cp /usr/src/linux-2.6.34.7/System.map /boot/System.map-2.6.34.7

■モジュール設定
#depmod -a 2.6.34.7
↑とくに変更したいのないので
#mkinitramfs -o /boot/initrd.img-2.6.34.7 2.6.34.7

■grubの設定
#vi /boot/grub/menu.lst

一番下の方に追加
title C-SYSTEM kernel 2.6.34.7
root (hd0,0)
kernel /vmlinuz-2.6.34.7 root=/dev/sda2 ro quiet
initrd /initrd.img-2.6.34.7

リブートして今回のメニューを選んで起動してね。
正常に起動したら
uname -r とかでkernelバージョン確認しとこう。

2011年1月23日日曜日

mysql root パスワード リカバリ

おっす、Cです。

mysqlのrootパスワードを忘れちゃったときの、
リカバリ方法書いておこう。

・mysqlサービスを全部止める
#/etc/init.d/mysqld stop
#ps -ef | grep mysql  <--念の為プロセス無いか確認しとこう




・mysqlサービスをセーフモードで起動
/usr/bin/mysqld_safe --user=root --skip-grant-tables & mysql mysql
これでパスワード無しでmysqlにログインできる状態になっちゃう。

・パスワードをヌルヌルにする。
#mysql -u root -p
Enter password: <-- そのままEnter mysql>update user set password=null where host='localhost' and user='root';
mysql>exit

#/etc/init.d/mysqld restart

あとは新しく設定したパスワードでログイン出来ればOK。
出来なかったら何かが違う。

おわり。

2011年1月21日金曜日

ネットワーク スタートアップ スクリプト

ごきげんよう、Cです。

今日はただのスクリプト覚書。

ネットワークの設定スクリプト、
起動したときに自動的に設定されるようにコンフィグファイルに書いとけばいい?
サーバーだったらそうするべきだけど(場合によるけど)
普通のLANの場合もそうするべきだけど、

USBメモリにLinuxを入れて持ち歩き、あちこちで起動していると、
環境によってネットワークの設定はモチロン変わってくる。

ネットブックなんかで外で使ってたりしても、ころころ変えて使うこともある。

なので各環境ごとにシェルスクリプトにして保存しておいて、
使うときに選んで実行するだけの状態にしている。

/script/network みたいなディレクトリに学校なら「school_network.sh」とか判りやすいファイル名にしよう。

※hostのところをつけたいIPアドレスに変更せよ。
※設定するインターフェイスを自分のインターフェイスに合わせて変更せよ。
※エラーになったら人間任せのシェルスクリプト
※resolv.confも環境に合わせて変更せよ。


#!/bin/bash

host=192.168.1.100
testserver=google.co.jp

ping -c 3 ${host} 1>/dev/null 2>&1
rc=$?

if [ ${rc} -eq 0 ]; then
  echo "IP address ${host} is not liberated."
else
  ifconfig eth0 ${host} netmask 255.255.255.0
  route add default gw 192.168.1.1
  echo -e "search local.co.jp\nnameserver 192.168.1.1" > /etc/resolv.conf

  ping -c 3 ${testserver} 1>/dev/null 2>&1
  rc=$?

  if [ ${rc} -eq 0 ]; then
     echo "This host is active. "
  else
     echo "Network setting error. "
  fi

fi
exit 0

2011年1月20日木曜日

mysql の データ移行手順 (バックアップ)

Cです。

mysqlデータベースの移行手順を書いておく。
バックアップにも使えるが、データベースそのものを保存しているわけじゃない。
出力されたファイルをエディタで開いてみると分かる通り、
移行前と同じ状態にするためのSQL文が詰め込まれている。

・移行元
#cd /dbbkup <--バックアップファイルを保存する場所に移動しておく
#mysqldump -q test_db(データベース名) -u root(mysqlユーザ名) -p test_db_dump(保存ファイル名)
Enter password:(パスワード入力)


・移行先
#mysqladmin create detabase test_db -u root -p <-- あらかじめ同名のDBを作成しておく必要がある
 Enter password:
 #mysql -u root -p test_db < test_db_dump Enter password:


これでデータ移行はOK。
バックアップを定期的に取得して別のサーバに転送していけば、
DBバックアップサーバの出来上がり。ネットワーク設計工夫が必要だけど。

OK。