Short memory (Blog สำหรับคนขี่ลืม)

บทความที่เขียนขึ้นเพื่อ กันลืม ถ้าผิดพลาขอความกรุณาชีแนะด้วยเพื่อปรับปรุงให้ถูกต้อง และเป็นประโยชน์กับคนอ่าน บางบทความอาจจะ Copy เขามา ถ้าไม่ได้ให้ Credit ต้องขอโทษด้วยนะครับ

วันพุธที่ 29 กรกฎาคม พ.ศ. 2552

TIPS: เราสามารถสร้าง Directory public_html แบบอัตโนมัติได้

http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=17863

หากเราสร้าง new user account ใหม่แล้ว ต้องการให้ user นั้น ๆ login เข้าระบบครั้งแรก แล้วระบบจะสร้าง Directory public_html ให้เองอัตโนมัติ เราสามารถทำได้โดยการ เขียนคำสั่งด้านล่างนี้ไว้ในไฟล์ /etc/profile
=====================

if [ ! -d public_html ]; then
mkdir public_html fi

=====================

Technic นี้ทำให้เราทำระบบให้เป็นอัตโนมัติมากขึ้นครับ ไม่ต้องให้ user มาสร้างเอง

วันจันทร์ที่ 6 กรกฎาคม พ.ศ. 2552

การเซต Apache , PHP , MySQL เพื่อรองรับกับ UTF-8

http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=16348
การเซต Apache , PHP , MySQL เพื่อรองรับกับ UTF-8
เราจะต้องปรับไฟล์ config เหล่านี้ครับ
httpd.conf:
=============
AddCharset UTF-8 .utf8
AddDefaultCharset UTF-8

php.ini
===============
default_charset = "utf-8"

my.cnf
================
character-set-server=utf8
default-collation=utf8_unicode_ci


ล็อกอินเข้าด้วยคำสั่ง mysql -u root -p เสร็จแล้วพิมพ์คำสั่ง status; จะต้องแสดงดังนี้

วันเสาร์ที่ 4 กรกฎาคม พ.ศ. 2552

การติดตั้ง vsftpd ผ่าน ports

http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=14411
การติดตั้ง vsftpd ผ่าน ports

ลองติดตั้งดูแล้ว ตอนแรกก็ login ไม่ได้เหมือนกัน มั่วไปมั่วมา ฟลุก login ได้ สรุปขั้นตอนได้ประมาณนี้ ใครที่ยังทำไม่ได้ก็ลองดูเด้อ

*** ต้องประยุค กับในหนังสือ และค้นคว้า จากใน web ให้มากกว่านี่

===============================
Install VsFTP on FreeBSD 7.0
===============================

1. #cd /usr/ports/ftp/

2. #make search name=vsftpd

Port: vsftpd-2.0.6
Path: /usr/ports/ftp/vsftpd
Info: A FTP daemon that aims to be "very secure"
Maint: dinoex@FreeBSD.org
B-deps:
R-deps:
WWW: http://vsftpd.beasts.org/

3. #cd vsftpd/

4. #make config

lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x Options for vsftpd 2.0.6 x
x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x
x x [ x ] RC_NG install RC_NG script x x
x x [ x ] VSFTPD_SSL Include support for SSL x x
x x x x
x x x x
x x x x
x x x x
x x x x
tqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqjqu
x [ OK ] Cancel x
mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj


5. #make install clean

===> Found saved configuration for vsftpd-2.0.6
=> vsftpd-2.0.6.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch from ftp://vsftpd.beasts.org/users/cevans/.
vsftpd-2.0.6.tar.gz 100% of 154 kB 46 kBps
===> Extracting for vsftpd-ssl-2.0.6
=> MD5 Checksum OK for vsftpd-2.0.6.tar.gz.
=> SHA256 Checksum OK for vsftpd-2.0.6.tar.gz.
===> Patching for vsftpd-ssl-2.0.6
===> Applying FreeBSD patches for vsftpd-ssl-2.0.6
===> vsftpd-ssl-2.0.6 depends on file: /usr/local/lib/libcrypto.so.5 - found
===> Configuring for vsftpd-ssl-2.0.6

/usr/bin/sed -i.bak -e "s|/etc/vsftpd.conf|/usr/local/etc/vsftpd.conf|" /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/defs.h
/usr/bin/sed -i.bak -e "s|^CC = gcc|CC = cc|" -e "s|^CFLAGS =|CFLAGS = -O2 -fno-strict-aliasing -pipe -I/usr/local/include|" -e "s| -Wl,-s| -Wl,-s -lwrap -rpath=/usr/local/lib -L/usr/local/lib|" /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/Makefile
/usr/bin/sed -i.bak -e "s|#undef VSF_BUILD_TCPWRAPPERS|#define VSF_BUILD_TCPWRAPPERS 1|" /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/builddefs.h
echo "secure_chroot_dir=/usr/local/share/vsftpd/empty" >> /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/vsftpd.conf
/usr/bin/sed -i.bak -e "s|/etc/v|/usr/local/etc/v|" -e 's|delay_failed_logins|delay_failed_login|' -e 's|delay_successful_logins|delay_successful_login|' /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/vsftpd.8 /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/vsftpd.conf.5 /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/tunables.c
/usr/bin/sed -i.bak -e "s|#undef VSF_BUILD_SSL|#define VSF_BUILD_SSL 1|" /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/builddefs.h
...
...
...

/bin/mkdir -p /usr/local/share/doc/vsftpd/EXAMPLE
/bin/cp -p -R -L /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/EXAMPLE/./ /usr/local/share/doc/vsftpd/EXAMPLE/
/bin/chmod -R -L a+rX,go-w /usr/local/share/doc/vsftpd/EXAMPLE/
/bin/mkdir -p /usr/local/share/doc/vsftpd/SECURITY
/bin/cp -p -R -L /usr/ports/ftp/vsftpd/work/vsftpd-2.0.6/SECURITY/./ /usr/local/share/doc/vsftpd/SECURITY/
/bin/chmod -R -L a+rX,go-w /usr/local/share/doc/vsftpd/SECURITY/
===> Installing rc.d startup script(s)
===> Compressing manual pages for vsftpd-ssl-2.0.6
===> Registering installation for vsftpd-ssl-2.0.6
===> SECURITY REPORT:
This port has installed the following files which may act as network
servers and may therefore pose a remote security risk to the system.
/usr/local/libexec/vsftpd

This port has installed the following startup scripts which may cause
these network services to be started at boot time.
/usr/local/etc/rc.d/vsftpd

If there are vulnerabilities in these programs there may be a security
risk to the system. FreeBSD makes no guarantee about the security of
ports included in the Ports Collection. Please type 'make deinstall'
to deinstall the port if this is a concern.

