はじめのhttpd.conf設定からapache起動まで

このブログは【カミタニブログ】へ引っ越しました。当該記事はこちらになります。
お手数をおかけしますが、よろしくお願いいたします。























一番最初に設定した、httpd.confの設定を残しときます。

対象


今回はこちらの記事を参考にさせて頂きました。

あざます><

httpd.conf編集

vi /etc/httpd/conf/httpd.conf


デフォルト記述と、変更点のみ列挙します。

一旦、アクセス制限を掛けます。

<Directory />
    Options FollowSymLinks
    AllowOverride None
# add
    Order deny,allow
# add
    Deny from all
</Directory>

アクセス制限を拒否してから許可にするのは
モバイル開発の癖かも。

エラーページとかでapacheのバージョンを表示させないように。

# ServerSignature On
# change 
ServerSignature Off

エラーページとかでOS情報を表示させないように。

# add
ServerTokens Prod

ローカル環境的に、VirtualHostで何個か運用するつもりなので
基本的には変更点は以上。

エラーチェック

confファイルのエラーチェックをし

/etc/rc.d/init.d/httpd configtest

apache起動

Syntax OK のお言葉を貰ったところでapacheの起動

 /etc/rc.d/init.d/httpd start

そして、初めての起動なのでそのまま自動起動も設定しておく。

chkconfig httpd on

おしまい。

CentOS5.3にmySQL5.1.52をインストールする

このブログは【カミタニブログ】へ引っ越しました。当該記事はこちらになります。
お手数をおかけしますが、よろしくお願いいたします。


















今回もざっくり作業手順だけლ(・ิω・ิლ)

対象

  • CentOS5.3
  • mySQL5.1.52


今回はこちらの記事を参考にさせて頂きました。

あざます><

すでにインストールされてないか確認

mysqlがすでにないか確認。

yum list installed | grep mysql

ないので、mysql serverをインストール。

yum -y install mysql-server php-mysql

my.cnf編集

vi /etc/my.cnf

こちらの記事を参考にさせて頂きつつ、
文字コードUTF-8で設定。
※追記したもののみ記述してます><

[mysqld]
# add
default-character-set = utf8
skip-character-set-client-handshake

[mysql]
# add
default-character-set = utf8

ただ、skip-character-set-client-handshakeに関しては

といった記事も見かけたので、また改めて勉強しよ。

mySQL起動

編集後、起動させます。

/etc/rc.d/init.d/mysqld start

自動起動も行っておく。

chkconfig mysqld on

chkconfigコマンド叩いたあとはいつも通り
特に反応はなく、入力待ち状態になりました。


以上でインストール終了。
念の為、はいってみましょかね。

mysql -u root -p

※ここまでの流れではrootにパスワード設定をしていません。

入れました。

rootパスワードの設定

mysql_secure_installation

以下、対話形式でお送りします。

[root@localhost ~]# mysql_secure_installation




NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!


In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
# ※[Enter]キーを叩く

OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

Set root password? [Y/n] 
# ※[Y]キーを叩く(rootのパスワード設定する?)

New password: 
# ※パスワードを入力
Re-enter new password: 
# ※再度パスワードを入力
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n]
# ※[Y]キーを叩く(匿名ユーザを削除する?)

 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] 
# ※[Y]キーを叩く(リモートからのrootログインを禁止する?)

 ... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n]
# ※[Y]キーを叩く(testデータベースを削除する?)

 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] 
# ※[Y]キーを叩く(権限テーブルをリロードする?)

 ... Success!

Cleaning up...



All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!

サンクス!


ひとまずこんな感じですლ(・ิω・ิლ)
...Success!ってなんかいいですね。かっけー


なお、mysqlの起動を確認するには

/usr/local/mysql/bin/mysqladmin ping -u root -p

起動していれば、
mysqld is alive
と表示されますえ。

CentOS5.3にPHP5.2.16をインストールする

このブログは【カミタニブログ】へ引っ越しました。当該記事はこちらになります。
お手数をおかけしますが、よろしくお願いいたします。
















ご存知PHP
PHP (プログラミング言語) - Wikipedia
公式リポジトリからyumでインストールした後、
非公式リポジトリでupdateするところまでです。

対象

  • CentOS5.3
  • PHP5.1.6 → 5.2.16


今回はこちらの記事を参考にさせて頂きました。

あざます><

すでにインストールされてないか確認

phpがすでに入ってないか確認します。

yum list installed | grep php

ないので、インストール開始。

yum -y install php php-mbstring php-mcrypt

