บทความ

กำลังแสดงโพสต์จาก 2010

การ Mounting Disks บน Linux

บนระบบปฏิบัติการ Linux จะไม่ทำการ Mount หรือค้นหา Device ให้โดยอัตโนมัติจะต้องใช้คำสั่งในการค้นหาเอง โดยเฉพาะอย่างยิ่งผู้ที่ดูแลระบบจำเป็นต้องรู้วิธีการ Mount และการเชื่อมต่อกัน Storages อื่นภายนอก เช่น เมื่อเสียบ USB Thumb Drive เข้าไป จะต้องใช้คำสั่งในการเข้าถึงตัวอุปกรณ์เอง คำสั่งที่ใช้คือ mount โดยมีรูปแบบของการใช้คำสั่งดังนี้ mount /what /where ส่วนของ /what ให้ระบุชื่อของ Device และ /where ให้ระบุตำแหน่งของไดเร็คทรอรี่ ในความเป็จริงจะ mount ไว้ตำแหน่งไหนก็ได้ แต่ก็ไม่ควร mount ไว้ในพาร์ทที่สำคัญอย่างเช่น /usr เป็นต้น ซึ่งจะไม่สามารถสร้าง temp files ได้ แต่อย่างไรก็ตามจะมีอยู่สองพาร์ทที่เป็นค่า Default mount point ส่วนแรกก็คือ /mnt จุดนี้จะเป็นการสร้างเพื่อใช้ในชั่วคราวเท่านนั้น เช่น อาจจะใช้ในการทดสอบการ mount อุปกรณ์ เป็นต้น ส่วนที่สองคือ /media เป็นที่ที่ใช้ mount เพื่อเรียกใช้งานบ่อยๆ และคุณสามารถที่จะ mount อุปกรณ์ CD และ DVD ในพาร์ทนี้ก็ได้โดยใช้คำสั่ง mount /dev/cdrom /media นอกจากการใช้คำสั่ง mount เพื่อเข้าถึงอุปกรณ์ CD และ DVD แล้ว การแชร์ผ่านระบบเครือข่ายก็สาม

การติดต่อกับผู้ใช้บน Linux ด้วย Command Line

จากการใช้คำสั่ง Linux ในข้างต้นก็มี option ของคำสั่งสามารถนำมาใช้งานได้ดี บางคำสั่งก็สามารถติดต่อสื่อสารกันได้แบบ real time คล้ายกับการ chat หรือบางคำสั่งก็ใช้ในการส่งอีเมลได้ การติดต่อสื่อสารแบบ real time บนระบบปฎิบัติการ Linux มี option อยุ่สองแบบในการติดต่อสื่อสารแบบ real time โดยจะมีคำสั่ง write ในการติดต่อสื่อสารกับแต่ละคน แต่ถ้าต้องการส่งข้อความถึงทุกคนก็สามารถใช้คำสั่ง wall(write all) แต่ถ้าผู้รับไม่ต้องการรับข้อความจากผู้อื่นก็สามารถปิดได้โดยใช้คำสั่ง mesg [on/off] เพื่อเลือกเปิดและปิดการรับข้อความ การใช้คำสั่ง write มีรูปแบบในการใช้งานคือ write (ชื่อผู้ที่จะติดต่อ) คำสั่งนี้จะเป็นการติดต่อกันระหว่างสองคนเท่านั้น เช่น ต้องการติดต่อกับ chaiwat ก็ใช้คำสั่ง write chaiwat หลังจากใช้คำสั่งนี้ก็จะมีการสร้าง session ขึ้นเป็นการติดต่อระหว่างผู้ใช้สองคน ตัวอย่างการใช้งานเช่น root ติดต่อสื่อสารกับ chaiwat ผู้เข้าใช้ทั้งสองต้องใช้คำสั่ง write ทั้งคู่ [root@web-server ~]# write chaiwat Message from chaiwat@web-server on pts/0 at 21:48 ... Hi, chaiwat Hi, root [chaiwat@web-server ~]$ M

การดูประวัติการเข้าใช้งานของ Users บน Linux

การใช้งานระบบปฎิบัติการ Linux ในกรณีที่หนึ่งเครื่องเปิดให้ผู้ใช้ใช้งานได้มากกว่าหนึ่งหรือเป็นเครื่อง Server แล้วมีการสร้างผู้ใช้หรือกลุ่มงานในการล็อกอินเข้าใช้ ระบบปฎิบัติการ Linux มีคำสั่งให้เราสามารถดูรายละเอียดเกี่ยวกับผู้ใช้ที่เข้ามาใช้งานระบบหรือดูว่าในระบบปฎิบัติการนี้มีผู้ใช้ใดบ้างที่อยู่ในเครื่อง โดยใช้คำสั่ง users คำสั่งนี้จะแสดงรายละเอียดอย่างสั้นของผู้ที่ล็อกอินเข้าใช้งานระบบทั้งหมด [root@web-server ~]# users chaiwat root root [root@web-server ~]# ถ้าต้องการแสดงรายละเอียดมากกว่านี้จะมีคำสั่งที่ดีกว่าคือคำสั่ง who โดยจะบอกรายละเอียดเวลาการเข้าใช้ระบบ หมายเลขไอพีหรือชื่อเครื่องที่ใช้ในการรีโหมดเข้าใช้ [root@web-server ~]# who root tty1 2010-05-28 17:57 chaiwat tty2 2010-05-28 21:27 root pts/0 2010-05-28 21:25 (tong-pc.lan) [root@web-server ~]# ถ้าต้องการดูรายละเอียดว่าผู้ใช้เข้ามาทำอะไรระยะเวลาเท่าไร เรียกใช้โปรแกรมอะไรบ้างจะใช้คำสั่ง w ในการเรียกดูรายละเอียด

การเปลี่ยนรหัสผ่านบน Linux

การเข้าใช้งานบนระบปฎิบัติการ Linux นั้นส่วนมากจะต้องมีการกำหนดรหัสผ่านของผู้ใช้โดยเฉพาะผู้ที่ดูแลระบบ สำหรับผู้ใช้ก็เหมือนกันควรจะมีการกำหนดรหัสผ่านของแต่ละคนด้วย การกำหนดรหัสผ่านที่ดีและยากต่อการคาดเดาเพื่อป้องกันการลักลอบเข้าระบบจากผู้ไม่หวังดีมีหลักการง่ายๆดังนี้ - ตั้งรหัสผ่านให้มีความยาวอย่างน้อย 6 ตัวอักษร - ควรมีการผสมกันระหว่าง ตัวอักษร ตัวเลข อักษรพิเศษ(เช่น + - % * > < เป็นต้น) หรือสิ่งที่ยากต่อการคาดเดา - ใช้ตัวอักษรแบบตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก ผสมกัน - คำที่ใช้ตั้งไม่ควรมีอยูในพจนานุกรม(Dictionary) การเปลี่ยนรหัสผ่านของผู้ใช้ก็เป็นการป้องกันการลักลอบเข้าระบบได้เช่นกัน การเปลี่ยนรหัสผ่านบนระบบปฎิบัติการ Linux นั้นทำได้ง่ายโดยใช้คำสั่ง passwd โดยเมื่อใช้คำสั่งในครั้งแรกนั้นระบบจะให้ใส่รหัสผ่าน และครั้งที่สองจะให้ใส่รหัสผ่านอีกครั้งเพื่อยืนยัน [root@web-server ~]# passwd Changing password for user root. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. [root@web-server ~]# ถ้าเข้าใช้ระบบปฎิบัติการด้วย root สามารถใช้คำสั

ลักษณะคำสั่งบน Linux

ลักษณะคำสั่งโดยทั่วไปที่ใช้บนระบบปฎิบัติการ Linux นั้นจะประกอบไปด้วยสามส่วนคือ command, option และ argument จะขอยกตัวอย่างจากคำสั่งพื้นฐานคือ คำสั่ง ls จะใช้สำหรับการแสดงไฟล์บนระบบ linux คำสั่ง ls เปรียบเช่นเดียวกับคำสั่ง dir บนระบบปฎิบัติการ Windows การใช้คำสั่ง ls โดยไม่มี option ใดๆจะเป็นการแสดงเฉพาะชื่อของไฟล์และโฟลเดอร์ในตำแหน่งนั้นๆ [root@web-server ~]# ls anaconda-ks.cfg imlog install.log wget-log cacti-0.8.7e.tar.gz imlog-detect install.log.syslog [root@web-server ~]# คำสั่งในระบบ Linux ส่วนมากจะมี Option เพิ่มเติมเพื่อที่เลือกข้อมูลที่ตรงตามความต้องการของผู้ใช้ เหมือนกับตัวอย่างข้างต้นจะแสดงเฉพาะชื่อไฟล์และโฟลเดอร์เท่านั้นแต่ถ้าต้องการแสดงรายละเอียดต่างๆจะต้องมี Option เพิ่มคือ –l การใช้คำสั่ง ls โดยเพิ่ม option –l จะแสดงรายละเอียดเพิ่มเติมของไฟล์และโฟลเดอร์ดังนี้ [root@web-server ~]# ls -l total 2372 -rw------- 1 root root 932 Apr 15 09:06 anaconda-ks.cfg -rw-r--r-- 1 root root 2232297 Jun 29 2009 cacti-0.8.7e.tar.gz -rwxr-xr-x 1 root root 12999

config Samba Authentication by apache