For more information, and contact details about the security
status of this software, see the following webpage:
http://vsftpd.beasts.org/
===> Cleaning for vsftpd-ssl-2.0.6
6. #more /usr/local/etc/rc.d/vsftpd

7. #pico -w /etc/rc.conf

#FTP Server #
vsftpd_enable="YES"

8. #more /usr/local/share/doc/vsftpd/README

9. #more /usr/local/share/doc/vsftpd/INSTALL

10. #cp /usr/local/etc/vsftpd.conf /usr/local/etc/vsftpd.conf.ori

11. #pico -w /usr/local/etc/vsftpd.conf

# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
## Anonymous FTP
#anonymous_enable=YES

#
# Uncomment this to allow local users to log in.
#Real FTP
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES

##
## uncomment this and create file "/usr/local/etc/vsftpd.user_list" for allow users login
userlist_enable=YES

## only allow users in this file "/usr/local/etc/vsftpd.user_list"
userlist_deny=NO

## never allow users in this file, and do not even prompt for a password.
#userlist_deny=YES

#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=022

#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
## user can upload file
anon_upload_enable=YES

#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
## user can make or create new directory
anon_mkdir_write_enable=YES

## user can read file in new directory
anon_world_readable_only=NO

## user can delete file and directory
anon_other_write_enable=YES

#
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES

#
# Activate logging of uploads/downloads.
xferlog_enable=YES

#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES

#
# If you want, you can arrange for uploaded anonymous files to be owned by
# a different user. Note! Using "root" for uploaded files is not
# recommended!
#chown_uploads=YES
#chown_username=whoever
#
# You may override where the log file goes if you like. The default is shown
# below.
xferlog_file=/var/log/vsftpd.log

#
# If you want, you can have your log file in standard ftpd xferlog format
xferlog_std_format=YES

#
# You may change the default value for timing out an idle session.
#idle_session_timeout=600
#
# You may change the default value for timing out a data connection.
#data_connection_timeout=120
#
# It is recommended that you define on your system a unique user which the
# ftp server can use as a totally isolated and unprivileged user.
#nopriv_user=ftpsecure
#
# Enable this and the server will recognise asynchronous ABOR requests. Not
# recommended for security (the code is non-trivial). Not enabling it,
# however, may confuse older FTP clients.
#async_abor_enable=YES
#
# By default the server will pretend to allow ASCII mode but in fact ignore
# the request. Turn on the below options to have the server actually do ASCII
# mangling on files when in ASCII mode.
# Beware that on some FTP servers, ASCII support allows a denial of service
# attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd
# predicted this attack and has always been safe, reporting the size of the
# raw file.
# ASCII mangling is a horrible feature of the protocol.
#ascii_upload_enable=YES
#ascii_download_enable=YES
#
# You may fully customise the login banner string:
#ftpd_banner=Welcome to blah FTP service.
#
# You may specify a file of disallowed anonymous e-mail addresses. Apparently
# useful for combatting certain DoS attacks.
#deny_email_enable=YES
# (default follows)
#banned_email_file=/etc/vsftpd.banned_emails
#
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
## user can change root to other
#chroot_local_user=YES

## allow user can change root to other
chroot_list_enable=YES

# (default follows)
## this file keep username that allow to change directory
chroot_list_file=/etc/vsftpd.chroot_list

#
# You may activate the "-R" option to the builtin ls. This is disabled by
# default to avoid remote users being able to cause excessive I/O on large
# sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
# the presence of the "-R" option, so there is a strong case for enabling it.
#ls_recurse_enable=YES

#secure_chroot_dir=/usr/local/share/vsftpd/empty
secure_chroot_dir=/home/share/pub/vsftpd/empty

#pam_service_name=vsftpd

## enable for standalone mode
listen=YES
background=YES
#tcp_wrappers=YES

12. #mkdir -p /home/share/pub/vsftp/empty

13. #pico -w /usr/local/etc/vsftpd.user_list

### permit local users admin an webmaster can login ###
admin
webmaster

11. #pico -w /usr/local/etc/vsftpd.chroot_list

### permit only user admin can change root to other directory ###
admin

12. #adduser admin

13. #passwd admin

14 #adduser webmaster

15 #passwd webmaster

16. #/usr/local/etc/rc.d/vsftpd start

Starting vsftpd.

17. #netstat -na|grep 21

tcp4 0 0 *.21 *.* LISTEN

18. #lsof -i | grep vsftpd

vsftpd 5501 root 0u IPv4 0xc44191d0 0t0 TCP *:ftp (LISTEN)

19. #lsof -c vsftpd

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
vsftpd 5501 root cwd VDIR 0,95 3584 526735 /usr/local/etc
vsftpd 5501 root rtd VDIR 0,89 512 2 /
vsftpd 5501 root txt VREG 0,95 94984 565807 /usr/local/libexec/vsftpd
vsftpd 5501 root txt VREG 0,89 171588 50919 /libexec/ld-elf.so.1
vsftpd 5501 root txt VREG 0,95 27940 895077 /usr/lib/libwrap.so.5
vsftpd 5501 root txt VREG 0,95 28240 899550 /usr/lib/libpam.so.4
vsftpd 5501 root txt VREG 0,89 50472 24 /lib/libutil.so.7
vsftpd 5501 root txt VREG 0,95 293047 570951 /usr/local/lib/libssl.so.5
vsftpd 5501 root txt VREG 0,95 1497579 570943 /usr/local/lib/libcrypto.so.5
vsftpd 5501 root txt VREG 0,89 1040524 508 /lib/libc.so.7
vsftpd 5501 root txt VREG 0,89 67088 511 /lib/libthr.so.3
vsftpd 5501 root 0u IPv4 0xc44191d0 0t0 TCP *:ftp (LISTEN)
vsftpd 5501 root 1 0xc5dc6e58 file struct, ty=0, op=0xc0baef20

20. #ftp localhost

Trying 127.0.0.1...
Connected to localhost.
500 OOPS: vsftpd: cannot locate user specified in 'ftp_username':ftp
ftp> exit

21. #grep "ftp" /etc/group

22. #grep "ftp" /etc/passwd

23. #pw userdel ftp

23. #pw groupadd ftp -g 14

24. #pw useradd ftp -u 14 -g 14 -d /home/share/pub/vsftpd -s /sbin/nologin

25. #grep "ftp" /etc/passwd

ftp:*:14:14:User &:/home/share/pub/vsftpd:/sbin/nologin

26. #grep "ftp" /etc/group

ftp:*:14:

27. #/usr/local/etc/rc.d/vsftpd restart

Stopping vsftpd.
Starting vsftpd.

28. #ftp localhost

Trying 127.0.0.1...
Connected to localhost.
220 (vsFTPd 2.0.6)
28.1 Name (localhost:root): root
530 Permission denied.
ftp: Login failed. <=== root can not login

28.2 ftp> exit
221 Goodbye.

29. #ftp localhost