おしまい。


そのままPHPのバージョンも上げたいのですが
CentOSの公式リポジトリは対応があまり早くない、、との事で
非公式リポジトリを利用して、バージョンを
5.1.6 → 5.2.16
へアップデートします。
利用させて頂くはここ。 Utter Ramblings

RPM-GPG-KEY取得

まずはキー(RPM-GPG-KEY)を取得。

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


/etc/yum.repos.d/utterramblings.repoを新規作成して、

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

以下のリポジトリ参照設定を記述。

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

PHPのアップデート

そしてupdate!!
の前に、念の為(使い慣れる意味も込めて)利用可能なパッケージを確認。

yum info php


バッチリありましたので、

yum update php

これで完了。

mcryptのアップデート

php --version

PHPのバージョンを確認すると、
バージョンはアップしたものの、

PHP Warning:  PHP Startup: mcrypt: Unable to initialize module
Module compiled with module API=20050922, debug=0, thread-safety=0
PHP    compiled with module API=20060613, debug=0, thread-safety=0
These options need to match
 in Unknown on line 0
PHP 5.2.16 (cli) (built: Dec 17 2010 14:09:03) 
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies

のメッセージが。
Unable to initialize module ( モジュールの初期化をすることが出来ない)
との事。


mcryptのエラーって事で、きっとバージョンの不整合だろう、と一応確認

yum list installed mcrypt

で、初期インストール時のPHPと同じバージョンだったので
こやつもupdateします。


yum install php-mcrypt

Complete!
ってところで、再度PHPのバージョン確認。
無事確認出来ました。ひーはー。


無事、非公式のリポジトリでのupdateが完了したので、
リポジトリを無効にします。

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

で、enabledを1から0に変更。


つぎにphp.iniを編集します。

vi /etc/php.ini

php.iniでよくやる設定まとめ - bojovs blog
こちらを参考にさせていただきつつ、最低限する編集を列挙します。
(デフォルトからの変更点のみ記述。)

  • expose_php = Off
  • log_errors_max_len = 4096
  • default_charset = "UTF-8"
  • mbstring.internal_encoding = UTF-8
  • short_open_tag = Off

こんな感じ。

マウスポインタを統合する方法を残す(Guest Additionsインストール)

このブログは【カミタニブログ】へ引っ越しました。当該記事はこちらになります。
お手数をおかけしますが、よろしくお願いいたします。


















VirtualBoxを初期設定のまま触っていると、
マウスカーソルが2つ存在してる事になるんですよね。


マウスカーソルの操作(キャプチャ)が面倒だったりしましたので
(ゲストOSからホストOSに戻る時、デフォルトだと[Ctrl]だっけか)
ホストOSとゲストOS間のめんどうな壁をとっぱらいますლ(・ิω・ิლ)

対象


今回はこちらの記事を参考にさせて頂きました。

あざます><

Guest Additionsのインストール

仮想マシンを起動した状態で、
メニューの[デバイス(D)]→[Guest Additionsのインストール(I)]をクリック。


とすると、怒られました。

インストールCDイメージをインサート出来ません。すいません。


このインストールは、選択しただけでCDイメージを勝手に(?)インサートしてくれるようですが
ゲストOSのインストール終わった後、ドライブを消してました、、


と、いうわけでCDドライブを設定します。

使用する仮想マシンの設定から、
左側メニュー[ストレージ] >> [ストレージツリー] へ行き、+マークの付いたDVDアイコンをクリックします。
ここまではゲストOSの設定時と一緒。
この時に、[空のドライブ(E)]を設定します。


そして再度、メニューの[デバイス(D)]→[Guest Additionsのインストール(I)]をクリック。
※ちなみに仮想マシン起動中は[設定]変更が出来ないので、一度仮想マシンを落とさないといけないので注意、って程のことでもないか。


また質問がきます。

やっちゃいましょ。えぇ。


これで無事、マウントしたメディアのディレクトリが開かれます。

このまま一気にGo!
と行きたいところだったのですが、
GUIで行けちゃうのかな、思ったのもつかの間、旨くいかず。
仮想マシンの設定部分見ると、ちゃんとストレージに
VBOXADDITIONS_4.0.4_70112
(私のバージョンではこういうもの)
がマウントされてるんだけどな。


ので、参考記事を参考にさせて頂きつつ、CUIでGo。
..と、と、と、そういえばCentOSでメディアを使ったことがない!
当然、このデータがどこに入ってるか意識したことがない=知らなんだ><

