วันศุกร์ที่ 27 ตุลาคม พ.ศ. 2549

การติดตั้ง FreeBSD 6.1 พื้นฐาน

วันนี้ล้างเครื่องติดตั้ง FreeBSD 6.1 ใหม่ (โดยคุณบาทเดียว)

พอดีหัวหน้าอยากได้ server แกร่งๆหน่อยและก็ไม่ต้องใช้ทรัพยากรณ์มาก เอาไว้ทำงาน ผมก็เสนอไปว่า FreeBSD หัวหน้าก็เห็นชอบด้วย(ผมโม้ไปซะเยอะ) ยกเครื่องมาตั้งให้ผม ผมจัดแจงตรวจสอบสเปคทันที
Celeron 800 MHz
SDRAM 128 MB
HDD 20 GB
LAN 1 Port
VGA on Board i810

หลังจากตรวจเช็คอุปกรณ์เสร็จแล้วก็จัดแจงติดตั้ง FreeBSD 6.1 ทันที ผ่านไปด้วยดีครับ
อ้อ..ในระหว่างติดตั้งไม่ได้เลือก x-Window ใดๆเลย
หลังจากติดตั้ง OS เสร็จก็ตรวจสอบระบบเน็ตเวิร์คว่าต่อเน็ตได้หรือไม่ Login เข้าได้หรือไม่ ทุกอย่างผ่านไม่มีที่ติ
จากนั้นก็การทำ cvsup เพื่อปรับปรุง ports

ติดตั้ง cvsup
# cd /usr/ports/net/cvsup-without-gui
# make install && make clean
# rehash

ทำการ synchronize ports index กับ cvsup server
# /usr/local/bin/cvsup -g -L 2 -h cvsup2.freebsd.org /usr/share/examples/cvsup/ports-supfile
นังจิบกาแฟรอจนกว่าจะติดตั้งเสร็จ นานเอาการเหมือนกัน
# cd /usr/ports && make fetchindex
เรียบร้อยไม่มีอะไรติดขัด การอัพเดท ports

จากนั้นผมติดตั้ง Perl 5.8 ก่อนเพื่อนเลย
# cd /usr/ports/lang/perl5.8
# make ? WITH_GDBM=yes ? WITHOUT_PERL_64BITINT=yes ? WITH_THREADS=yes ? ENABLE_SUIDPERL=yes ? install && make clean
ในระหว่างนี้ก็นั่งโม้ให้เด็กฝึกงานฟัง อิอิ จนติดตั้งเสร็จ


ต่อไปก็จับ MySQL มาติดตั้ง ผมใช้ 5.0 ไหนๆก็ใช้ FreeBSD ตั้ง 6.1 แล้วนี่นา
# cd /usr/ports/databases/mysql50-server
# make ? WITH_CHARSET=tis620 ? WITH_XCHARSET=all ? WITH_COLLATION=tis620_thai_ci ? WITH_OPENSSL=yes ? BUILD_OPTIMIZED=yes ? WITH_ARCHIVE=yes ? WITH_FEDERATED=yes ? WITH_NDB=yes ? install && make clean
รอนานเลยครับคราวนี้ ลงไปหาข้าวรองท้อง กลับขึ้นมาก็เสร็จพอดี

ทีนี้ก็จัดการไฟล์คอนฟิก (my.cnf)
เนื่องจากเครื่องที่ใช้ทำ server มีแรมอยู่แค่ 128 MB ก็เลยใช้ไฟล์ my-medium.cnf มาทำไฟล์คอนฟิก my.cnf
# cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf
# chown root:sys /etc/my.cnf
# chmod 644 /etc/my.cnf
# rehash

จากนั้นก็จัดการใส่ password ให้กับ root ต้องสั่ง start mysql ให้ทำงานก่อน
# /usr/local/etc/rc.d/mysql-server start

จากนั้นก็ใส่ password ตามต้องการ
#/usr/local/bin/mysqladmin -u root password '654321'
** 654321 คือ password

