ติว “DHCP for IPv6 (DHCPv6)”

Workshop Lab guide dhcpv6 https://sharedrive.psu.ac.th/public.php?service=files&t=d101ba43953c1a7c493b0d507db3b333 กิจกรรมของ CoP PSU sysadmin ของเราในลำดับต่อไป ติว “DHCP for IPv6 (DHCPv6)” วันที่ 31 พ.ค. 56 เวลา 09.00 – 16.00 น. ที่ห้อง 107 อาคารศูนย์คอมพิวเตอร์ ม.อ.หาดใหญ่ เพื่อให้ความรู้ความเข้าใจในการจัดการระบบเครือข่ายสำหรับรองรับการใช้งาน IPv6 และฝึกปฏิบัติการติดตั้ง DHCPv6 สำหรับหน่วยงาน รายละเอียดหัวข้อติว 9.00-10.15น. IPv6 Overview -IPv6 Addressing -IPv6 Address Allocations -IPv6 Header Types, Formats, and Fields -IPv6 Extension Headers -Internet Control Message Protocol for IPv6 (ICMPv6) -IPv6 and Routing -IPv6 and the Domain Name System (DNS) 10.30-12.00น. Dynamic Host Configuration Protocol (DHCP) for IPv6 -Specification Overview -Difference from IPv4 Standards -Security Ramifications -Unknown Aspects 13.00-16.00น. ทำ LAB ติดตั้งและคอนฟิก DHCPv6 บน Ubuntu วิทยากร 1. พรพิทักษ์ สันติภาพถาวร ศูนย์คอมพิวเตอร์ ผู้ช่วยวิทยากร 2. โกศล โภคาอนนท์ ศูนย์คอมพิวเตอร์ หากท่านสนใจรีบแจ้งอีเมลมาที่ผมโดยตรง ( wiboon.w@psu.ac.th ) หรือทางเฟสบุ๊คของกลุ่ม และผมจะนำรายชื่อมาใส่ไว้ด้านล่างของบล็อกนี้ รายชื่อผู้เข้าร่วม วิบูลย์ วราสิทธิชัย ศูนย์คอมพิวเตอร์ วิศิษฐ โชติอุทยางกูร คณะทันตแพทยศาสตร์ (อาหารมังสวิรัติ) สุนิสา จุลรัตน์ สถาบันสันติศึกษา ก้องชนก ทองพรัด กองบริการการศึกษา สำนักงานอธิการบดี ชัยวัฒน์  ศรีจันทร์กุล คณะวิทยาการจัดการ ฉัตรชัย จันทร์พริ้ม ภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ อาทิตย์ อรุณศิวกุล คณะศิลปศาสตร์ สุนทรี นภิบาล ศูนย์คอมพิวเตอร์ นิติ โชติแก้ว คณะการแพทย์แผนไทย จรัล บูลวิบูรณ์ คณะศิลปศาตร์ ประทีป โคตัน ศูนย์คอมพิวเตอร์ ศิริพงษ์ ศิริวรรณ คณะเภสัชศาสตร์ ศุภกร  เพ็ชรรัตน์ คณะทันตแพทยศาสตร์ ทิพาพร พัฒนศิริ ศูนย์คอมพิวเตอร์ หฤทัย สมบูรณ์รุ่งโรจน์ ศูนย์คอมพิวเตอร์ คณกรณ์ หอศิริธรรม ศูนย์คอมพิวเตอร์ เกรียงไกร หนูทองคำ ศูนย์คอมพิวเตอร์ สาวิตรี วงษ์นุ่น คณะมนุษยศาสตร์และสังคมศาสตร์ ลักขณา ฉุ้นทิ้ง คณะมนุษยศาสตร์และสังคมศาสตร์ สงกรานต์ มุณีแนม ศูนย์คอมพิวเตอร์ ยุวภา โฆสกิตติกุล คณะทรัพยากรธรรมชาติ นวพล เทพนรินทร์ ศูนย์คอมพิวเตอร์ ณัฏฐิกา หัตถกรรม ศูนย์คอมพิวเตอร์ ภูเมศ จารุพันธ์ คณะพยาบาลศาสตร์ กฤตกร อินแพง คณะพยาบาลศาสตร์ พงศ์กานต์ กาลสงค์ คณะแพทยศาสตร์ บัณฑิต ชนะถาวร คณะทันตแพทยศาสตร์ เอกภพ ถาวรจิตร สำนักทรัพยากรการเรียนรู้คุณหญิงหลงฯ (อาหารมังสวิรัติ) กิตติพัฒน์ อุบลกาญจน์