というわけで、地道に探します。
ここでした

/media/

そりゃそうですよね。
普段どんだけこの言葉使ってんだ><


というわけで、絶対パスでコマンド残しときます。

sh /media/VBOXADDITIONS_4.0.4_70112/VBoxLinuxAdditions.run all

VBoxLinuxAdditions.runを実行します。


この後、ゲストOSを再起動すると
ホストOS ゲストOS間がひとつのマウスカーソルで操作出来ます。

シームレス><


まぬけなミス

メディアがどこにあるかも知らず、参考記事の相対コマンドをそのまま打って
怒られもうした。
そりゃそうだ。

Verifying archive integrity... All good.
Uncompressing VirtualBox 4.0.4 Guest Additions for Linux.........
VirtualBox Guest Additions installer
Please specify an absolute path

Usage: install [<installation directory>] | uninstall [force] [no_setup]

Example:
/media/VBOXADDITIONS_4.0.4_70112/VBoxLinuxAdditions.run install

と、多分失敗してる感のメッセージ。
Please specify an absolute path

Google翻訳によると、"絶対パスを指定してください"との事。
Exampleに書いてある、
/media/VBOXADDITIONS_4.0.4_70112/VBoxLinuxAdditions.run
でインストール開始した模様。

centOSインストール後のyum updateなど。

このブログは【カミタニブログ】へ引っ越しました。当該記事はこちらになります。
お手数をおかけしますが、よろしくお願いいたします。




















CentOSをインストールしたまま手付かずだったので、
取り急ぎアップデートします。


こちらの記事を参考にさせて頂きました。
ありがとうございました><

