2012年 3月 の記事

CentOS で IP 計算する方法

CentOS で IP計算する方法は以下の通り。

# ipcalc -mpbn <IPアドレス>/<プレフィックス>
# ipcalc -mpbn <IPアドレス> <ネットマスク>

(コマンド例) 192.168.1.100/24 の場合

# ipcalc -mpbn 192.168.1.100/24
# ipcalc -mpbn 192.168.1.100 255.255.255.0
NETMASK=255.255.255.0
PREFIX=24
BROADCAST=192.168.0.255
NETWORK=192.168.0.0

現在の場所を変更しないでファイルを展開する方法

現在の場所を変更しないでファイルを展開する方法は以下の通り。

tar コマンドのオプション「C」を指定する
(コマンド例) /root/dummy.tgz を /usr/local/src へ展開

# tar zxf dummy.tgz -C /usr/local/src/

サブシェルを使用する
(コマンド例) /root/dummy.tgz を /usr/local/src へ展開

# pwd
/root

# ( cd /usr/local/src/; tar zxvf /root/dummy.tgz )

# pwd
/root

ブレース展開でファイルのコピーや移動をする方法

ブレース展開でファイルのコピーや移動をする方法は以下の通り。

(コマンド例) FILE_1.txt のバックアップを作成

# cp -p FILE_1.txt{,.bak}

(コマンド例) FILE_1.txt を FILE_1.log にリネーム

# mv FILE_1.{txt,log}

CentOS で計算する方法

CentOS で計算する方法は以下の通り。

# expr 1 + 1
# echo "1 + 1" | bc
# echo $((1 + 1))

bcでは小数点も表示できる。

# echo "scale=1; 3 / 2" | bc
1.5

CentOS でファイル名を一括変換する方法

CentOSでファイル名を一括変換する方法は以下の通り。

# rename <対象文字列> <変換文字列> <対象ファイル>

(コマンド例)

# ls
FILE_1.txt  FILE_3.txt  FILE_5.txt  FILE_7.txt  FILE_9.txt
FILE_2.txt  FILE_4.txt  FILE_6.txt  FILE_8.txt
# rename FILE HOGE *txt
# ls
HOGE_1.txt  HOGE_3.txt  HOGE_5.txt  HOGE_7.txt  HOGE_9.txt
HOGE_2.txt  HOGE_4.txt  HOGE_6.txt  HOGE_8.txt

CentOS 6 に RoundCube WebMail をインストールする方法

CentOS 6 に RoundCube WebMail をインストールする方法は以下の通り。

1. 必要なパッケージのインストール

# yum -y install httpd php php-mysql php-mbstring php-xml php-intl mysql-server

2. 次の URL から RoundCube WebMail をダウンロード

http://roundcube.net/download

3. 展開とインストール

# tar zxvf roundcubemail-0.7.1.tar.gz -C /var/www/html/
# chown -R apache:apache /var/www/html/roundcubemail-0.7.1/
# ln -s /var/www/html/roundcubemail-0.7.1 /var/www/html/webmail

4. mcrypt モジュールの組み込み

【方法1】簡単
CentOS 6 に mcrypt.so を組み込む方法 (rpm)

【方法2】手間がかかる
CentOS 6 に mcrypt.so を組み込む方法 (source)

5. /etc/php.ini の編集

# vi /etc/php.ini
[Date]
date.timezone="Asia/Tokyo"

6. MySQL の起動

# service mysqld start

7. DB と DBユーザーの作成

# mysqladmin password password -u root
# mysql -ppassword
mysql> CREATE DATABASE roundcubemail CHARACTER SET utf8;
mysql> GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
mysql> exit

8. db.inc.php と main.inc.php の配置

# cd /var/www/html/webmail/config/
# cp -p db.inc.php.dist db.inc.php
# cp -p main.inc.php.dist main.inc.php

9. db.inc.php の編集(DBユーザーやパスワードを指定)

# vi  db.inc.php
//$rcmail_config['db_dsnw'] = 'mysql://roundcube:pass@localhost/roundcubemail';
$rcmail_config['db_dsnw'] = 'mysql://roundcube:password@localhost/roundcubemail';

10. iptables が有効な場合は TCP/80 を解放

# vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
# service iptables restart

11. /etc/httpd/conf/httpd.conf の編集

CentOS 6 に Apache をインストールする方法 の項目2 を参照

12. Apache の起動

# service httpd start

13. インストールURLの有効化

# vi main.inc.php
//$rcmail_config['enable_installer'] = false;
$rcmail_config['enable_installer'] = true;

14. ブラウザから次の URL へアクセス

http://<IPアドレス>/webmail/installer/

15. RoundCube WebMail の設定

(1) Check environment

「Next」を押して次へ

(2) Create config

スキップされる

(3) Test config

「Initialize database」を押してデータベースを初期化
「Test SMTP config」 でメール送信チェック
「Test IMAP config」 でログインチェック

16. インストールURLの無効化

# vi main.inc.php
$rcmail_config['enable_installer'] = false;
//$rcmail_config['enable_installer'] = true;

17. 次のURLからログイン