Read More »

Check previous running script using process id

วันนี้ในกลุ่ม sysadmin บน facebook คุยกันเรื่องของ ubuntu mirror ของ PSU แล้วมีประเด็นของการใช้ script สำหรับการ mirror ตัว script ที่ว่านี้ จะเป็น shell script ธรรมดา ที่จะไปเรียกใช้โปรแกรม rsync ที่จะทำหน้าที่ mirror ข้อมูลจาก primary ftp/rsync site ของ ubuntu มาเก็บไว้ที่เครื่อง server ของ PSU ตัว script จะถูกเรียกใช้โดย cron กำหนดไว้ใน crontab และเรียกใช้ 4-6 ครั้งใน 1 วัน (หรือ run ทุกๆ 6 หรือ 4 ชั่วโมง) ระยะเวลาที่ใช้ในการ run script ไม่แน่นอนว่าจะใช้เวลาเท่าไหร่ ขึ้นอยู่กับปริมาณของข้อมูลที่จะต้อง mirror จากต้นทางมายังปลายทาง ถึงแม้ว่าการใช้ rsync จะช่วยให้ transfer เฉพาะไฟล์ ที่มีการเปลี่ยนแปลงไป หลังจากการ mirror ครั้งสุดท้ายมา แต่ในบางครั้งจำนวนของข้อมูลที่เปลี่ยนแปลงไป ก็อาจจะมากกว่าปกติ เช่นในช่วงเวลาที่มีการเปลี่ยน release ซึ่งทำให้มีไฟล์ใหม่ๆ เพิ่มขึ้นเป็นจำนวนมาก ทำให้ จากช่วงปกติ ซึ่งอาจจะใช้เวลาเพียง 1-2 ชม. ในการ mirror และ mirror ทุกๆ 4 ชม. ก็เพียงพอ ในช่วงเวลาของการปรับเปลี่ยน release ถ้าจะ mirror ให้เสร็จ ก็อาจจะใช้เวลาถึง 12 ชม. เป็นต้น จะเกิดอะไรขึ้น ถ้าในการ mirror ครั้งที่แล้ว ยังไม่เสร็จสิ้นสมบูรณ์ แล้วก็ถึงเวลาของการ mirror รอบถัดไป? ถ้าไม่มีการตรวจสอบใดๆเลย กระบวนการของการ mirror ในครั้งถัดมาก็จะเริ่มทำงาน ในขณะที่รอบแรกยังไม่เสร็จ และ ถ้ามีข้อมูลที่ถูกเปลี่ยนแปลงมากจริงๆ ถึงรอบที่ 4-5 ของการ mirror แล้ว … การ mirror ครั้งแรกก็ยังไม่เสร็จเรียบร้อยดี … และพอถึงขั้นนี้แล้ว ระบบจะมีภาระงานสะสมมากขึ้นเรื่อยๆ และระบบเริ่มช้าลง และ จำนวน process ของการ mirror ที่คั้งค้างอยู่ก็จะเพิ่มขึ้นเรื่อยๆ เพราะ process หลังๆ ก็จะไปหน่วงการทำงานของ process แรกๆให้ทำงานช้าลงไปด้วย ครั้งแรกที่ผมเจอปัญหาในลักษณะนี้ process ของการ mirror ที่ run ค้างอยู่ทำให้ load ของระบบสูงกว่า 100 โชคยังดีที่ load ที่สูงขึ้นเกิดจาก i/o ของการเขียน disk ซึ่งยังทำให้สามารถ secure shell เข้าไปได้ สามารถ run คำสั่ง ps auxw เพื่อตรวจสอบได้ ถึงแม้จะช้าอยู่มาก แต่ก็ทำให้ทราบว่าปัญหาเกิดจากอะไร และเอาข้อมูลนั้นมาแก้ไขปัญหาในภายหลังได้ สำหรับปัญหาแบบนี้ วิธีการแก้ไข ก็ไม่ได้ยากอะไร การทำงานของ mirror process ในครั้งหลังที่ถูก start ขึ้นมาด้วย cron ไม่ควรที่จะทำงานต่อ ถ้า process แรกที่ทำงานอยู่ ยังทำงานไม่เสร็จ ควรที่จะปล่อยให้ process แรกทำงานให้เสร็จเท่านั้นเอง ในแง่ของ shell script ก็สามารถทำได้ โดยการใช้ lock file ก่อนที่จะเริ่มต้นทำงาน ก็ตรวจสอบดูก่อนว่า มี lock file อยู่หรือเปล่า ถ้ามี ก็แสดงว่ายังมี process เดิมทำงานอยู่