Trying 127.0.0.1...
Connected to localhost.

220 (vsFTPd 2.0.6)
29.1 Name (localhost:root): admin

331 Please specify the password.
29.2 Password: xxxxxx

230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.

29.3 ftp> pwd

Remote directory: /home/admin

29.4 ftp> dir

229 Entering Extended Passive Mode (|||62201|)
150 Here comes the directory listing.
drwxr-xr-x 3 0 1010 512 Apr 01 09:41 CA
drwx------ 15 1010 1010 512 Jun 26 02:12 Maildir
drwx------ 2 1010 1010 512 Mar 26 04:03 cur
-rw------- 1 1010 1010 144 Mar 26 04:03 dovecot.index
-rw------- 1 1010 1010 10272 Mar 26 04:03 dovecot.index.cache
-rw------- 1 1010 1010 124 Mar 26 04:03 dovecot.index.log
drwx------ 2 1010 1010 512 Mar 26 04:03 new
drwx------ 2 1010 1010 512 Mar 26 04:03 tmp
226 Directory send OK.

29.5 ftp> cd /usr/local/www/apache22/data

250 Directory successfully changed. <=== admin can change root directory

29.6 ftp> pwd

Remote directory: /usr/local/www/apache22/data

29.7 ftp> dir

229 Entering Extended Passive Mode (|||14267|)
150 Here comes the directory listing.
-rw-r--r-- 1 0 0 892 Feb 12 13:05 ERROR.html
-rw-r--r-- 1 0 0 2326 May 25 2007 apache_pb.gif
-rw-r--r-- 1 0 0 1385 May 25 2007 apache_pb.png
-rw-r--r-- 1 0 0 2410 May 25 2007 apache_pb22.gif
-rw-r--r-- 1 0 0 1502 May 25 2007 apache_pb22.png
-rw-r--r-- 1 0 0 2205 May 25 2007 apache_pb22_ani.gif
-rw-r--r-- 1 0 0 44 Nov 20 2004 index.html
...
...
...
226 Directory send OK.

29.8 ftp> exit
221 Goodbye.

30. #ftp localhost

Trying 127.0.0.1...
Connected to localhost.
220 (vsFTPd 2.0.6)
30.1 Name (localhost:root): webmaster
331 Please specify the password.

30.2 Password: xxxxxx
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.

30.3 ftp> pwd
Remote directory: /

30.4 ftp> dir
229 Entering Extended Passive Mode (|||14221|)
150 Here comes the directory listing.
drwx------ 9 1004 1004 512 Jan 30 02:33 Maildir
drwxr-xr-x 9 1004 1004 8704 May 08 2007 public_html
226 Directory send OK.

30.5 ftp> cd /usr/local/www/apache22/data
550 Failed to change directory. <=== webmaster can not change root directory

30.6 ftp> exit
221 Goodbye.


-----------------------------------------------------------------------------------------------------------------------------------------

advance example:

1. #ll /usr/local/share/doc/vsftpd/EXAMPLE/

total 14
drwxr-xr-x 2 root wheel 512 Feb 2 08:30 INTERNET_SITE
drwxr-xr-x 2 root wheel 512 Feb 2 08:30 INTERNET_SITE_NOINETD
drwxr-xr-x 2 root wheel 512 Feb 2 08:30 PER_IP_CONFIG
-rw-r--r-- 1 root wheel 815 Feb 2 08:30 README
drwxr-xr-x 2 root wheel 512 Feb 2 08:30 VIRTUAL_HOSTS
drwxr-xr-x 2 root wheel 512 Feb 2 08:30 VIRTUAL_USERS
drwxr-xr-x 2 root wheel 512 Feb 2 08:30 VIRTUAL_USERS_2

2. #more /usr/local/share/doc/vsftpd/EXAMPLE/README

These subdirectories contain examples of vsftpd usage.
These examples are known to work on a RedHat 7.2 installation. Some of them
rely on xinetd and / or a highly functional version of PAM.

The examples should serve to illustrate how vsftpd becomes extremely powerful
when intregration with xinetd for connection handling and PAM for
authentication.

Contents
========

INTERNET_SITE How you might configure vsftpd for an internet site.

INTERNET_SITE_NOINETD How to use vsftpd without xinetd.

PER_IP_CONFIG How to apply different settings based on the connecting
IP address.

VIRTUAL_HOSTS How to set up vsftpd with virtual hosting.

VIRTUAL_USERS How to set up virtual users with vsftpd.

VIRTUAL_USERS_2 Advanced virtual users - different access rights.

การติดตั้ง ZendOptimizer เพื่อให้ php ทำงานได้เร็วขึ้น

http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=6604
http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=10984
การติดตั้ง ZendOptimizer เพื่อให้ php ทำงานได้เร็วขึ้น

# cd /usr/ports/devel/ZendOptimizer
# make install && make clean

ท้ายๆจะมีบอกว่าให้เพิ่มคำสั่งอะไรบ้างเข้าไปที่ไฟล์ php.ini พอติดตั้งเสร็จ restart apache ก็ใช้งานได้แล้วครับ

#pico /usr/local/etc/php.ini

