MySQLの設定

■初期設定

まずは自動起動をonにします。

# /sbin/chkconfig mysqld on

次にとりあえずサーバを起動します。

# /etc/init.d/mysqld start

初期化が終了しサーバが起動します。
そしたら、次はrootユーザのパスワードを設定します。

# mysqladmin -u root password 'パスワード'

■初期設定2

まず、MySQLにrootユーザでログインします。

# mysql -u root -p

パスワードを求められるので、パスワードを入力します。
で、ここで以下のSQL文を打てばわかるのですが、

mysql> SELECT User, Password FROM mysql.user;
+------+------------------+
| User | Password         |
+------+------------------+
| root | 50e019fb042f2a33 |
| root |                  |
| root |                  |
|      |                  |
|      |                  |
+------+------------------+
5 rows in set (0.01 sec)

MySQLには最初パスワードの存在しないユーザが用意されていますので、これを削除します。

mysql> DELETE FROM mysql.user WHERE Password = '';

次に、いつも使うユーザを追加します。

mysql> GRANT ALL on *.* to webmaster@localhost IDENTIFIED BY 'パスワード';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

webmasterの部分はお好きなユーザ名に変えてください。
FLUSH PRIVILEGESは権限を更新しろーみたいなかんじです、たぶん。
これをやらないとここで書いたユーザの権限が追加されません。

それで、rootからexitし、今追加したユーザで、

# mysql -u webmaster -p

として、パスワードを入力して、ログインできればOKです。

CentOSのインストールが終わってyumでインストールしたいパッケージリスト

まずは、yumのキャッシュなどをクリア

# /usr/bin/yum clean all

次に、ミラーリスト内より最速サイトを自動検知してダウンロードをするために↓を入れる。

【FedoraCore5 / FedoraCore6 / Fedora7 / Fedora8 / CentOS5 の場合】

# /usr/bin/yum install yum-fastestmirror

【CentOS4 の場合】

# /usr/bin/yum install yum-plugin-fastestmirror

次に、centosplusの設定【CentOS4 の場合】

# vi /etc/yum.repos.d/CentOS-Base.repo

[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=1   #ここを1に変更
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4

次に、アップデート。結構時間がかかる。

# /usr/bin/yum update

アップデートが終わったら念の為、ここで一旦再起動をする。

そして、再起動が終わったら開発に必要なパッケージをインストールしていく。
PHP等を最新にしたいので、yumのリポジトリを追加。
まずは、GPGキーのインポート。

# rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

次に、yumのリポジトリ追加(ファイルを新規追加)

# vi /etc/yum.repos.d/utterramblings.repo

[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=0
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

ファイル作成が終わったら、yumでインストール。

# yum --enablerepo=utterramblings install httpd httpd-devel
# yum install postfix openldap-servers postgresql-server mysql-server
# yum --enablerepo=utterramblings install php-{mbstring,pgsql,mysql,ldap,imap,devel,gd}

とりあえず、このくらいかな。
残りは、必要になった時点で入れていく感じで。

rootアカウントのパスワードを忘れてしまった時の対処法。

rootのパスワードを忘れてしまった時の解決方法です。

OSを起動し、起動画面にて任意のキーを押します。
次の画面で「e」キーを押します。
また次の画面で二行目を選択して、「e」キーを押します。
末尾に「single」と記入し「Enter」キーを押します。
「single」の文字が追加されていることを確認し、「b」キーを押します。
シングルユーザモードでの起動に成功すると、

sh-3.00#

とシェルが立ち上がってきます。
後は、passwdコマンドにてパスワードを変更してください。

下記を参考にしました。↓
データセンターダイレクトブログ

VMwareの既存環境コピーで新しく開発環境を作る手順。[CentOS]

VMwareで既に開発環境があり、その環境を元に新しく作る。
1.まずは、現在ある環境をコピーします。
2.次にVMwareを立ち上げます。すると以下の文章が表示されます。

The location of this virtual machine's configuration file has changed since it was last powered on.
If the virtual machine has been copied, you should create a new unique identifier (UUID).  If it has been moved, you should keep its old identifier.
If you are not sure, create a new identifier.
What do you want to do?
・Create
・Keep
・Always Create
・Always Keep

簡単に訳すと、コピーしたのなら新しいユニークな識別子(UUID)を作成するべきで、
移動(move)したのなら古い識別子を保つべきです。
どうしますか?という事を言っていると思います。多分。。
今回はコピーなので、「Create」を選びます。

OSが起動し終わったら、必要の無いサービスを止めます。

for SERVICE in cups isdn kudzu gpm smartd pcmcia; do /sbin/chkconfig ${SERVICE} off; done

次にuseraddで一般ユーザーを作成し,ウェブ開発用のグループを作成します.
作成した一般ユーザーにはパスワードもちゃんと付け,vigrを用いてwebに所属させます.
作成した一般ユーザーはsshの公開鍵をちゃんと入れておき,パスワードログインはしないようにしましょう.

# /usr/sbin/useradd webmaster
# /usr/bin/passwd webmaster
# /usr/sbin/groupadd web
# /usr/sbin/vigr

次に,またvigrを用いて今度は先ほど作成したユーザーをグループwheelに所属させ,visudoを用いてsudoの設定をします.
sudoの設定でwheelはsudo経由でrootになれるようにし,sudoを併用することにより一般ユーザーをrootに直接ログインしないでいい環境にします.

# /usr/sbin/vigr    (「wheel:」で始まる行の右にカンマ区切りで先ほど作成したユーザーを追加)
# /usr/sbin/visudo      (「# %wheel」で始まる行にある行頭の「#」を削除する)

「# %wheel」と書いている行は「NOPASSWD:」という文字列を含む行の方の行頭の「#」をはずすとsudoをするたびにパスワードが聞かれなくなります.これを使うか使わないかは運用方針と好みになりますね.

ssh関連はパーミッションなども意識して動作するので,しっかり設定してあげてください.

# su - webmaster
$ mkdir -p ~/.ssh
$ chmod go-rwx ~/.ssh
$ vi ~/.ssh/authorized_keys2
$ chmod go-rwx ~/.ssh/authorized_keys2

最後にsshd(sshサーバー)の設定をします.今回はrootへはssh経由でログインできないようにし,パスワードでのログインも禁止します.

# /bin/vi /etc/ssh/sshd_config

編集のポイントは下記のようになり,編集が終了したらsshdを再起動します.

  • PermitRootLogin no
  • PasswordAuthentication no
# /sbin/service sshd restart

とりあえずここまで。