เริ่มติดตั้งใช้คำสั่ง yum install samba –y จากนั้นแก้ไขไฟล์ที่ /etc/samba/smb.conf ส่วนที่เพิ่มเข้าไปมีดังนี้ครับ [ download] comment = share folder path = /var/www/html/download valid users = @users force group = users create mask = 0777 directory mask = 0771 writable = yes log file = /export/logs/samba/samba.log.%m สร้างโฟลเดอร์โดยใช้คำสั่ง mkdir –p /var/www/html/download สร้างผู้ใช้ และกำหนดรหัสผ่านสำหรับ samba adduser user1 smbpasswd –a Password ; ตรงนี้ให้ใส่รหัสผ่านเหมือนกันสองครั้งครับ กำหนดกลุ่มผู้ใช้และสิทธิให้กลุ่ม users chown -R root:users /var/www/html/download chmod -R 777 /var/www/html/download กำหนดให้ samba ทำงานเมื่อเปิดเครื่อง chkconfig smb on จากนั้นสั่ง restart service ใหม่ service smb restart จากนั้นทดสอบ โดยไปที่ Start --> Run \\Your-IP Address or Domain จะปรากฎโฟลเดอร์ download ขึ้น ครับ อ้อ ก่อนหน้านี้ต้อง login ด้วยนะครับ โดยใช้ us

การคอนฟิก rsyslog server and rsyslog client

การคอนฟิก rsyslog server การทำ rsyslog server จะต้องคอนฟิกให้ rsyslog รอรับข้อมูลจาก log ที่จะส่งมาจากเครื่องบริการต่างๆ โดยกำหนดที่ /etc/sysconfig/rsyslog ; กำหนด – r เพื่อรอรับ logging จากเครื่องอื่น ; กำหนด – t เพื่อระบุเป็น TCP และพอร์ท 514 SYSLOGD_OPTIONS="-r -m 0 -t 514" จากนั้นใช้คำสั่ง service rsyslog restart เพื่อเริ่มการทำงานของโปรแกรมใหม่ เมื่อมีการส่งข้อมูล log เข้ามายัง log server แล้วต้องำกหนดพาทที่จะจัดเก็บโดยกำหนดที่ไฟล์ /etc/rsyslog.conf ดังตัวอย่างต่อไปนี้ #web log ; กำหนดให้เมื่อมีการส่ง log ของเว็บมาให้เก็บที่ /log/web/access.log local 6. info /log/web/access.log #squid ; กำหนดให้เมื่อมีการส่ง log ของ squid มาให้เก็บที่ /log/squid/access.log local 5.* / log/squid/access.log ทดสอบการทำงานโดยใช้คำสั่ง logger -p

การติดตั้ง rsyslog

การติดตั้ง rsyslog ระบบปฎิบัติการ CentOS 5.x นั้นได้มีแพกเก็จของโปรแกรมที่สามารถติดตั้งได้ง่ายก่อนอื่นแนะนำให้หยุดการทำงานของ syslog เดิมก่อนด้วยคำสั่ง Service syslog stop และ chkconfig syslog off การติดตั้ง rsyslog ต้องให้แน่ใจว่าได้ทำการเชื่อมต่อระบบอินเตอร์เน็ตแล้วจากนั้นสามารถติดตั้งได้โดยการใช้คำสั่ง yum install rsyslog –y chkconfig rsyslog on ทำการเริ่มการทำงานด้วยคำสั่ง service rsyslog start

การจัดเก็บ log ของ Web

การจัดเก็บ log ของ Web การจัดเก็บ log ของเว็บไซด์ในตัวอย่างการจัดเก็บ log นี้ได้จำลองการให้บริการเว็บไซด์โดยใช้ Apache บนระบบปฏิบัติการ CentOS 5.4 โดยจะเก็บไว้ที่ /log/web/access_log ขั้นตอนแรกให้เลือก Facility ในส่วนของ local0 – local7 แล้วกำหนดลงไปใน /etc/rsyslog.conf ดังตัวอย่างจะเลือก local6 เป็น local messages ในการจัดเก็บ access_log ของ Apache ดังนี้ vi /etc/rsyslog.config ; สร้างพาทโดยใช้คำสั่ง mkdir –p /log/web/ ; สร้างไฟล์โดยใช้คำสั่ง touch /log/web/apache_log ; กำหนดการส่งข้อมูล log ผ่าน local6 ใช้ action เป็น info เพื่อเก็บข้อมูลทั่วไป #web log local6.info /log/web/access_log หรือส่งไปยัง log server local6.info @(ip log server):(port) ; เริ่มต้น service ใหม่ด้วยคำสั่ง service rsyslog restart ส่วนของ Apache นั้นต้องเขียน script เพิ่มเพราะว่า access logs มีลักษณะเป็นแบบ bit trickier ไม่มี Function การส่ง access_log โดยตรงแต่สามารถส่งผ่านในลักษณะของ pipe ได้ด้วยการเขียน script ในตั