#Backup

ไฟล์ลับคุม 600 ครบ แต่ log 0644 ถูกอัปออกนอกเครื่องทุกคืน
เข้ารหัส .env เรียบร้อย คุมสิทธิ์ไฟล์ลับครบทุกตัว แต่ข้อมูลลูกค้ายังรั่วออกนอกเครื่องทุกคืนผ่านทางที่ไม่มีใครจัดว่าเป็นความลับ นั่นคือไฟล์ log ที่อ่านได้ทั้งเครื่องและถูกมัดรวมขึ้น object storage พร้อม backup พร้อมวิธีปิดที่ต้นทางด้วยการ log แค่รหัสผลลัพธ์

มี backup ครบทุกไฟล์ แต่สร้างเครื่องใหม่ไม่ได้
dump ฐานข้อมูลครบ tar โค้ดครบ ไฟล์ความลับครบ แต่พอเอาไปวางบนเครื่องเปล่าแล้วเว็บไม่ขึ้น เพราะของที่ทำให้เครื่องทำงานได้จริงไม่เคยอยู่ในไฟล์ backup เลย บทความนี้คือรายการของที่หายไปกับเครื่อง และลำดับกู้ที่ผมเขียนไว้ให้ตัวเองในอนาคต

backup รันสำเร็จทุกคืน แต่ของนอกเครื่องไม่มีเลย 3 สัปดาห์
cron รันครบทุกคืน ไฟล์ในเครื่องครบทุกวัน log เขียนว่าเสร็จ แต่ของบนที่เก็บนอกเครื่องไม่ขยับมา 3 สัปดาห์ และชุด 8 คืนแรกหายถาวรไปแล้วเพราะ rotate ในเครื่องกินไปก่อน บทความนี้คือการชำแหละว่ารูสองรูอะไรทำให้เงียบได้นานขนาดนั้น

กู้ MariaDB ที่ InnoDB redo-log เสียด้วย force_recovery แล้ว reinit
MariaDB สตาร์ทไม่ขึ้นหลังเครื่องดับไม่สะอาด — InnoDB redo log เสีย ลาก system table mysql.global_priv พังตาม นี่คือลำดับกู้จริง เริ่มจาก innodb_force_recovery ให้พออ่านได้ แล้ว dump ทีละ db ก่อน reinit ระบบใหม่ทั้งก้อน พร้อมกฎว่าอย่าดันเลข force_recovery เกินจำเป็น

ตั้ง DirectAdmin Admin Backup cron จาก CLI ไม่ต้องกดผ่าน panel
หน้า CMD_ADMIN_BACKUP ให้คลิกตั้ง cron ทีละห้าขั้น แต่จริงๆ DirectAdmin แค่ต่อท้ายบรรทัดเดียวลงไฟล์ backup_crons.list แล้วปล่อยให้ dataskq เก็บไปทำ วิธีเขียนตรงเข้าไฟล์จาก CLI พร้อมกับดัก when=now, base64 และ append_to_path ที่คนมักพลาด

กู้รูปเว็บเก่าที่หายไป ด้วย Wayback Machine CDX API + Python
เว็บเก่าอายุสิบกว่าปีรูปแตกทั้งเว็บเพราะ hotlink จาก CDN ที่ตายแล้ว — เขียนสคริปต์ Python ดึงรายการรูปจาก Wayback Machine CDX API แล้วกู้กลับมาวางที่ path เดิมโดยไม่แตะ HTML สักตัวอักษร พร้อมสคริปต์เต็มที่ใช้จริง

คุม Linux server ด้วย AI ผ่าน SSH ให้ปลอดภัย ไม่เผลอพังระบบ
วิธีที่ผมใช้จริงในการเอา Claude มาช่วย audit และแก้ security ของ Linux server ผ่าน SSH ตั้งแต่เตรียมเครื่อง เก็บความลับ ไปจนกฎเหล็กก่อนแตะ production

ดึง Backup ออกนอกห้อง Server ด้วย Pull Architecture + rclone/rsync
สร้าง Layer 3 off-site ให้ครบ 3-2-1 ด้วยสถาปัตยกรรมแบบ pull (host ปลายทางดึงเอง) บวก rclone + rsync และบทเรียนจาก trip จริงทั้ง NAT, RSA host key, cwRsync, และ PID recycle.

วางระบบ Backup DirectAdmin ใหม่ด้วย NFS และ POSIX ACL จากงานจริง
บันทึกการรื้อระบบ backup ของ DirectAdmin server หลัง migrate เครื่องใหม่ — จาก FTP push ที่พังสามชั้น มาเป็น NFSv4 hard mount + POSIX ACL พร้อมบทเรียนระดับ kernel ที่กว่าจะลงตัว.

ย้าย DA จาก CentOS 7 ไป Debian 12 ตอนที่ 4 — Cutover จริง กับ 17 ปัญหาหลังสลับเครื่อง
เล่า cutover จริงที่แผน downtime ใกล้ 0 พังเพราะ DA Legacy license และ qcow2 อ่านช้า สุดท้าย downtime 1 ชม. แล้วเจอ 17 ปัญหารัวๆ หลังสลับเครื่อง — critical web stack ดับ, medium subset ใช้ไม่ได้, minor debugging notes ครบ

ย้าย DA สู่ Debian 12 ตอนที่ 2 — เปลี่ยน storage เป็น ZFS mirror
เปลี่ยน storage layer จาก mdadm RAID1 + ext4 + qcow2 สามชั้น มาเป็น ZFS mirror + raw zvol ชั้นเดียว โดยทำได้ขณะ VM เก่ายัง online ผ่านเทคนิค degrade RAID เหลือ disk ใบเดียว