ทดลองเข้าไปใช้ mysql
# mysql -u root -p654321
พอเข้าได้แล้วก็ลองใช้คำสั่งต่างๆดู
mysql>status;
mysql>show databases;
mysql>quit; อันนี้ออกจาก mysql

เพิ่มคำสั่ง mysql_enable="YES" เข้าไปที่ไฟล์ /etc/rc.conf
เพื่อให้ mysql ทำงานทุกครั้งตอนบูตเครื่อง


จากนั้นผมก็จัดการคอนฟิก DNS ยาวหน่อยเอาไว้ค่อยมาโม้ทีหลัง


พอติดตั้ง DNS เสร็จผมก็จัดการติดตั้ง Apache 2.2 ต่อไปเลย
# cd /usr/ports/www/apache22
# make ? WITH_LDAP_MODULES=yes ? WITH_MYSQL=yes ? WITH_SSL_MODULES=yes ? WITH_THREADS=yes ? install && make clean
ช่วงที่รอก็เดินไปเดินมา ไปนั่งโม้กะธุรการบ้าง

สั่ง start apache
# /usr/local/etc/rc.d/apache22.sh start
ลองเรียกหน้าเว็บดู
http://172.16.149.191 หรือ http://www.my-office.com
มีข้อความขึ้น It works! ก็คือผ่าน

เพิ่มคำสั่ง apache22_enable="YES" เข้าไปที่ไฟล์ /etc/rc.conf
เพื่อให้ apache ทำงานทุกครั้งตอนบูตเครื่อง
ส่วน ssl เอาไว้จัดการทีหลัง แล้วจะมาโม้อีกที อิอิ
-------------------------------------------------------------------------------------
ต่อไปก็ว่าด้วยการติดตั้ง PHP5
# cd /usr/ports/lang/php5
# make config
เลือกค่าต่างๆตามที่จะใช้งาน ผมไม่เลือก debug อยู่อันเดียว นอกนั้นเอาหมด คิคิ
#make install clean

พอติดตั้งเสร็จก็จัดการกะไฟล์คอนฟิก (php.ini)
# cp /usr/local/etc/php.ini-recommended /usr/local/etc/php.ini
จากนั้นก็ปรับแต่งไฟล์ php.ini
# ee /usr/local/etc/php.ini
บรรทัด
;default_charset = "iso-8859-1"
เอาเครื่องหมาย ; ข้างหน้าออกแล้วแก้ไขเป็น
default_charset = "tis-620"

บรรทัด
;upload_tmp_dir =
เอาเครื่องหมาย ; ข้างหน้าออกแล้วแก้ไขเป็น
upload_tmp_dir = "/tmp/uptmp"

บรรทัด
;session.save_patch = "/tmp"
เอาเครื่องหมาย ; ข้างหน้าออกแล้วแก้ไขเป็น
session.save_patch = "/tmp/sesstmp"
เซฟไฟล์

สร้างไดเรคทอรี่ขึ้นมาที่ /tmp 2 อันชื่อ upload, session
# mkdir /tmp/uptmp
# mkdir /tmp/sesstmp

chmod ให้เป็น 777 ทั้ง 2 ไดเรคทอรี่
# chmod 777 /tmp/uptmp
# chmod 777 /tmp/sesstmp

แก้ไขไฟล์ httpd.conf เพื่อให้รองรับ php
# ee /usr/local/etc/apache22/httpd.conf

ค้นหาบรรทัด
Directoryindex index.html
เพิ่ม index.php และ index.phps เข้าไป เป็น
Directoryindex index.html index.php index.phps index.phtml index.cgi index.pl

ค้นหาบรรทัด
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
เพิ่มคำสั่งนี้ต่อท้ายลงไป
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
เซฟไฟล์แล้ว restart apache ใหม่
# /usr/local/etc/rc.d/apache22.sh restart