เอาอันนี้ใส่ท้าย file ครับ
[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"

เซฟ แล้วรีสตาทร์ อาบาเช่
# /usr/local/etc/rc.d/apache22 restart

ขอบ่นหน่อยส่วนตัวเรื่อง ความสับเพล่

วันนี้ Config Server FreeBSD เพื่อใช้เป็น web Server ลืมติกถูกจุดเดียว ทำให้ Server ไม่สามารถที่จะแสดงผลภาษา php ได้ นั้งไล่ตั้งครึ่งวัน เพราะตัวเองไม่อ่าน options ตอนติดตั้งภาษา php ลืมติกถูกตรง Appche Build Apache Module เซ็งมาก น่าจะเอาเวลาตอนไรว่าตัวเองทำอะไรผิดไปทำอย่างอื่น

แล้วก็มี Error Code 1 อีก สุดเซ็ง วิธีแก้ก็แค่ไปหาสิ่งที่มันต้องการ ให้กับมัน เท่านั้นก็ ok อันนี้แก้ไม่ยาก
แต่เจ็บใจสุดๆๆก็คือ ทำไมไม่อ่าน เซ็งตัวเองจัง ทำไม ๆๆๆๆ ไม่อ่าน วะ นิสัยแย่จังเรา

วันศุกร์ที่ 3 กรกฎาคม พ.ศ. 2552

ข้อดีของการ Compile kernel และวิธีการ compile

ข้อดีของการ Compile kernel และวิธีการ compile
http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=17668

Compile Kernel
จุดประสงค์เพื่อรองรับอุปกรณ์เฉพาะกับเครื่องของท่านเท่านั้นทำให้ Kernelมีขนาดเล็กลงกว่าเดิม เครื่องทำงานเร็วขึ้นและรองรับอุปกรณ์ใหม่ ๆ เช้น Sound, VGA เป็นต้น

เริ่ม Compile Kernel (ทุกขั้นตอนอยู่ใน Directory /usr/src/sys/i386/conf)
01.#cd /usr/src/sys/i386/conf
02.#mkdir /root/kernels
03.#cp GENERIC /root/kernels/MYKERNEL
04.#ln -s /root/kernels/MYKERNEL
05.#ee MYKERNEL (แก้ ident GENERIC เป็น ident MYKERNEL กดปุ่ม Esc แล้วกดปุ่ม Enter 2 ครั้ง)
06.#config MYKERNEL
07.#cd ../compile/MYKERNEL(ไม่มีอะไรเกิดขึ้นถ ูกต้องแล้วทำเนินการต่อไปเลย)
08.#make cleandepend; makedepend; make; make install
09.#shutdown -r now
10.login (เข้าเครื่องในฐานะ root อีกครั้งแล้วตรวจดูความสำเร็จในการ Compile Kernel)
11.#dmesg more (สังเกตุบรรทัดมีคำว่า"MYKERNEL" root@namotasa.com: /usr/src/sys/i386/compile/MYKRENEL)
12.#uname -a (สังเกตุบรรทัดสุดท้ายมีคำว่า"MYKERNEL i386" root@namotasa.com: /usr/src/sys/i386/compile/MYKRENEL i386)

เป็นอัน เสร็จพิธี
(ถ้าต้องการทำติดตั้ง Firewall ก็สามารถที่จะ Compile Kernel เพิ่มเติมได้ การ Compile Kernel สามารถทำได้หลายครั้ง ตามที่ต้องการ)

วันพฤหัสบดีที่ 2 กรกฎาคม พ.ศ. 2552

การลบโปรแกรมต่างๆของคอมพิวเตอร์ อย่างไ่ม่ให้มีปัญหา

ที่มาhttp://gotoknow.org/blog/manote/272292

การลบโปรแกรมต่างๆของคอมพิวเตอร์ อย่างไม่ให้มีปัญหา
โดยปกติแล้วนะครับ โปรแกรมที่ทำงานกับ Windows ส่วนมากจะมี option uninstall มาให้อยู่แล้วเพื่อถอดโปรแกรมออก ให้เลือก uninstall อย่าลบเอง หรือถ้าหาไม่เจอก็ไปที่ start -> setting -> control panel -> Add/Remove Programs แล้วเลือกรายชื่อโปรแกรมที่ต้องการลบ ถ้าไม่ได้ลบโดยเข้าไปที่ Add/Remove Program (หรือถ้าลบแล้วมีัปัญหา) รายชื่อโปรแกรมที่ลบไปยังอาจจะอยู่ในไดอะล็อก Add/Remove Programs

ให้ปฎิบัติดังนี้ ครับ
1. เรียกโปรแกรม regedit โดย start -> run
2. พิมพ์ regedit แล้ว ok เลือกตามต่อไปนี้
3. HKWY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
4. แล้วก็เลือกลบชื่อโปรแกรมที่เราต้องการลบออก ครับ

...............................................................................
หรือว่า ไม่ยากทำเองให้มันยุ่งยาก ลองใช้โปรแกรมตัวนี้ครับ ดีมาก เลยครับ ผมใช้อยู่ครับโปรแกรม Your Uninstaller! 2008 โปรแกรม สำหรับ Uninstall โปรแกรมต่างๆ แบบหมดจด! เจ้าโปรแกรม Your Uninstaller! 2008 นี้ จะทำการ ลบ โปรแกรมนั้นๆ ให้หายวับไปจากคอมพิวเตอร์ของท่าน รวมทั้งกำจัด ไฟล์ต่างๆที่ไม่จำเป็นออกไปอย่างหมดจดเลยครับ ช่วยให้ประหยัดพื้นที่ Hard Disk และคอมพิวเตอร์ทำงานได้เร็วขึ้นอีกนิดครับ ส่วนการใช้งาน ก็ไม่ยากเลยครับ เพียงแค่ท่าน เปิดโปรแกรม Your Uninstaller! 2008 ขึ้นมา จากนั้นเลือกโปรแกรม ที่เราต้องการจะลบ คลิกปุ่ม Uninstall และคลิก next ไปตามขั้นตอน เมื่อเสร็จแล้วก็รีสตาร์ทเครื่อง 1 ครั้ง ครับ เพียงเท่านี้ โปรแกรมที่ ท่านไม่ต้องการก็ จะไม่มาปรากฏให้กวนใจอีกเลยครับ ...

Download โปรแกรมได้ที่นี่เลยครับ http://rapidshare.com/files/1138 ... 8PRO611246.rar.html ไฟล์ไม่ใหญ่ครับ 3.63 Mb

วิธีการเข้า switch 2960 ของ cisco เมื่อจำ password ไม่ได้

ที่มา http://gotoknow.org/blog/network-kp/149443
ขอบคุณเจ้าของบทความ

วิธีการเข้า switch 2960 ของ cisco เมื่อจำ password ไม่ได้
ในกรณีที่ลืม password ในการเข้า switch 2960 ของ cisco เราจะมีขั้นตอนในการแก้ปัญหา(เป็นการทำ password recovery)ดังนี้
1. เชื่อมต่อ switch ที่ console port
2. เปิดโปรแกรมที่ใช้ config switch ขึ้นมา (เช่น Hyper terminal)
3. ทำการรีบูต switch โดยการถอดสาย power แล้วเสียบเข้าไปใหม่
4. เมื่อ switch เปิดขึ้นมา ภายในเวลาไม่เกิน 15 วินาที่ ให้กดปุ่ม mode (บน switch )ค้างเอาไว้ จนกระทั่งสีของหลอดไฟ system เปลี่ยนจากสีเขียวที่กระพริบ ไปเป็นสีเหลืองอำพัน และจนเป็นสีเขียวที่ไม่กระพริบแล้วจึงค่อยปล่อยปุ่ม mode ที่กดไว้

จากนั้นจะมีข้อความจาก switch ขึ้นมาเพื่อบอกว่า password recovery ถูก enable หรือไม่

ถ้า password recovery enable จะมีข้อความนี้ปรากฏขึ้น
The system has been interrupted prior to initializing the flash file system. The following commands will initialize the flash file system, and finish loading the operating system software:

จากนั้นให้ทำตามขั้นตอนดังนี้
- Initialize the flash file system โดยการพิมพ์(ตัวหนา)
switch: flash_init
- Load any helper files โดยพิมพ์
switch:--> load_helper
- แสดงไฟล์ที่อยูใน flash memory โดยพิมพ์
switch:--> dir flash: ผลที่ได้ประมาณนี้

Directory of flash:
13 drwx 192 Mar 01 1993 22:30:48 c2960-lanbase-mz.122-25.FX
11 -rwx 5825 Mar 01 1993 22:31:59 config.text
18 -rwx 720 Mar 01 1993 02:21:30 vlan.dat
- ทำการเปลี่ยนชื่อไฟล์ configure ไปเป็น config.text.old โดยพิมพ์ switch:--> rename flash:config.text flash:config.text.old
- ทำการ reboot system โดยพิมพ์ switch:--> boot

เมื่อ switch boot ขึ้นมาแล้วจะมีข้อความนี้ปรากฏขึ้นให้ตอบ no Continue with the configuration dialog? [yes/no]: N

จากนั้นให้ทำตามนี้
- เข้าสูโหมด privileged exec
Switch> enable
- ทำการเปลี่ยนชื่อ config กลับไปเป็นของเดิม
Switch# rename flash:config.text.old flash:config.text
- ทำการคัดลอกไฟล์ config ลง memory
Switch# copy flash:config.text system:running-config
Source filename [config.text]?
Destination filename [running-config]?

configure file จะถูก reload ใหม่ จากนี้ก็จะทำการแก้ไข password ได้แล้ว โดยเข้าไปที่ global configuration เพื่อเปลี่ยน password

Switch# configure terminal
Switch (config)# enable secret password

เมื่อตั้ง password เสร็จแล้วให้ออกมาที่โหมด privileged exec เพื่อทำการคัดลอก config จาก running config ลงสู่ startup config ก็เป็นการเสร็จขั้นตอนการทำ password recovery

Switch# copy running-config startup-config

วันศุกร์ที่ 26 มิถุนายน พ.ศ. 2552

Terminal ssh ไม่ได้ ทำไงดี (ใน MacBook)

วันนี้เป็นอะไรที่ตกใจสุดๆเลย ว่า อยู่ดีๆๆ Terminal ใช้งานไม่ได้ซะงั้น จะ remote เข้า Server ตัวเองก็ไม่สามารถที่จะ ทำได้ ไอ่จะให้กลับไป ใช้ Windows Remote เข้า Server ก็กลายเป็นการแก้ปัญหา ปลายเหตุก็เลยต้องหาคำตอบซะหน่อยว่ามันเกิดอาไรขึ้นกัน ฟะ ก็เลยลงมือหาคำตอบ ในพี่กรู (Google) ซะหน่อย หามาหลายที่ อ่านเท่าไรก็ไม่เข้าใจซะที่ ก็เลยลองหาวิธีที่จะเข้าไปใน root ของเครื่อง ก็เลยสรุป ปัญหาที่เกิดขึ้น

ก็คือ เครื่อง mac key ที่เข้าระหัสทั้งสองฟัง ระหว่างเครื่องไคลเอนต์ และ เครื่องเซร์ฟเวอร์ เพื่อความปลอดภัยแต่ผมดันกะแดะ ไปลง server ที่ทำงานใหม่ (Server Freebsd) key ทาง Server เปลี่ยน แต่ key ในการติดต่อของ ไคลเอนต์ มันไม่เปลี่ยนตาม ทำให้เกิด Error แบบนี้ขึ้น
goldhands-macbook:/ Goldhand$ cat .ssh/known_hosts
cat: .ssh/known_hosts: No such file or directory
goldhands-macbook:/ Goldhand$ ssh modlove@202.149.113.155
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the DSA host key has just been changed.
The fingerprint for the DSA key sent by the remote host is
58:b1:9f:ad:7f:bf:a3:48:63:58:5c:93:27:72:9f:3a.
Please contact your system administrator.
Add correct host key in /Users/Goldhand/.ssh/known_hosts to get rid of this message.
Offending key in /Users/Goldhand/.ssh/known_hosts:1
DSA host key for 202.149.113.155 has changed and you have requested strict checking.
Host key verification failed.

ทำให้ไม่สามารถที่จะ login เข้า server เพื่อ config ค่าต่างๆๆใน server ได้ บ่นมาตังนาน มาอ่านวิธีแก้ไขกันดีกว่า อื อื

1. ต้อง login เป็น root ก่อนเป็นอันดับแรก เพราะว่าถ้า ไม่ login เป็น root จะไม่สามรถทำอะไรได้เลย วิธี login
พิมพ์ su เพื่อ login ไปเป็น root จะมีข้อความมาถามเรื่อง Password: ให้เราใส่ password ของ root เข้าไป ดังตัวอย่างข้างล่าง

ตัวอย่าง
goldhands-macbook:~ Goldhand$su
Password:
sh-3.2#

2. หลังจาก login แล้ว ให้เราค้นหา File ที่ชื่อ known_hosts โดยใช้คำสั่ง find / -name "ตามด้วยคำที่ต้องกาค้นหา" ดังตัวอย่าง

sh-3.2#find / -name known_hosts
/private/var/root/.ssh/known_hosts

3. หลังจากเราหาเจอ เราก็ทำการ ไปที่ เก็บ file และทำการลบมันออก โดยใช้คำสั่ง rm ตัวอย่าง

sh-3.2#cd /private/var/root/.ssh/
sh-3.2#rm known_hosts

แค่นี้ก็เป็นอันเสร็จ ตู ลอง login เข้าไปใหม่ ก็ใช้งานได้ตามปกติ สำเร็จแล้ว






4.การติดตั้งภาษา PHP5

4.การติดตั้งภาษา PHP5
เอกสารอาจารย์กิตติพงษ์ สุวรรณราช
1. เริ่มการติดตั้งโดยการเข้าไปยังไดเร็กทอรี /usr/ports/lang/php5 ซึ่งจะเป็นภาษา PHP เวอร์ชั่น 5 ซึ่งจำเป็นต่อการเขียนโปรแกรมภาษา PHP อย่างมากในปัจจุบัน เราสามารถติดตั้งได้โดยการใช้คำสั่ง make install ดังตัวอย่าง แล้วการเลือก extensions หรือโปรแกรมส่วนเพิ่มตามความต้องการ (แนะนำให้เลือกตามตัวอย่าง)

# cd /usr/ports/lang/php5
# make install

2. รอสักครู่จะปรากฏหน้าจอ แล้วให้เราเลือก Options ของ Apache ซึ่งจะเป็นโมดูล (Modules) ที่จำเป็นต้องใช้งานเพื่อให้ Apache Web Server รับรู้ภาษา PHP ใหม่นี้ด้วย จากนั้นให้กดปุ่ม TAB มาที่ OK แล้ว Enter เพื่อทำงานต่อไป

(เลือกหัวข้อต่อไปนี CLI,CGI,APACHE,SUHOSIN,IPV6,FASFCGI)สีแดงคือตัวติกเพิ่ม

3. เมื่อโปรแกรมภาษา PHP ได้ทำการติดตั้งและคอมไฟล์ (Compile) เสร็จเรียบร้อยแล้วจะปรากฏหน้าจอด้านล่างนี้ แล้วยังให้ตรวจสอบว่าการมีการเพิ่มบรรทัดคำสั่ง AddType ทั้ง 2 บรรทัดในไฟล์ httpd.conf หรือยัง

รูปที่ 2 ภาษา PHP ถูกติดตั้งเรียบร้อยแล้ว

4. ขั้นตอนนี้จะเป็นขั้นตอนที่เราต้องการเพิ่ม Extensions หรือกล่าวได้อีกอย่างว่า เราต้องการให้ภาษา PHP มีความสามารถเพิ่มขึ้นมากกว่าเดิม เช่น สามารถติดตั้งฐานข้อมูล MySQL ได้ เราก็จำเป็นต้องเพิ่ม MySQL Extension เป็นต้น การเพิ่ม Extension นี้สามารถทำได้โดยขั้นตอนต่อไปนี้

# cd /usr/ports/lang/php5-extensions
# make install

5. ทำการเลือก Extension ที่เราต้องการในที่นี้แนะนำให้เลือกตามเอกสาร เนื่องจากเป็น Extension ที่มีความจำเป็นต่อการใช้งานของโปรแกรมทั่วๆไป การเลือกนี้สามารถทำได้โดยการเลื่อน Cursor ไปยังชื่อ Extensions ที่ต้องการแล้วกดปุ่ม Space Bar





(เลือก CALENDAR,CTYPE,DOM,FTP,GD,GETTEXT)





(เลือก MBSTRING,MYSQL)



(เลือก OPENSSL,PDF)

(เลือก SOCKETS)

(เลืก ZIP,ZLIB)


เมื่อเลือก Extension ตามตัวอย่างเรียบร้อยแล้วให้กดปุ่ม OK เพื่อทำการติดตั้ง PHP Extension เพิ่มเติม ให้รอจนกว่าจะเรียบร้อย แล้วให้ทำงาน reboot เครื่องอีกครั้งเพื่อให้ระบบปฏิบัติการ FreeBSD รับรู้ภาษาใหม

โดยปกติ php จะใช้ไฟล์คอนฟิกชื่อ /usr/local/etc/php.ini แต่ในขณะที่ติดตั้ง php เสร็จใหม่ๆจะไม่มีไฟล์นี้ให้ เราจะต้องสำเนาเอาไฟล์คอนฟิกจาก /usr/local/etc/ ออกมาเอง

#cp /usr/local/etc/php.ini-recommended /usr/local/etc/php.ini


แก้ไขค่า config ที่ไฟล์ php.ini
#ee /usr/local/etc/php.ini

ค้นหาบรรทัด
short_open_tag = Off
แก้ไขเป็น
short_open_tag = On
ตกม้าตาย
ตรงนี้ ถ้า เป็น Off จะต้องเขียน Code PHP แบบนี้เท่านั้น เท่านั้นที่จะแสดงผล แต่ถ้าแก้เป็น On จะเขียนได้ทั้งสองแบบ คือ หรือ ก็ได้

ค้นหาบรรทัด
register_globals = Off
แก้ไขเป็น
register_globals = On

บรรทัด
;default_charset = "iso-8859-1"
เอาเครื่องหมาย ; ข้างหน้าออกแล้วแก้ไขเป็น
default_charset = "tis-620"

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

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

บรรทัด
session.cookie_patch = /
แก้ไขเป็น
session.cookie_patch = "/tmp/cookie"

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

chmod ให้เป็น 777 ทั้ง 3 ไดเรคทอรี่
#chmod 777 /tmp/upload session cookie


6. หากเราต้องการทดสอบนั้นก็สามารถทำได้โดยการเขียนโปรแกรมภาษา PHP เพื่อทดสอบ ตามขั้นตอนนี้


# cd /usr/local/www/data
# pico test.php
(เขียนคำสั่งเพิ่มหนึ่งบรรทัด ดังนี้
#


หลังจากนั้นให้เปิดโปรแกรม Internet Explorer เรียก URL ตาม IP address ของเครื่องของท่านคล้าย ๆ ตัวอย่าง เช่น http://192.168.1.2/test.php เป็นต้น หากทำได้ถูกต้องก็จะเขียนรายละเอียดของภาษา PHP ให้เราได้ทราบ แต่หากไม่ถูกต้องก็จะปรากฏเป็นไฟล์ให้บันทึก (Save) หรืออาจจะเกิดเหตุการณ์อื่น ๆ

Tips

เพื่อให้ server สามารถใช้ภาษาไทยได้ทั้ง Tis620 และ Utf-8 โดยเพิ่มคำสั่งเข้าไปใน File php.ini

#default_

charset="tis620"

default_charset="utf-8,tis-620"

3.การติดตัง mysql ให้รองรับ ภาษาไทย

ถ้าติดตั้ง mysql อยู่แล้ว ถ้าต้องการที่ จะ remove ออกจากเครื่องให้ทำตามนี้

#cd /usr/ports/databases/mysql50-server/
#make deinstall clean

#cd /usr/ports/databases/mysql50-client/
#make deinstall clean

#cd /usr/ports/databases/mysql50-scripts/
#make deinstall clean
#killall mysqld
#rehash

หลังจาก deinstall (Uninstall) แล้วก็เริ่มติดตั้งได้เลย
แต่ถ้ายังไม่ได้ติดตั้งก็เริ่ม ติดตั้ง จากตรงจุดนี้

#cd /usr/ports/databases/mysql50-server/

make WITH_CHARSET=utf8 WITH_XCHARSET=all WITH_COLLATION=utf8_unicode_ci WITH_OPENSSL=yes BUILD_OPTIMIZED=yes WITH_ARCHIVE=yes WITH_FEDERATED=yes WITH_NDB=yes install clean

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 clean

หลังจาก สั่ง install แล้วก็ ไปเดินเล่น กิน กาแฟ ไปทำนูนทำนี้อีกสัก 15 -20 นาที ขึ้นอยู่ กับ Internet ที่จะโหลด Code ลงมาติดตั้งด้วย

เพื่อให้การทำงานของ mysql server มีประสิทธิภาพมากที่สุด ก็เลือกไฟล์คอนฟิกให้เหมาะสมกับเครื่องเรา ปกติ mysql จะใช้ไฟล์คอนฟิกชื่อ /etc/my.cnf แต่ในขณะที่ติดตั้ง mysql เสร็จใหม่ๆจะไม่มีไฟล์นี้ให้ เราจะต้องสำเนาเอาไฟล์คอนฟิกจาก /usr/local/share/mysql ออกมาเอง ซึ่งจะมีไฟล์ตัวอย่างอยู่ 5 ไฟล์ด้วยกัน ดังนี้

เหมาะสำหรับเครื่องที่มีหน่วยความจำ 4 GB , ใช้ innodb อย่างเดียว
/usr/local/share/mysql/my-innodb-heavy-4G.cnf

เหมาะสำหรับเครื่องที่มี หน่วยความจำ 1-2 GB
/usr/local/share/mysql/my-huge.cnf

เหมาะสำหรับเครื่องที่มี หน่วยความจำ 512 MB
/usr/local/share/mysql/my-large.cnf

เหมาะสำหรับเครื่องที่มี หน่วยความจำ 32-64 MB , หรือ 128 MB ถ้ามีเว็บเซิร์ฟเวอร์ด้วย
/usr/local/share/mysql/my-medium.cnf

เหมาะสำหรับเครื่องที่มี หน่วยความจำ น้อยกว่า 64 MB รัน mysql อย่างเดียว
/usr/local/share/mysql/my-small.cnf

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

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

reboot เครื่องใหม่ (เคยทดลองไม่ reboot ไม่สามรถ start mysql ได้แม้จะใช้คำสั่ง rehash ก็ยังไม่ได้งงเหมือนกันครับ)
#shutdown -r now
หรือ
#reboot

จากนั้นก็ใส่พาสเวิร์ดตามต้องการ
#mysqladmin -u root password 'password ที่ต้องการ'

ทดลองเข้าไปใช้ mysql
#mysql -u root -pต่อด้วยพาสเวิร์ด
เช่น
#mysql -u root -p123456

ทำให้รองรับภาษาไทย
ee /etc/my.cnf

หลังจากนั้น เราจะไปแก้ไขไฟล์ /etc/my.cnf โดยเพิ่มเนื้อหาในส่วนต่าง ๆ ดังนี้ ต่อท้าย
[client]
default-character-set=tis620
[mysqld]
default-character-set = tis620
character-set-server = tis620
collation-server = tis620_thai_ci
init_connect = 'set collation_connection = tis620_thai_ci'
init_connect = 'set names tis620'

2.การติดตั้ง Apache Web Server เวอร์ชั่น 2.2


การติดตั้ง Apache Web Server เวอร์ชั่น 2.2

เอกสารอาจารย์กิตติพงษ์ สุวรรณราช




1. ให้เราเข้าไปยังไดเร็กทอรี /usr/ports/www/apache22 แล้วทำการติดตั้ง Apache Web Server ด้วยคำสั่ง make install ดังตัวอย่าง

# cd /usr/ports/www/apache22
# make install clean


2. รอสักครู่โปรแกรมจะเริ่มติดตั้งแล้วจะปรากฏหน้าจอภาพ ถามเกี่ยวกับ Options เสริมของ gettext ในที่นี้ให้เรากดปุ่ม Tab มาที่ OK แล้วกดปุ่ม Enter เพื่อทำงานต่อไป .

รูปที่ 1 ไม่เลือก Options ของ gettext


3. ให้รอจนกว่าระบบปฏิบัติการ FreeBSD จะทำการคอมไฟล์ (Compile) Apache จนเรียบร้อยก็จะปรากฏเครื่องหมาย Prompt (#) อีกครั้ง จากนั้นให้เราทำการปรับแต่ง Apache เพิ่มเติม

# pico /usr/local/etc/apache22/httpd.conf
(การเพิ่มบรรทัดคำสั่งเหล่านี้ ให้ทำการค้นหาบรรทัดคำสั่งเดิม หรือกลุ่มคำที่มีข้อความ คำสั่งคล้าย ๆ กันแล้วขอให้เพิ่มบรรทัดเหล่าเข้าไป หากบรรทัดใดมีเครื่องหมาย # นำหน้า หมายความว่าบรรทัดนั้นไม่มีผลต่อการทำงานของระบบ การค้นหานี้ทำการโดยการพิมพ์ Ctrl+W แล้วพิมพ์ Keyword ที่ต้องการค้นหาลงไป)
DirectoryIndex index.php index.html
AddDefaultCharset tis-620
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

4. การที่เราจะสั่งให้ Apache Web Server ทำงานทุกครั้งที่มีการบูทเครื่องก็สามรถทำได้โดยการเพิ่มคำสั่ง apache22_enable=”YES” ในไฟล์ /etc/rc.conf ดังตัวอย่าง

# pico /etc/rc.conf
(เพิ่มบรรทัดคำสั่ง
apache22_enable=”YES”
inetd_enable="YES" #ถ้าต้องการให้ใช้งาน ssh ได้ ต้องเพิ่มบรรทัดนี้เข้าไปด้วยแล้วแก้ File

#pico /etc/inetd.conf เอาเครื่อง # หน้า ssh ออก
เข้าไปในไฟล์นี

แต่ถ้าเป็น Freebsd 7.0
จะต้องเพิ่มใน

#pico /boot/loader.conf
(เพิ่มบรรทัดคำสั่ง accf_http_load="YES" ข้าไปในไฟล์)


1.การ upgrade ports ก่อนการติดตั้ง Apache mysql php

การ upgrade ports ก่อนการติดตั้ง Apache mysql php เพื่อให้ได้โปรแกรมใหม่สุดในการติดตั้ง
อันดับแรกติดตั้ง cvsup ก่อนเลย
#cd /usr/ports/net/cvsup-without-gui
#make install && make clean
#rehash

หรือใช้คำสั่งนี้ก็ได้เช่นกัน (แนะนำ)
#pkg_add -r cvsup-without-gui
#rehash

ทำการ synchronize ports index กับ cvsup server
# /usr/local/bin/cvsup -g -L 2 -h cvsup.freebsd.org /usr/share/examples/cvsup/ports-supfile
รอจนกว่าจะติดตั้งเสร็จ

ติดตั้ง portupgrade
#cd /usr/ports/sysutils/portupgrade
#make install && make clean

ทำการอัพเดท ports database
#/usr/local/sbin/portsdb -Uu

ทำการ auto fix package database
#/usr/local/sbin/pkgdb -aF

ค้นหาซอฟท์แวร์ต่างๆที่เคยถูกติดตั้งแล้วใน ports เพื่อทำการอัพเดท จะว่าไปแล้วข้อนี้ไม่ต้องทำก็ได้เพราะพึ่งจะติดตั้ง freebsd ใหม่
#/usr/local/sbin/portversion -L "<"

รีบูตเครื่องใหม่
#shutdown -r now

TIPS: การเซต Apache , PHP , MySQL เพื่อรองรับกับ UTF-8

เราจะต้องปรับไฟล์ config เหล่านี้ครับ

httpd.conf: =============

AddCharset UTF-8 .utf8
AddDefaultCharset UTF-8

php.ini ===============

default_charset = "utf-8"

my.cnf ================

character-set-server=utf8
default-collation=utf8_unicode_ci

3.การติดตัง mysql ให้รองรับ ภาษาไทย

ถ้าติดตั้ง mysql อยู่แล้ว ถ้าต้องการที่ จะ remove ออกจากเครื่องให้ทำตามนี้

cd /usr/ports/databases/mysql50-server/
make deinstall clean

cd /usr/ports/databases/mysql50-client/
make deinstall clean

cd /usr/ports/databases/mysql50-scripts/
make deinstall clean
killall mysqld
rehash

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 WITH_PROC_SCOPE_PTH=yes install clean

เพื่อให้การทำงานของ mysql server มีประสิทธิภาพมากที่สุด ก็เลือกไฟล์คอนฟิกให้เหมาะสมกับเครื่องเรา ปกติ mysql จะใช้ไฟล์คอนฟิกชื่อ /etc/my.cnf แต่ในขณะที่ติดตั้ง mysql เสร็จใหม่ๆจะไม่มีไฟล์นี้ให้ เราจะต้องสำเนาเอาไฟล์คอนฟิกจาก /usr/local/share/mysql ออกมาเอง ซึ่งจะมีไฟล์ตัวอย่างอยู่ 5 ไฟล์ด้วยกัน ดังนี้

เหมาะสำหรับเครื่องที่มีหน่วยความจำ 4 GB , ใช้ innodb อย่างเดียว
/usr/local/share/mysql/my-innodb-heavy-4G.cnf

เหมาะสำหรับเครื่องที่มี หน่วยความจำ 1-2 GB
/usr/local/share/mysql/my-huge.cnf

เหมาะสำหรับเครื่องที่มี หน่วยความจำ 512 MB
/usr/local/share/mysql/my-large.cnf

เหมาะสำหรับเครื่องที่มี หน่วยความจำ 32-64 MB , หรือ 128 MB ถ้ามีเว็บเซิร์ฟเวอร์ด้วย
/usr/local/share/mysql/my-medium.cnf

เหมาะสำหรับเครื่องที่มี หน่วยความจำ น้อยกว่า 64 MB รัน mysql อย่างเดียว
/usr/local/share/mysql/my-small.cnf

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

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

reboot เครื่องใหม่ (เคยทดลองไม่ reboot ไม่สามรถ start mysql ได้แม้จะใช้คำสั่ง rehash ก็ยังไม่ได้งงเหมือนกันครับ)
#shutdown -r now
หรือ
#reboot

จากนั้นก็ใส่พาสเวิร์ดตามต้องการ
#mysqladmin -u root password 'password ที่ต้องการ'

ทดลองเข้าไปใช้ mysql
#mysql -u root -pต่อด้วยพาสเวิร์ด
เช่น
#mysql -u root -p123456


ทำให้รองรับภาษาไทย

ee /etc/my.cnf
หลังจากนั้น เราจะไปแก้ไขไฟล์ /etc/my.cnf โดยเพิ่มเนื้อหาในส่วนต่าง ๆ ดังนี้ ต่อท้าย
[client]
default-character-set=tis620
[mysqld]
default-character-set = tis620
character-set-server = tis620
collation-server = tis620_thai_ci
init_connect = 'set collation_connection = tis620_thai_ci'
init_connect = 'set names tis620'

วันอังคารที่ 16 มิถุนายน พ.ศ. 2552

1.Install Windows Server 2003, Standard Edition

บทความนี้เจ้าได้แต่ใดมา
โดย นายสันติ สุขยานันท์
นายนคร บริพนธ์มงคล

สำนักคอมพิวเตอร์ มหาวิทยาลัยศรีนครินทรวิโรฒ


การติดตั้งระบบปฏิบัติการ
Windows Server 2003, Standard Edition
ระบบปฏิบัติการ Windows Server 2003 เป็นระบบปฏิบัติการที่ออกแบบและพัฒนาขึ้นเพื่อรองรับการให้บริการ(Services) ต่างๆ กับผู้ใช้มากมาย ไม่ว่าจะเป็นบริการผ่านทางอินเทอร์เน็ต (Internet) หรืออินทราเน็ต (Intranet) เช่น บริการไฟล์แชร์ (File Server) บริการเว็บไซต์ (Web Server) บริการควบคุมเครื่องพิมพ์ (Print Server) บริการฐานข้อมูลไดเร็กทรอรี่ (Directory Server) นอกจากนี้ยังมีบริการอีกมากมายที่ไม่ได้กล่าวถึงในที่นี้ และสามารถตรวจสอบได้จาก http://www.microsoft.com ซึ่งระบบปฏิบัติการ Windows Server 2003 ต้องมีความแข็งแกร่งเพียงพอที่จะรองรับงานเชิง ธุรกิจและรับแอปพลิเคชั่น (Application) ใหญ่ๆ ได้ โดยมีแนวคิดหลักของระบบปฏิบัติการดังนี้
• Extensibility ตัวระบบมีความยืดหยุ่น ง่ายต่อการเพิ่มขยาย เพื่อรองรับความต้องการในอนาคตของผู้ใช้งานได้

• Portability สามารถเคลื่อนย้ายไปทำงานในแพลตฟอร์มของโปรเซสเซอร์อื่นได้
• Multiprocessing and Scalability แอปพลิเคชั่นที่ทำงานภายใต้ Windows Server 2003 ต้องสามารถใช้
ประโยชน์จากเครื่องคอมพิวเตอร์ที่มีหลายโปรเซสเซอร์ได้อย่างเต็มประสิทธิภาพ
• Reliability and Robustness ระบบปฏิบัติการมีเสถียรภาพสูง สามารถป้องกันข้อผิดพลาดอันเกิดจาก
กระบวนการภายในและจากแอปพลิเคชั่นภายนอกได้ ระบบจะต้องอยู่ในสถานะที่สามารถควบคุมได้
ตลอดเวลา หากเกิดข้อผิดพลาดขึ้นระบบต้องสามารถรายงานได้อย่างถูกต้อง และความผิดพลาดของ
แอปพลิเคชั่นจะต้องไม่มีผลต่อการทำงานของระบบปฏิบัติการโดยรวม นอกจากนี้ระบบปฏิบัติการยังต้องมี
อำนาจเต็มที่ในการควบคุมแอปพลิเคชั่น อันได้แก่ การสั่งหยุดแอปพลิเคชั่นที่ทำให้เกิดปัญหาต่อระบบ
และสามารถเรียกคืนทรัพยากรระบบทั้งหมด เช่น หน่วยความจำให้กลับมาคืนสู่ระบบได้
• Security มีระบบรักษาความปลอดภัยที่ดี ระบบต้องสามารถตรวจสอบผู้ใช้ก่อนเข้าใช้งานระบบได้ รวมทั้ง
ติดตามการใช้งานของผู้ใช้ได้ และสามารถกำหนดสิทธิต่างๆ ในการใช้งานทรัพยากรของระบบได้
• Performance ตัวระบบต้องทำงานได้ในความเร็วสูงสุดเท่าที่ทำได้ในแพลตฟอร์มทางฮาร์ดแวร์ที่มีอยู่

test windwos

test2