ผมรอ​เป็น​ชั่วโมง​เพื่อ​วาง​ดอกไม้จันทน์​ให้​ในหลวง​ ร.9

วันนี้​ผม​มา​ที่​วัด​โคกสมานคุณ​ เพื่อ​วาง​ดอกไม้​จันทน์​ให้​กับ​ในหลวง​รัชกาล​ที่​ 9

ทั้ง​ๆ​ ที่​ผม​เอง​ก็​ (อันนี้​พูด​แบบ​หยาบ​ๆ) ไม่ได้​เป็น​แฟน​พันธุ์​แท้​ของ​พระองค์​ท่าน​ แต่​ผม​ก็​เลือก​จะ​มา​ต่อ​แถว​เป็น​ชั่วโมง​ๆ Continue reading ผมรอ​เป็น​ชั่วโมง​เพื่อ​วาง​ดอกไม้จันทน์​ให้​ในหลวง​ ร.9

ละครไทย

งั้นแกรนด์ขอถามอีกแค่เรื่องเดียว……วันนั้น พี่นุ่มนิ่มถือกระเป๋าแกรนด์ตลอดเวลาใช่มั้ย?
– แกรนด์ กิรนา ไม่ได้กล่าวไว้
ผมรู้สึกว่าบางทีละครก็โง่เกินเหตุนะ มันมีจุดพลิกแค่นิดเดียว นิดเดียวจริงๆ ที่จะทำให้เรื่องทั้งหมดจบลง แต่ด้วยเพราะความตื่นตระหนก หรือเพราะละครต้องเป็นละครก็ไม่ทราบ เรื่องก็เลยยืดยาวอย่างที่เห็น
บางคนอาจจะบอกว่า “แหงสิ เอ็งเห็นทุกด้าน เอ็งไม่ไปเป็นตัวละครบ้างวะ?” แต่ผมว่ามันจะไม่มีแม้แต่เสี้ยววินาทีเลยเหรอ ที่ตัวละครจะฉุกใจคิดขึ้นมา?

ส่วนลดเมื่อใช้เงินสด

ไปกินอาหารที่ร้านอาหารญี่ปุ่นร้านนึงมา (ขอไม่กล่าวชื่อแล้วกัน) แล้วเค้าบอกว่า

สมาชิกรับส่วนลด 10% เมื่อชำระด้วยเงินสด หรือ 5% เมื่อชำระด้วยบัตรเครดิต

เนี่ย แล้วภาครัฐจะส่งเสริมการใช้เงินดิจิตอลได้ยังไงหละเนี่ย หืม? ก็ในเมื่อร้านค้ายังอยากได้เงินสดๆ อยู่ดี

เท่าที่ผมรู้มานะ เหมือนว่าถ้าใช้บัตรอะ จะไม่ได้เงินทันที ต้องรอให้ครบรอบอะไรซักอย่างก่อนถึงจะได้เงิน ร้านค้าก็คงอยากได้เงินสดไปหมุนในกิจการ แต่ถ้าสมมุติเป็นบัตรเดบิต (ผูกกับบัญชีธนาคาร) ก็ไม่น่าจะต้องรอนะ

วานผู้รู้มาตอบหน่อยนะครับ ว่าทำไมบรรดาห้างร้านถึงอยากได้เงินสดแบบสดๆ แบบนี้นัก?

เมื่อ Cluster = เครื่องที่บ้าน + เครื่องบนคลาวด์

เรื่องมีอยู่ว่า แต่ไหนแต่ไรผมให้บริการหน้าเว็บต่างๆ ผ่านทางเน็ตบ้านกับ Raspberry Pi มาตลอด และเพราะเป็นเน็ตบ้านและอยู่ที่บ้าน มันก็จะได้รับผลกระทบจากปัญหาจำพวกไฟดับ/เน็ตหลุด/ฯลฯ อยู่เรื่อยๆ ดังนั้น ในเดือนพฤษจิกายนปีที่แล้ว ผมจึงตัดสินใจเช่าเครื่อง VPS จาก DigitalOcean เพื่อช่วยให้บริการหน้าเว็บในเวลาที่เครื่องที่บ้านมีปัญหา แต่ถ้าผมจะย้ายทุกอย่างมาที่ VPS เครื่องนี้ แล้วผมจะมี Raspberry Pi ไปเพื่อ????? Continue reading เมื่อ Cluster = เครื่องที่บ้าน + เครื่องบนคลาวด์