สร้างไฟล์ทดสอบการทำงานของ php
#ee /usr/local/www/apache22/data/test.php
ใส่คำสั่งนี้ลงไป
echo phpinfo();
?>
เซฟไฟล์ ใช้บราวส์เซอร์ทดลองเรียกดู
http://www.my-office.com/test.php
มีหน้าสีม่วงๆแจงรายละเอียดต่างๆขึ้นมา ถือว่าผ่านล่ะครับ

ต่อไปทำการติดตั้ง Extensions ต่างๆของ PHP5
# cd /usr/ports/lang/php5-extensions
# make config
เลือก extention ต่างๆตามที่จะใช้งาน
# make install clean
พอเสร็จก็สั่ง restart apache อีกที
# /usr/local/etc/rc.d/apache22.sh restart
ลองเรียกหน้า test.php ดู
http://www.my-office.com/test.php
จะมีรายละเอียดต่างๆของ Extensions เพิ่มเข้ามาเป็นอันเรียบร้อยสำหรับ PHP5
วันนี้เอาไว้แค่นี้ก่อนครับ Cheesy ชักจะมึนๆล่ะ
------------------------------------------------------------------------------------------
เห็นเขาว่ามันช่วยเพิ่มประสิทธิภาพของ PHP ผมก็เลยเอามาติดตั้งมั่งสิ Zend Optimizer 3.0.0
# cd /usr/ports/devel/ZendOptimizer
# make install && make clean
===> ZendOptimizer-3.0.0 :
Because of licensing restrictions, you must fetch the source distribution
manually from the http://www.zend.com/free_download/optimizer URL.
Download the source file, ZendOptimizer-3.0.0-freebsd6.0-i386.tar.gz,
and place it in /usr/ports/distfiles.
.*** Error code 1

Stop in /usr/ports/devel/ZendOptimizer.
#

โอ๊วส์.. เขาแนะนำว่าให้เข้าไปโหลดที่ URL http://www.zend.com/free_download/optimizer เองครับ เสียเวลาสมัครสมาชิกนิดนึง
จากนั้นก็ดาวน์โหลดไฟล์ที่ชื่อ ZendOptimizer-3.0.0-freebsd6.0-i386.tar.gz แล้วให้เอาไปไว้ที่ /usr/ports/distfiles
และก็สั่งติดตั้งอีกที
# cd /usr/ports/devel/ZendOptimizer
# make install && make clean

ตอนท้ายๆจะมีแนะนำ
********************************************************************************

You have installed the ZendOptimizer package.

Edit /usr/local/etc/php.ini and add:

[Zend]
zend_optimizer.optimization_level=15
zend_extension_manager.optimizer="/usr/local/lib/php/20050922/Optimizer"
zend_extension_manager.optimizer_ts="/usr/local/lib/php/20050922/Optimizer_TS"
zend_extension="/usr/local/lib/php/20050922/ZendExtensionManager.so"
zend_extension_ts="/usr/local/lib/php/20050922/ZendExtensionManager_TS.so"

********************************************************************************

ก็เปิดไฟล์ php.ini ขึ้นมาและก็เพิ่มคำสั่งต่อท้ายลงไปล่างสุดเลยครับ
# ee /usr/local/etc/php.ini

[Zend]
zend_optimizer.optimization_level=15
zend_extension_manager.optimizer="/usr/local/lib/php/20050922/Optimizer"
zend_extension_manager.optimizer_ts="/usr/local/lib/php/20050922/Optimizer_TS"
zend_extension="/usr/local/lib/php/20050922/ZendExtensionManager.so"
zend_extension_ts="/usr/local/lib/php/20050922/ZendExtensionManager_TS.so"

เซฟไฟล์แล้ว restart apache
# /usr/local/etc/rc.d/apache22.sh restart

edit @ 2006/10/10 21:59:00
edit @ 2006/10/10 22:36:32
edit @ 2006/10/10 22:37:09
edit @ 2006/10/10 22:37:58

ไม่มีความคิดเห็น: