Linux Distribution Chooser – 幫助你選擇適合自己的Linux發行版本

Linux的發行版本非常多,
可能很多使用者會傷腦筋應該要選哪一種才好,
這個網站透過一些簡單的問答,
來幫助你選擇可能適合Linux發行版本:
http://www.zegeniestudios.net/ldc/

問答雖然有多國語音可以選擇但就是獨漏了中文,
但它的英文也不難就是了,
問答內容包含你的Linux的瞭解程度、使用習慣與環境等等,
我自己測出來適性100%的Linux發行版本是:
OpenSuSE
Ubuntu
Debian
Fedora
Mandriva
我最常用的CentOS反而沒進適性100%和95%…(而Fedora我很不喜歡)
不過Debian最近有在碰給我的印象倒是很好。

Debian GNU/Linux建置Apache + MySQL + PHP

先前都是接觸像CentOS這類Red Hat系列的Linux,
聽聞Debian GNU/Linux以穩定性聞名,
最近也試著安裝一些服務來玩玩看,
這次是使用Debian GNU/Linux 6.0.4 x64。

1. 安裝 Apache + MySQL + PHP:
apt-get install apache2 mysql-server mysql-client php5 php5-mysql php5-gd php5-imagick php5-mcrypt
安裝過程中會出現提示畫面要輸入MySQL的ROOT密碼。

2. 設定/etc/mysql/my.cnf設定預設語系為UTF-8:

[client]
default-character-set=utf8

[mysqld]
default-character-set=utf8
default-collation=utf8_general_ci
init_connect='SET NAMES utf8'

3. 因為設定檔有更動,重新啟動Apache與MySQL服務
/etc/init.d/mysql restart
/etc/init.d/apache2 restart

4. Apache與MySQL設定檔位置與CentOS上不同
/etc/mysql/
/etc/apache2/

CentOS 6 安裝crontabs

因為之前安裝CentOS 6時是用最小化安裝,
所以少了這個套件,
再補安裝並啟動就可以了。
yum install crontabs
service crond start

以yum安裝crontabs時會一併安裝sendmail,
因為用不到它所就乾脆停用別讓它開機時執行:
chkconfig sendmail off

利用CentOS 6.2 建構LAMP環境

CentOS 6也推出一陣子了,
為了日後可能也將loki.ind主機升級為第六版先實作一下LAMP環境,

1. 安裝CentOS 6.2
由於是純伺服器的環境,因此我只下載
CentOS-6.2-x86_64-minimal.iso
最小安裝的光碟ISO,
由於只包含最基本的套件安裝,
安裝過程中除了硬碟分割、網卡與時區設定外,
幾乎是點下一步就可以了。

2. 環境設定
一開始安裝CentOS 6.2沒先設定網卡是不會啟動它的,
如果安裝時沒設定要就編輯 /etc/sysconfig/network-script/ifcfg-eth0
例如內容是:

DEVICE="eth0"
HWADDR="00:0C:29:B4:C2:2A"
NM_CONTROLLED="yes"
ONBOOT="no"

就改為(BOOTPROTO依取得IP的方式修改):

DEVICE="eth0"
HWADDR="00:0C:29:B4:C2:2A"
NM_CONTROLLED="yes"
BOOTPROTO="dhcp"
ONBOOT="yes"

再重新啟動網卡:
service network restart

由於CentOS 6.2預設的防火牆規則把SSH以外的協定都檔掉,
如果不熟iptables的設定可以安裝system-config-firewall-tui這個工具:
yum install system-config-firewall-tui
接著就直接輸入system-config-firewall-tui去使用這個工具,
選擇Customize將WWW (HTTP)開放即可,
退出system-config-firewall-tui後它會馬上幫你套用新設定至iptables,
很方便的設定工具。

3. 安裝Apache + PHP + MySQL
這次我不用下載tarball自行編譯安裝的方式,
由於CentOS 6裡的套件都比較新,
改用方便的yum來安裝:
yum install httpd php php-devel php-gd mysql mysql-server
一樣視需求增加要安裝的套件。

接下來啟動服務前設定好my.cnf內容,
可以直接到/usr/share/mysql下找到設定範例檔直接利用,
例如我選擇my-large.cnf將替換新建立的my.cnf (視主機記憶體大小去選擇,設定檔內容開頭也會寫)
cp /usr/share/my-large.cnf /etc/my.cnf

最後啟動mysqld和httpd即可:
service mysqld start
service httpd start
若需要開機時一併啟動服務則只要設定chkconfig將兩項服務on起來:
chkconfig mysqld on
chkconfig httpd on
就這麼簡單!