Read More »

How to list linux file permissions in Octal Notation

วันนี้เนื่องจากทีมผู้ดูแล  Web Hosting ต้องการดูว่ามีไฟล์ไหนบ้างที่มี permission เป็น 777 ก็เลยนั่งหาดูพบว่า สามารถใช้คำสั่ง stat ในการดูได้ เช่น $stat -c “%a %n” /var/www ผลลัพธ์ หรือ $stat -c “%A (%a) %8s %.19y %n” /var/www ผลลัพธ์ ทั้งนี้เนื่องจากไม่สามารถทำให้มัน recursive ได้ ก็ต้องหาไปทีละโฟลเดอร์ …. จนกระทั่งเจออีกคำสั่ง คือ สร้าง alias ชื่อ lso ดังนี้ $alias lso=”ls -alG | awk ‘{k=0;for(i=0;i<=8;i++)k+=((substr(\$1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf(\” %0o \”,k);print}'” เมื่อจะใช้งาน ก็เพียงสั่ง lso ที่คอมมานด์ไลน์ ผลลัพธ์ สามารถปรับ option ของ ls ใน alias ให้ recursive ได้โดยเพิ่ม R ตัวใหญ่ลงไป ดังนี้ $alias lso=”ls -alGR | awk ‘{k=0;for(i=0;i<=8;i++)k+=((substr(\$1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf(\” %0o \”,k);print}'” เมื่อเรียกใช้จะได้ผลลัพธ์ สามารถใช้ร่วมกับ grep เพื่อค้นหาเฉพาะค่าที่ต้องการ เช่น $lso|grep ” ^777″ ผลลัพธ์ ก็พอจะช่วยได้บ้างครับ ขอให้สนุกครับ ที่มา http://thenubbyadmin.com/2012/02/16/how-to-list-linux-file-permissions-in-octal-notation/ http://askubuntu.com/questions/152001/how-can-i-get-octal-file-permissions-from-command-line

Read More »

แนวทางการ Backup บน Ubuntu Server (กรณีระบบ PSU EMail) #2

ขยายความต่อจาก แนวทางการ Backup บน Ubuntu Server (กรณีระบบ PSU EMail) ลองมาดูทีละขั้นตอน 1. ใน directory username.s มีไฟล์ดังนี้ $ ls -l username.s total 0 -rw-rw-r– 1 mama mama 0 2013-04-29 14:31 a.txt -rw-rw-r– 1 mama mama 0 2013-04-29 14:31 b.txt -rw-rw-r– 1 mama mama 0 2013-04-29 14:31 c.txt -rw-rw-r– 1 mama mama 0 2013-04-29 14:31 d.txt -rw-rw-r– 1 mama mama 0 2013-04-29 14:31 e.txt 2. ใช้คำสั่งต่อไปนี้ เพื่อทำการ Full Backup tar -zcf username.s-full.tar.gz -g username.s.snar username.s ดูไฟล์ใน username.s-full-tar.gz ด้วยคำสั่ง tar -ztf username.s-full.tar.gz -g username.s.snar username.s จะมีไฟล์ดังนี้ username.s/ username.s/a.txt username.s/b.txt username.s/c.txt username.s/d.txt username.s/e.txt 3. ต่อมามีไฟล์เกิดใหม่ 2 ไฟล์ ชื่อ f.txt, g.txt 4. เมื่อถึงเวลา ระบบทำการ Incremental Backup ด้วยคำสั่ง tar -zcf username.s-i01.tar.gz -g username.s.snar username.s ดูไฟล์ใน username.s-i01-tar.gz ด้วยคำสั่ง tar -ztf username.s-i01.tar.gz -g username.s.snar username.s จะมีไฟล์ดังนี้ username.s/ username.s/f.txt username.s/g.txt 5. ลบไฟล์ c.txt, e.txt และมีไฟล์ h.txt เกิดขึ้น 6. เมื่อถึงเวลา ระบบทำการ Incremental Backup ด้วยคำสั่ง tar -zcf username.s-i02.tar.gz -g username.s.snar username.s ดูไฟล์ใน username.s-i02-tar.gz ด้วยคำสั่ง tar -ztf username.s-i02.tar.gz -g username.s.snar username.s จะมีไฟล์ดังนี้ username.s/ username.s/h.txt 7. (ในระบบ Email ไม่มีเหตุการณ์นี้ แต่ทำให้ดูเป็นตัวอย่าง) ถ้ามีการแก้ไขไฟล์ a.txt ซึ่งเดิมเป็นไฟล์ว่างๆ แต่ต่อมา มีการแก้ไขไฟล์ โดยเพิ่มคำว่า “hello world” เข้าไป echo “hello world” > username.s/a.txt 8. เมื่อถึงเวลา ระบบทำการ Incremental Backup ด้วยคำสั่ง tar -zcf username.s-i03.tar.gz -g username.s.snar username.s ดูไฟล์ใน username.s-i03-tar.gz ด้วยคำสั่ง tar -ztf username.s-i03.tar.gz -g username.s.snar username.s จะมีไฟล์ดังนี้ username.s/ username.s/a.txt หวังว่าจะเป็นประโยชน์ครับ

Read More »

How to create PSU VPN (L2TP/IPSec) connection Ubuntu 13.04?

* ติดตั้งโปรแกรมชื่อ l2tp-ipsec-vpn ด้วยคำสั่ง $sudo apt-get install l2tp-ipsec-vpn ดังภาพ * ตอบ y * ตอบ No * กด OK * สั่ง reboot เครื่อง * เมื่อบูทเสร็จจะพบว่ามีไอคอนเพิ่มมาบนพาเนล * คลิกซ้ายเลือก Edit Connection * หน้าจอจะมืดลงและมีช่องให้ใส่พาสเวิร์ดของผู้ใช้ลงไปแล้วกด OK * จะได้หน้าจอดังรูป * คลิก Add จะได้หน้าจอดังรูป ใส่ vpn.psu.ac.th ลงไปในช่อง Connection name กด OK * ได้ดังรูป * คลิก Edit กรอกข้อความตามรูป * คลิก PPP เลือกตามรูป ในช่อง Username และ Password ให้ใช้ PSU Passport * คลิก IP setting คลิกเครื่องหมายถูกในช่องสี่เหลี่ยมหน้าข้อความ Obtain DNS server address automatically กด OK * กด OK ออกมาจนสุดคลิก Close คลิก OK * Reboot อีกครั้ง * คลิกที่ไอคอน เลือก vpn.psu.ac.th * เมื่อเชื่อมต่อสำเร็จจะเป็นดังรูป * สำหรับ Linux Mint 15 อาจจะต้องทำคำสั่งนี้ก่อนจึงจะใช้งานได้ sudo apt-add-repository ppa:werner-jaeger/ppa-werner-vpn sudo apt-get update && sudo apt-get install l2tp-ipsec-vpn * ขอให้สนุกครับ ที่มา http://rapidvpn.com/setup-vpn-l2tp-ubuntu.htm

Read More »