Server
Server
20 คำสั่งลินุกซ์ที่แอดมินควรรู้ไว้
มีการรวบรวมคำสั่ง(เครื่องมือ)สำหรับผู้ดูแล server/website ควรรู้เอาไว้ พร้อมทั้งรายละเอียดและตัวอย่างการใช้งาน บางคำสั่งก็สามารถใช้งานได้เลย บางคำสั่งต้องติดตั้งเพิ่มเติม
คำสั่งทั้งหมดคือ
- top - Process Activity Command
- vmstat - System Activity, Hardware and System Information
- w - Find Out Who Is Logged on And What They Are Doing
- uptime - Tell How Long The System Has Been Running
- ps - Displays The Processes
- free - Memory Usage
- iostat - Average CPU Load, Disk Activity
- sar - Collect and Report System Activity
- mpstat - Multiprocessor Usage
- pmap - Process Memory Usage
- netstat - Network Statistics
- ss - Network Statistics
- iptraf - Real-time Network Statistics
- tcpdump - Detailed Network Traffic Analysis
- strace - System Calls
- /Proc file system - Various Kernel Statistics
- Nagios - Server And Network Monitoring
- Cacti - Web-based Monitoring Tool
- KDE System Guard - Real-time Systems Reporting and Graphing
- Gnome System Monitor - Real-time Systems Reporting and Graphing
ดูรายละเอียดการใช้ได้จากที่มานะครับ
ที่มา 20 Linux System Monitoring Tools Every SysAdmin Should Know
Block IP ต่างประเทศ
เพื่อป้องกันปัญหาโดน hack จากต่างประเทศ มีคำแนะนำให้ block การเข้าถึงจากต่างประเทศด้วยการ block IP จากต่างประเทศไม่ให้เข้าใช้บริการบางอย่างเช่น FTP , SSH
วิธีการดูได้จาก ThaiHostTalk นะครับ
ขออนุญาตคุณ icez และ ems นำมาเก็บไว้ก่อนนะครับ แล้วจะหาเวลามานั่งศึกษาดูอีกที
คำสั่งในการย้ายข้อมูลจากโฮสต์อื่น
- ทำสำเนาไฟล์มาก่อน
wget -r --ftp-user=youusername --ftp-password=youpassword --preserve-permissions ftp://ftp.your.domain/your/home/folder/*
- Dump old sql database to file
mysqldump -u sqluser -psqlpassword sqltable > sqlfile.sql
- สำเนาไฟล์ข้อมูลมาจากโฮสต์เดิใ
wget http://domain.name/sqlfile.sql
- dump sql to database
mysql -u username -ppassword database < sqldata.sql
- เปลี่ยนค่า nameserver ของโดเมน
Hosting Control Panel
เพิ่งรู้ว่า Hosting Control Panel นั้นมีมากมายมหาศาลตอนที่เริ่มมี server เป็นของตนเอง ทำให้ต้องตัดสินใจเลือกว่าจะใช้ตัวไหนดี ซึ่งต้องลองดูหลาย ๆ ตัว ปวดหัวมาก ๆๆๆๆๆๆๆๆๆๆ
แบบที่ต้องจ่ายตังส์
แบบฟรี
- ISPConfig
- VHCS
- Raven Core
- GPLHost
- WEB-CP
- WebMin
- BlueQuartz Try a demo
- SysCP Server Management
- Open Panel
- ispCP Omega
เพิ่มเติมนิดหน่อยเป็นความรู้
My Server Planning
ช่วงนี้เป็นช่วงที่ต้องตัดสินใจในเรื่องการตั้ง server ของตนเอง ซึ่งแนวทางล่าสุดคือการซื้อ server สักเครื่องและหาที่วางสักแห่ง งานที่ยากก็คือการติดตั้ง software และ configuration ซึ่งเป็นงานที่ยังไม่เคยทำเลย อาจจะถึงเวลาที่ได้ศึกษาเรื่องนี้อย่างจริงจังเสียที
ลำดับของงานที่ต้องเตรียมการ
- หา server สักเครื่อง
- หาที่ตั้งเครื่อง ซึ่งมีตัวเลือกทั้งที่กรุงเทพ และหาดใหญ่ (หาดใหญ่จะเริ่มใช้งานได้ประมาณกลางเดือนมีนาคม 52)
- ติดตั้ง virtual environment ซึ่งอาจจะใช้ Proxmox VE ที่ดูเหมือนว่าจะติดตั้งง่ายเพราะการกำหนดค่าต่าง ๆ ผ่านหน้าเว็บเสียเป็นส่วนใหญ่ มีวิธีการติดตั้งจาก howtoforge หรือจะเป็น Virtualization With Xen 3.3.1 On Debian Etch ซึ่งดูออกจะยากไปนิด ทุกอย่างอยู่บน command line หมดเลย
- หาเครื่องมาจำลองและติดตั้งเพื่อทดลองศึกษาก่อนใช้งานจริง
- ติดตั้ง control panel
- ตอนนี้กำลังใช้งาน DirectAdmin อยู่ ซึ่งก็ดูน่าใช้งานดี (แต่ต้องซื้อนะ ไม่มีของฟรี)
- เจออีกตัวหนึ่ง เป็น open source คือ ISPConfig ลองดูวิธีการใช้งานแล้ว ก็น่าจะพอใช้งานได้
ย้าย Hosting แต่ต้นปี
มีปัญหาเรื่อง Hosting ตั้งแต่ต้นปี เลยจำเป็นต้องโยกย้ายกันเสียหน่อย
thaisouthtoday.com ->eBoundHost : Process.
khoakmuang.com -> eBoundHost : Moved.
- tambonprik.com -> eBoundHost : Moved.
- tonprik.org -> eBoundHost : Moved.
- songkhlahealth -> AppServ : Moved.
- napradu -> eBoundHost : Moved.
- khaomeekeat.com -> eBoundHost : Moved.
- khlongngae.org -> eBoundHost : Moved.
คงใช้เวลาหลายวันอยู่
Change my life to Ubuntu
ติดตั้ง Ubuntu Desktop ให้เป็น Server (LAMP)
Install Apache
#sudo apt-get install apache2
Enable mod_rewrite
#sudo a2enmod rewrite
เปลี่ยน DocumentRoot ของ apache เป็น folder อื่น และเปิดใช้งาน clean url
#gksudo gedit /etc/apache2/sites-available/default
- เปลี่ยนบรรทัด /var/www/ เป็น /my web folder/ จำนวน 2 ตำแหน่ง
- แก้ค่า AllowOverride ของ /my web folder/ จาก None เป็น AllowOverride All
Install PHP
<a class="hashtag" href="/tags/sudo">#sudo</a> apt-get install php5 libapache2-mod-php5 php5-gd <a class="hashtag" href="/tags/sudo">#sudo</a> /etc/init.d/apache2 restart
Install MySQL
<a class="hashtag" href="/tags/sudo">#sudo</a> apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql phpmyadmin <a class="hashtag" href="/tags/gksudo">#gksudo</a> gedit /etc/php5/apache2/php.ini
add this line extension=mysql.so
#sudo /etc/init.d/apache2 restart
หากมีข้อมูลเก่าของ mysql ก็สามารถ copy มาไว้ที่ /var/lib/mysql แล้ว โดยใช้คำสั่ง
<a class="hashtag" href="/tags/sudo">#sudo</a> cp /media/disk/var/lib/mysql/* /var/lib/mysql/ <a class="hashtag" href="/tags/sudo">#sudo</a> chown -hR mysql /var/lib/mysql/* <a class="hashtag" href="/tags/sudo">#sudo</a> chgrp -hR mysql /var/lib/mysql/*
ทางทีดีคือไปอ่านรายละเอียดจากเว็บต้นฉบับดีกว่าครับ ที่ Installing LAMP On Ubuntu For Newbies
Or from howtoforge.com
#sudo apt-get install apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert
<a class="hashtag" href="/tags/sudo">#sudo</a> apt-get install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-json php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
ติดตั้ง Tahoma font
ถึงยังไงผมก็ยังชอบฟอนท์ Tahoma ของ Windows อยู่ดี ก็เลยต้องหาวิธีติดตั้งฟอนท์ Tahoma บน Ubuntu
เจอบทความ Adding Windows fonts in Linux ทดลองดูแล้ว It's work เลยเอาลิงก์มาเก็บไว้ก่อน
วิธีที่ผมใช้ง่ายนิดเดียว คือ copy fonts Tahoma จาก Windows/Fonts มาใว้ใน folder ./fonts ของ home folder
แล้วก็ทำการติดตั้งฟอนต์ทดแทน เพื่อแก้ปัญหาสระเยื้องใน OOo
ติดตั้ง Extensions ของ Firefox ที่ใช้ประจำ คือ CollorZilla , Download Statusbar , DownThemAll , Firebug , FireGestures , NoScript , ShowIP , Xmarks
Install FileZilla
#sudo apt-get install filezilla
Install thunderbird
#sudo apt-get install thunderbird
Install Geany editor
#sudo apt-get install geany
Upgrade OOo.org 2.3.0
#sudo gedit /etc/apt/sources.list
add 2 lines
deb http://download.thaigrid.or.th/pub/ubuntu/contrib gutsy openoffice.org deb-src http://download.thaigrid.or.th/pub/ubuntu/contrib gutsy openoffice.org
<a class="hashtag" href="/tags/sudo">#sudo</a> apt-get update <a class="hashtag" href="/tags/sudo">#sudo</a> apt-get install openoffice.org
NAS200
Mounting SMB Shares Network share permanently mount samba share
Add this line to file /etc/init.d/module-init-tools
#for Aircard 580 modprobe usbserial vendor=0x1199 product=0x0122 mknod /dev/ttyUSB5 c 188 0 # mount NAS200 modprobe smbfs mkdir /media/nas200
Manual mount nas200 to /media/nas200 is
#sudo mount -t smbfs //192.168.1.2/ /media/nas200 -o username=myusername,password=mypassword,uid=1000,mask=000,iocharset=utf8
Make AirCard button on panel
- Right click on panel -> Add to panel
- Select Custom Application Launcher
- Command : xterm -T "Connect to CDMA" -e pppd call cdma
การติดตั้ง Web server บน Windows XP
นาน ๆ ครั้งที่ผมจำเป็นต้องติดตั้ง Windows ใหม่ แล้วต้องทำให้มันเป็น web server ต้องติดตั้งโปรแกรมอีก 4-5 ตัว ซึ่งทุกครั้งที่ติดตั้งใหม่ ผมจะมั่วทุกทีไป
เมื่อคืนก็เพิ่มติดตั้งไป กว่าจะใช้งานได้ก็ปาเข้าไปเกือบตี 4 เหนื่อย จนบัดนี้ก็ยังกำหนดค่าต่าง ๆ ให้เหมือนเดิมไม่หมดเลย ก็เลยเอาเขียนเป็นบันทึกช่วยจำตัวเองสักหน่อย เผื่อวันหน้าจะต้องทำอีก (ซึ่งก็คงหนีไม่พ้น) จะได้ลดความมั่วลงได้บ้าง