พูดได้อย่างกับ “พ่อเป็นฝรั่ง”

เผอิญว่า เมื่อไม่กี่วันก่อน เพื่อนผมแชร์เพลงประกอบภาพยนตร์ I fine, thank you, love you? ซึ่งเรื่องนี่เป็นหนังปีที่แล้ว แล้วผมก็นึกถึงภาพนี้:

Continue reading พูดได้อย่างกับ “พ่อเป็นฝรั่ง”

The passing of the greatest king in Thai’s history.

kingbhumibolgrayscale

PS. This post is written in English to avoid Thai’s royal word and, more importantly, to prevent some of my personal opinions to make me in trouble.

Today, 13 October 2016, after 70 years of never-ending care in Thai people, King Bhumibol passed away. I think this is pretty big lost to Thai people because he is respected by virtually everyone in the country. At this time, all TV channels are broadcasting how great is him. Continue reading The passing of the greatest king in Thai’s history.

360 ล้านเหตุผลว่าทำไมเราควรทำลายรหัสผ่านทั้งหมดซะ!

บทความนี้เป็นการนำบทความ “360 million reasons to destroy all passwords” โดย Quincy Larson เจ้าของ Free Code Camp มาเล่าใหม่ อ่านต้นฉบับได้ที่นี่ครับ

https://medium.freecodecamp.com/360-million-reasons-to-destroy-all-passwords-9a100b2b5001

มีอะไรกับรหัสผ่าน?

เรื่องมีอยู่ว่า LinkedIn Tumblr และ Myspace เพิ่งโดนแฮกและปล่อยรหัสผ่านออกมา (ใครใช้บริการพวกนี้อยู่รีบไปเปลี่ยนรหัสเลยนะครับ) คุณ Quincy ก็เลยคิดว่ารหัสผ่านมันมีความปลอดภัยแค่ไหนกัน Continue reading 360 ล้านเหตุผลว่าทำไมเราควรทำลายรหัสผ่านทั้งหมดซะ!

รัน Cisco ASAv บน Virtualbox

วันดีคืนดีผมอยากจะลองรัน Cisco ASA บนคอมขึ้นมา ก็เลยลองหาข้อมูลดู พบว่าวิธีที่จะทำได้คือใช้ ASAv ซึ่งเป็น VM ซึ่งออกแบบให้ทำงานบน VMWare หรือ QEMU แน่นอนว่าผมไม่มี VMWare ผมก็ต้องใช้รุ่น QEMU

ค้นในกูเกิล เค้าบอกว่าให้ไปหาไฟล์ asav932-200.qcow2 มาลองดู ก็ไปค้นมา จนเจอ ก็ลองรันดู

qemu-system-x86_64 -m 2048M -boot c -hda ./asav932-200.qcow2 -enable-kvm

ปัญหาคือ ต่อให้เปิด KVM แล้ว มันก็ยังช้าอยู่ ผมก็เลยลองเอาไปรันบน Virtualbox ดู ตอนแรกก็ทำไม่ได้ แครชทันที ลองดูในคอนโซล

info: running in virtualbox virtual environment.

อืม… มันรู้ด้วยว่าเราใช้ Virtualbox แฮะ หรือว่ามันจะล็อคไว้? อย่างนี้ต้องลอง spoof ว่าเป็น QEMU ดู

#!/bin/sh
MACHINE_NAME="ASAv"

VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSVendor" SeaBIOS
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSVersion" "Ubuntu-1.8.2-1ubuntu1"
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSReleaseDate" "04/01/2014"
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiSystemVendor" "QEMU"
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiSystemProduct" "Standard PC (i4400FX + PIIX, 1996)"
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiSystemVersion" "pc-i440fx-vivid"
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiChassisVendor" "QEMU"
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiChassisType" 0
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiChassisVersion" "pc-i440fx-vivid"
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiProcVersion" "pc-i440fx-vivid"
VBoxManage setextradata "$MACHINE_NAME" "VBoxInternal/Devices/pcbios/0/Config/DmiProcManufacturer" "QEMU"

ลองรันดูอีกที ได้เว่ยเฮ้ย! สรุปคือโค้ดของเค้าจะตรวจสอบว่าตัวเองกำลังรันอยู่บนอะไร และถ้ามันไม่รู้จักมันก็จะไม่ยอมให้รัน

สรุปว่า จะรัน ASAv บน Virtualbox ได้ มีขั้นตอนดังนี้

  1. สร้าง VM ขึ้นมาใน Virtualbox ตั้ง OS เป็น Linux 2.6 / 3.x / 4.x ตั้งแรมเป็น 2048 MB ขึ้นไป (น้อยกว่านี้ บน QEMU ก็รันไม่ได้ครับ) ไม่ต้องสร้างฮาร์ดดิสก์ (เราจะจัดการอีกที)
  2. แก้การตั้งค่านิดหน่อย
    • System -> Motherboard -> Boot order เอาอย่างอื่นนอกจาก Hard Disk ออก
    • Audio -> Enable Audio ติ๊กออกเลย ไม่ได้ใช้
    • Network -> Adapter 1-4 ติ๊ก Enable ให้หมดเลย (ผมไม่แน่ใจว่าเพิ่มทีหลังได้มั้ย เลยก็เพิ่มเสียตอนนี้เลย)
    • Serial Ports -> Port 1 ติ๊ก Enable ไว้ก็ดีนะ
  3. แปลงไฟล์กันนิดหน่อย เปิด Terminal ขึ้นมา รันคำสั่ง
    qemu-img -O vdi /path/to/asav932-200.qcow2 ~/VirtualBox\ VMs/(VM Name)/asav932-200.vdi

    (ถ้ามันบอกว่า “command not found” ให้ลงแพกเกจ qemu-utils นะครับ)

  4. จากนั้น เอาสคริปต์ข้างบนไปใส่ในเท็กซ์ไฟล์ (สมมุติว่าชื่อ spoof.sh) แก้ชื่อ VM ให้เหมือนกับที่ตั้งไปเมื่อครู่ แล้วรัน
    sh ./spoof.sh

    สคริปต์จะตั้งค่าชื่อของระบบให้เหมือนกับ QEMU ซะ ASAv จะได้เชื่อว่าเรารันอยู่บน QEMU

  5. แก้การตั้งค่าของ VM อีกรอบ ไปที่ Storage -> Controller: SATA เพิ่มฮาร์ดดิสก์ที่เพิ่งแปลงไปเมื่อ 2 ข้อที่แล้ว
  6. คราวนี้ ลองรันดูได้เลย ถ้าในคอนโซลมีคำว่า
    info: running in kvm virtual environment.

    แปลว่าระบบหลงกลเราแล้วครับ เราสามารถใช้ ASAv ได้เลย

อย่างไรก็ตาม หากไม่มีไลเซนส์ของ ASAv ระบบจะจำกัดทราฟฟิกให้ไม่เกิน 100 Kbps เท่านั้นนะครับ ซึ่งก็น่าจะพอสำหรับการทดสอบทั่วไป ซึ่งถ้าจะจำลองอะไรที่ซับซ้อนหน่อย ผมแนะนำให้ใช้โปรแกรม GNS3 ซึ่งสามารถจำลองเราเตอร์ของ Cisco หรือจำลองฮับ จำลองสวิตช์ ได้หลายอย่าง ซึ่งเราสามารถเชื่อมต่อ VM ใน Virtualbox ได้เลย

เร่งความเร็วให้ WordPress บน Raspberry Pi (และบน Server ทุกแบบ)

จากความเดิมตอนที่แล้ว ผมใช้แพกเกจของ Debian ในการติดตั้ง WordPress บน Raspberry Pi ซึ่งถ้าผมไม่ทำการเร่งความเร็วเนี่ย เวลาจะดูบล็อกครั้งนึงจะต้องใช้เวลา 2-3 วินาทีในการโหลดหน้าเว็บ ซึ่งผมเห็นว่ามากเกินไป ผมจึงใช้ปลั๊กอินตัวนึงของ WordPress ที่มีชื่อว่า W3 Total cache

วิธีการเซ็ตก็ไม่ยุ่งยาก เริมจาก: Continue reading เร่งความเร็วให้ WordPress บน Raspberry Pi (และบน Server ทุกแบบ)

การติดตั้ง WordPress บน Debian โดยใช้แพกเกจของ Debian (+PHP-FPM บน Apache แบบง่ายที่สุด)

บล็อกนี้รันอยู่บน Raspberry Pi Model B ซึ่งรัน Raspbian (Debian สำหรับ ARMv6) ตอนติดตั้งผมจึงคิดที่จะใช้แพกเกจของ Debian ในการติดตั้ง ซึ่งก็ต้องทำอะไรหลายอย่างเหมือนกัน เริ่มจาก