CentOSでyum高速化を行う「yum-fastestmirror」 | Web活メモ帳
http://d.hatena.ne.jp/kazukichop/20090406/1239039775
��yum�ɂ����A�b�v�f�[�g(CentOS5)�����S�҂̂��߂�Linux�T�[�o�[�\�z�u��(CentOS �����T�[�o�[�Ή�)�����֗��T�[�o�[.com��

インストール先のURLなどを変更する。

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

で、
��yum�ɂ����A�b�v�f�[�g(CentOS5)�����S�҂̂��߂�Linux�T�[�o�[�\�z�u��(CentOS �����T�[�o�[�Ή�)�����֗��T�[�o�[.com��
を参考に設定を変更。
デフォルトの海外サーバから、国内にある理化学研究所サーバに変更しておくと
インストール時間を短縮出来ると思います。
※なお、私はこの設定をせずにデフォルトのままやってしまいました。。

自動updateの停止

Windowsなんかだとupdateは自動更新をしている場合が多いと思うのですが
Linuxでは手動updateのイメージです。
停電やその他の電源切断を避ける為、というのが通例(?)
まぁWEBサーバの為に利用する場合がほとんどだと思いますしね。
コマンド一発で停止。

/etc/init.d/yum-updatesd stop

さよなら。

ntsysvで設定変更

yum-updatesdはstopさせましたが、このままではマシン起動毎にstop操作を行わないといけないので
デーモンの起動設定からも外します。

ntsysv


画像のように設定画面になるので、一番下にあるであろう、"yum-updatesd"のチェックを外し、"OK"を押します。
poderosaで操作しているからか、レイアウトが乱れてました、、

yum fastestmirrorパッケージの確認。

yum fastestmirrorについて

yumを実行する際に、ミラーサーバを探してなるべく早いyum実行をするためのパッケージだそうです。
無知でした。
yumでのupdate前に、このパッケージをインストールする必要があるとの事なのですが、
今回の対象であるCentOS5.3ではデフォルトでパッケージがインストール済との事でした。

yum check-update

update可能なパッケージの一覧を表示するコマンドですが、
すでにfastestmirrorがインストール済の場合

Loaded plugins: fastestmirror

と表示されました。
ので、このまま進みます。

yum update

updateはコマンド一発。

yum -y update

この -y オプションは"全ての質問にyesと答える"オプションです。
updateするわけなので当然色々と聞かれるでしょう。必須オプションだと思ってます。
勉強するなら本当はひとつひとつ確認するもの素敵な事なんですが、今回はLAMP環境構築のためという事で割愛中です。

途中、以下のように一度だけコマンド入力を促されます。

Total                                                               105 kB/s | 522 MB     85:11     
警告: rpmts_HdrFromFdno: ヘッダ V3 DSA signature: NOKEY, key ID e8562897
Importing GPG key 0xE8562897 "CentOS-5 Key (CentOS 5 Official Signing Key) <centos-5-key@centos.org>" from /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

"CentOS-Base.repo記述内の場所からGPGキーをインポートしていいか"という問です。
[y]キー押下で続行。
※ちなみにこの表示は、CentOS-Base.repo内の記述を変更せず、デフォルトのままでupdateした際の警告文です。

コンパイル環境のインストール

こちら、参考にさせて頂いた記事そのまま、、です。

yum install gcc make kernel kernel-devel

で、完了。




fastestmirrorパッケージで早い、との事なんですが
インストール
ここまでで30〜40分程という所でした。


以上ですლ(・ิω・ิლ)

ホストOS(Windows XP)からゲストOS(CentOS)にsshで入りたい

このブログは【カミタニブログ】へ引っ越しました。当該記事はこちらになります。
お手数をおかけしますが、よろしくお願いいたします。






















仮想化したCentOSには当然のごとくゲストOSからGENOME端末でアクセスしているわけなんですが、
メイン作業はホストOSで行っているので切り替えとか煩わしいですよね。

というわけで普段使いのターミナルエミュレータからゲストOSにsshでアクセス出来るようにします。
poderosaがお気に入りですლ(・ิω・ิლ)
やっちゃいます><


なお、今回はこちらの記事を参考にさせて頂きました。
ありがとうございました><

※今回の忘却録は失敗例が含まれます!!

ポートフォワーディング

この設定をしてやると幸せになれるらしいっす。
ポートフォワーディングとは - IT用語辞典 e-Words
# 今までポートフォワーリングって覚えてた..


ゲストOSを起動しない状態で、コマンドプロンプト等でVirtualBoxをインストールした箇所で作業します。
デフォルトだとここですかね。

cd "C:\Program Files\Oracle\VirtualBox"

以下、"centos"の記述は私の環境の場合であり、ここはVirtualBoxで作成した仮想マシン名と置き換えてください。


ここで、VBoxManageコマンドで設定します。
※これは(私の環境の場合の)失敗例です

VBoxManage setextradata "centos" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol" TCP
VBoxManage setextradata "centos" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort" 22
VBoxManage setextradata "centos" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort" 22

コマンドプロンプトで作業した場合、特に何も表示されず入力待ち状態になります。
他のネット記事やCygwinで作業した時はメッセージが表示された気がするんだが..


確認はこちら。

VBoxManage getextradata "centos" enumerate


ひとまず今打ち込んだコマンドが設定されているようなので、ゲストOSを起動してみる。


!!
エラー発生。起動せず。


今日触った箇所といえば、この記事の部分だけなのでポートフォワーディングの設定箇所を削除する。

ポートフォワーディングの削除

削除は簡単。コマンド一発。

VBoxManage setextradata "centos" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol"
VBoxManage setextradata "centos" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort"
VBoxManage setextradata "centos" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort"

ここで起動してみる。無事起動。
振り出しに戻す。


ちょうど、参考にさせて頂いていた記事でも同様の現象だったようなので参考にさせて頂きました。
どうやら仮想マシンのネットワークカードのに合わせた設定をしないといかんようで
上記画像のちょうどマウスポインタあたりを見るとIntelの表示。
この場合、上記コマンド内のpcnete1000に直さないといけないようです。
※ここまで(私の環境の場合の)失敗例です。

ポートフォワーディングの再設定。

というわけで、正しいコマンドを打ち直す。再度コマンドプロンプトから。

VBoxManage setextradata "centos" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/Protocol" TCP
VBoxManage setextradata "centos" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/GuestPort" 22
VBoxManage setextradata "centos" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/HostPort" 22


ゲストOS起動。

無事起動。

poderosa立ち上げる。

sshでログインする。

入れる。

ლ(・ิω・ิლ)いえあ←いまここ。


本当はホストOSからhttpでアクセス出来るところまで行きたかったんですが今日はここまで。
先にLAMP環境の構築を優先しよ。

CentOSの文字コードを確認してみる

このブログは【カミタニブログ】へ引っ越しました。当該記事はこちらになります。
お手数をおかけしますが、よろしくお願いいたします。
























MySQL文字コード設定でつらつら弄っていた時に、ふと
"CentOS文字コードってなんだっけ?"という疑問が浮かんだ。

そもそもなんで気にも止めてなかったんだლ(・ิω・ิლ)
ってことで

printenv | grep LANG

LANG=ja_JP.UTF-8
という結果。

CentOSはデフォルトでUTF-8という記事を見かけるのでそうなのでしょう。
今回は確認だけ。