http://<IPアドレス>/webmail/

参考:
RoundCube WebMailのカスタマイズ方法

環境:
CentOS 6.2 (x86_64)
roundcubemail-0.7.1

CentOS 6 に mcrypt.so を組み込む方法 (source)

CentOS 6 に mcrypt.so を組み込む方法は以下の通り。

1. 必要なパッケージをインストール

# yum -y install php-devel gcc gcc-c++ make

2. 共有ライブラリのパスを追加

# vi /etc/ld.so.conf.d/usr_local_lib.conf
/usr/local/lib

3. 次の URL から mhash をダウンロード

# cd /usr/local/src/

http://mhash.sourceforge.net/

4. 展開とインストール

# tar xvjf mhash-0.9.9.9.tar.bz2
# cd mhash-0.9.9.9
# ./configure && make && make install
# ldconfig
# cd -

5. 次の URL から libmcrypt をダウンロード

http://sourceforge.net/projects/mcrypt/files/Libmcrypt/

6. 展開とインストール

# tar jxvf libmcrypt-2.5.8.tar.bz2
# cd libmcrypt-2.5.8
# ./configure && make && make install
# ldconfig
# cd -

7. 次の URL から php をダウンロード

http://php.net/downloads.php

8. 展開とモジュールのインストール

# tar xvjf php-5.3.10.tar.bz2
# cd php-5.3.10/ext/mcrypt/
# phpize
# aclocal
# ./configure && make && make install

コンパイルエラーが発生した。

mcrypt.c:283: error: ‘PHP_FE_END’ undeclared here (not in a function)
make: *** [mcrypt.lo] エラー 1

283行目を修正

# vi mcrypt.c
//PHP_FE_END
 {NULL,NULL,NULL}

リトライ

# ./configure && make && make install

9. モジュールの組み込み

# vi /etc/php.d/mcrypt.ini
extension=mcrypt.so

環境:
CentOS 6.2 (x86_64)
php-5.3.3-3
mhash-0.9.9.9
libmcrypt-2.5.8
gcc-4.4.6-3
gcc-c++-4.4.6-3

CentOS 6 に mcrypt.so を組み込む方法 (rpm)

CentOS 6 に mcrypt.so を組み込む方法 は以下の通り。

次のファイルをすべてダウンロードしてインストール

php-mcrypt-5.3.3-1.el6.x86_64.rpm
libmcrypt-2.5.8-9.el6.x86_64.rpm
libmnetutil-0.8.0-0.2.20100629svn3775.el6.x86_64.rpm
libmutil-0.8.0-0.3.20100319svn3760.el6.x86_64.rpm
udns-0.0.9-5.el6.x86_64.rpm

環境:
CentOS 6.2 (x86_64)
php-5.3.3-3

CentOS 6 に Apache をインストールする方法

CentOS 6 に Apache をインストールする方法は以下の通り。

1. apache のインストール

# yum -y install httpd

2. /etc/httpd/conf/httpd.conf の編集

#ServerTokens OS
ServerTokens Prod

#KeepAlive Off
KeepAlive On

#ServerAdmin root@localhost
ServerAdmin root@example.com

#ServerName www.example.com:80
ServerName www.example.com:80

#ServerSignature On
ServerSignature Off

TraceEnable Off

ServerAdmin や ServerName は環境に合わせて設定
Welcome ページが不要な場合は削除

# rm /etc/httpd/conf.d/welcome.conf

3. apache の起動

# service httpd start

4. 起動設定

# chkconfig httpd on

5. iptables が有効になっている場合は TCP/80,443 を解放

/etc/sysconfig/iptables に追記

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
# service iptables restart

環境:
CentOS 6.2 (x86_64)
httpd-2.2.15-15.el6

#ServerTokens OS
ServerTokens Prod

#KeepAlive Off
KeepAlive On

#ServerAdmin root@localhost
ServerAdmin root@example.com

#ServerName www.example.com:80
ServerName www.example.com:80

#ServerSignature On
ServerSignature Off

TraceEnable Off

CentOS 6 で IPv6 を無効化する方法 その2

前回のCentOS 6 で IPv6 を無効化する方法では、ネットワークの再起動で以下のメッセージが表示される。

# service network restart
インターフェース eth0 を終了中:                            [  OK  ]
ループバックインターフェースを終了中                       [  OK  ]
FATAL: Module off not found.
ループバックインターフェイスを呼び込み中                   [  OK  ]
インターフェース eth0 を活性化中:                          [  OK  ]
FATAL: Module off not found.

次の方法のどちらかの設定であれば、上記メッセージが表示されない。
いずれも /etc/modprobe.d/ipv6_disable.conf を作成して記述する。

install ipv6 /bin/true
install ipv6 /sbin/modprobe -n -i ipv6

環境:
CentOS 6.2 (x86_64)

TOP

INFORMATION

当サイトは備忘録であり、その内容を保証するものではありません。 当サイトまたはリンク先によるいかなるトラブルや損害に関しても、一切の責任を負いかねます。 当サイトの内容を無断で転用したり、転載する等の行為はおやめください。