คู่มือการใช้งาน เมนู System Backup - (DirectAdmin Admin Level)
ตั้งค่าและรัน System Backup สำหรับไฟล์และค่าระบบ พร้อมตรวจปลายทาง พื้นที่ว่าง และ Log ก่อนรันซ้ำ
รู้จัก System Backup และเข้าเมนูจาก Dashboard
เมนู System Backup ใน DirectAdmin ระดับ Admin Level ช่วยให้ผู้ดูแลระบบตั้งค่าและสั่งสำรองข้อมูลระดับระบบของเครื่อง DirectAdmin เช่น configuration ของเว็บเซิร์ฟเวอร์, DNS, MySQL, directory/file ที่ระบบกำหนดไว้ และ custom path ที่ผู้ดูแลระบบเพิ่มเอง เมนูนี้เหมาะกับผู้ดูแล VPS/DirectAdmin ที่ต้องการเก็บข้อมูลสำคัญของระบบเพื่อใช้ประกอบการกู้คืนเครื่องหรือย้ายระบบในระดับ server

เส้นทางเข้าเมนูจาก Dashboard คือ:
Admin Level > Admin Tools > System Backup
จากหน้า Dashboard ให้ตรวจว่าด้านบนอยู่ที่ระดับ Admin แล้วดูเฉพาะกลุ่ม Admin Tools จากนั้นกดเมนู System Backup
คำเตือนสำคัญ: System Backup เป็นงานระดับผู้ดูแลระบบ การเพิ่ม/ลบ directory หรือ file ผิดรายการอาจทำให้ backup ไม่ครบ ส่วนการกด RUN SYSTEM BACKUP ในหน้าจอตัวอย่างส่งคำสั่งทันทีโดยไม่มีหน้าต่างยืนยันแยก จึงต้องตรวจค่าทั้งหมดก่อนคลิก
กำหนดตำแหน่งเก็บ Backup และค่าพื้นฐาน
เมื่อเข้าเมนูแล้ว breadcrumb ด้านบนแสดง Dashboard > System Backup โดย Dashboard เป็นลิงก์กลับหน้าแรก และ System Backup คือหน้าปัจจุบัน ใช้ยืนยันว่ากำลังอยู่ในเมนู backup ระดับระบบจริง

ส่วนหัวของหน้ามีชื่อ System Backup พร้อม help ไอคอน เล็ก ๆ ข้างชื่อหน้า ไอคอนนี้เป็นลิงก์ไปยังเอกสารช่วยเหลือของ DirectAdmin สำหรับ System Backup ใช้อ่านประกอบได้ แต่ไม่ใช่ปุ่มบันทึกหรือปุ่มสั่ง backup
ปุ่มและ link ด้านขวาบนของหน้ามี 3 จุดสำคัญ:
- RUN SYSTEM BACKUP - ปุ่มสั่งรัน system backup ทันที จากการทดสอบแบบบล็อก request พบว่าปุ่มนี้ส่ง
POSTไปที่CMD_SYSTEM_BACKUPด้วยคำสั่งnowโดยไม่มีหน้าต่างยืนยันแยก - View Last Backup Log - link เปิดหน้าต่างอ่าน log ล่าสุดของ System Backup
- Cron Schedule - link เปิดหน้าต่างตั้งเวลารัน backup อัตโนมัติผ่าน cron
พื้นที่ตั้งค่าหลักแบ่งเป็น 4 tab/card แนวนอน:
- Basic Configuration - ตั้งค่า backup path, พื้นที่ว่างขั้นต่ำ, partition และประเภทข้อมูลที่ต้อง backup
- Remote Transfer - ตั้งค่าการส่ง backup ไปปลายทาง FTP/SCP
- Directories - เลือก directory ที่จะอยู่ในชุด backup
- Files - เลือก file รายตัวที่ต้องอยู่ในชุด backup
ในแท็บ Basic Configuration fields ที่เห็นในบัญชีตัวอย่างมีดังนี้:
| Field/Control | ความหมาย | ข้อควรระวัง |
|---|---|---|
| Backup Path | path ปลายทางสำหรับเก็บไฟล์ backup ค่าในบัญชีตัวอย่างคือ $MOUNT_POINT/backup |
ต้องแน่ใจว่า path อยู่บน partition ที่มีพื้นที่พอและไม่ใช่พื้นที่ที่เสี่ยงหายพร้อมระบบหลักโดยไม่ตั้งใจ |
| Minimum disk space required for backup (MB) | พื้นที่ว่างขั้นต่ำก่อนอนุญาตให้ backup ค่าในบัญชีตัวอย่างคือ 4096 MB |
ตั้งต่ำเกินไปอาจทำให้ disk เต็มระหว่าง backup ตั้งสูงเกินไปอาจทำให้ backup ไม่เริ่มแม้ยังพอเก็บงานบางรอบ |
| on partition | label ข้างค่า minimum disk space เพื่อบอกว่าจะตรวจพื้นที่ว่างบน partition ใด | เป็นตัวบอกบริบท ไม่ใช่ปุ่มคำสั่งแยก |
| เมนู Partition | ตัวเลือก partition ที่เห็นในระบบตัวอย่างคือ / และ /boot |
ควรเลือก partition ที่ backup path ใช้งานจริง โดยทั่วไปไม่ควรใช้ /boot เป็นที่เก็บ backup |
| HTTPD data | ช่องเลือกสำหรับรวมข้อมูล/config ที่เกี่ยวกับ HTTPD/web server ใน system backup | ถ้าเว็บเซิร์ฟเวอร์เป็นส่วนสำคัญของเครื่อง ควรตรวจให้เปิดไว้ก่อนรัน backup |
| DNS data | ช่องเลือกสำหรับรวมข้อมูล DNS เช่น zone/config ที่ DirectAdmin ใช้ | ถ้าปิดไว้ การกู้คืนระบบอาจไม่มีข้อมูล DNS ครบตามที่คาด |
| MySQL Databases | ช่องเลือกสำหรับรวม database backup ตามกลไกของ System Backup | ฐานข้อมูลเป็นข้อมูลเปลี่ยนบ่อย ต้องคิดเรื่องเวลา backup และพื้นที่เก็บเป็นพิเศษ |
| Custom Directories & Files | ช่องเลือกสำหรับรวมรายการ custom จากแท็บ Directories และ Files | ถ้าเปิดไว้แต่รายการ custom ผิดหรือถูกลบ backup จะไม่ครอบคลุม path ที่ตั้งใจ |
| Add user home directories to directory list | ช่องเลือกสำหรับเพิ่ม home directories ของ user เข้า directory list | ทำให้ backup ครอบคลุมข้อมูล user home มากขึ้น แต่จะเพิ่มขนาด backup และเวลาในการทำงาน |
| SAVE | ปุ่มบันทึกค่าของ Basic Configuration | ตรวจ path, partition และช่องเลือกให้ครบก่อนกด เพราะเป็นค่าที่ใช้กับรอบ backup ถัดไป |
หน้านี้ไม่มี table column หรือคำสั่งประจำแถว ในแท็บ Basic Configuration การเปลี่ยนค่าทั้งหมดทำผ่าน field, เมนูตัวเลือก, ช่องเลือกและปุ่ม SAVE เท่านั้น
ตั้งเวลาสำรองข้อมูลอัตโนมัติด้วย Cron
กด Cron Schedule เพื่อเปิดหน้าต่างตั้งเวลารัน System Backup อัตโนมัติ พื้นหลังหน้าหลักจะถูกทำให้จางลง และหน้าต่างชื่อ Cron Schedule อยู่กลางหน้าจอ พร้อมไอคอนด้านซ้ายของหัวหน้าต่างและปุ่ม X มุมขวาบนสำหรับปิด

ส่วนควบคุมในหน้าต่างมีดังนี้:
- Use Cron for Backup - ช่องเลือกเปิด/ปิดการใช้ cron schedule สำหรับ System Backup ในภาพระบบตัวอย่างยังไม่ถูกเลือก
- Minute - ช่องนาทีของ cron ค่าในบัญชีตัวอย่างคือ
0 - Hour - ช่องชั่วโมงของ cron ค่าในบัญชีตัวอย่างคือ
5 - Day of Month - ช่องวันที่ของเดือน ค่าในบัญชีตัวอย่างคือ
*หมายถึงทุกวันของเดือนตามเงื่อนไขอื่น - Month - ช่องเดือน ค่าในบัญชีตัวอย่างคือ
*หมายถึงทุกเดือน - Day of Week - ช่องวันของสัปดาห์ ค่าในบัญชีตัวอย่างคือ
0 - question mark icons - ไอคอนช่วยเหลือข้าง field cron ใช้เป็นตัวช่วยอธิบายรูปแบบค่าของช่องนั้น
- Cron job will run - ข้อความ preview เวลาที่ระบบตีความจากค่า cron ในภาพคือ At 05:00 AM, only on Sunday
- Close - ปิดหน้าต่างโดยไม่บันทึกการแก้ไข
- SAVE - บันทึก cron schedule ที่ตั้งไว้
ถ้าจะเปิด cron backup บนเครื่องจริง ให้เลือกเวลาที่โหลดต่ำและไม่ชนกับงานหนักอื่น เช่น backup ระดับ user, database maintenance, malware scan หรือ update system เพราะ System Backup อาจใช้ disk I/O และพื้นที่ว่างมากกว่าที่คิด
ก่อนกด SAVE ให้ดูบรรทัด Cron job will run ทุกครั้ง เพราะช่วยลดความผิดพลาดจากการใส่ cron syntax ผิด เช่นตั้งใจให้รันทุกวันแต่ใส่ค่า day of week จนกลายเป็นสัปดาห์ละครั้ง หรือใส่เวลาชนกับช่วงที่ลูกค้าใช้งานหนัก
อ่าน Log ของการสำรองข้อมูลครั้งล่าสุด
กด View Last Backup Log เพื่อเปิดหน้าต่างอ่าน log ล่าสุดของ System Backup โดยหน้าต่างมีชื่อ View Last Backup Log, ไอคอนหัวหน้าต่าง, ปุ่ม X มุมขวาบน และปุ่ม Close ด้านล่างสำหรับปิดหน้าต่าง

ในจากหน้าจอตัวอย่างได้ พื้นที่ log แสดงข้อความ:
404 page not found
ให้ตีความเฉพาะกับเครื่องระบบตัวอย่างณ เวลาถ่ายภาพว่า DirectAdmin ยังไม่มี log ล่าสุดให้เปิดอ่านจาก path ที่ปุ่มนี้เรียก หรือ log ล่าสุดไม่พร้อมให้ดูผ่านหน้าต่างไม่ได้แปลว่าเมนู System Backup ใช้งานไม่ได้เสมอไป
บนเครื่องจริง หลังรัน System Backup แล้วควรกลับมาเปิด View Last Backup Log เพื่อตรวจว่า backup เริ่ม, เขียนไฟล์, dump database, รวม directory/file และจบงานโดยไม่มี error หรือไม่ ถ้า log แสดง error ให้เก็บข้อความนั้นก่อนกดรันซ้ำ เพราะ log คือหลักฐานสำคัญในการไล่ปัญหา disk, permission, remote transfer หรือ database dump
หน้าต่างนี้เป็นหน้าดูข้อมูล ไม่ใช่หน้าสั่ง backup และไม่มีปุ่มลบ log ในหน้าต่างที่เห็นในระบบตัวอย่างส่วนควบคุมที่เกี่ยวข้องจึงมีเพียงการเปิดหน้าต่าง, อ่านข้อความ, ปิดด้วย X หรือ Close
ส่ง Backup ไปยัง Server ปลายทาง
แท็บ Remote Transfer ใช้ตั้งค่าการส่งไฟล์ backup ไปยังปลายทางภายนอกหลังระบบสร้าง backup แล้ว เหมาะเมื่อไม่ต้องการเก็บ backup ไว้แค่บนเครื่องเดียวกับ production server เพราะถ้า disk หรือเครื่องหลักเสียพร้อมกัน backup ที่อยู่บนเครื่องเดียวกันอาจหายไปด้วย

fields และส่วนควบคุมที่เห็นในระบบตัวอย่างมีดังนี้:
- Use Remote Transfer - ช่องเลือกเปิด/ปิดการส่ง backup ไปยัง remote ในภาพระบบตัวอย่างยังไม่ถูกเลือก
- Remote transfer method - เมนูตัวเลือกเลือกวิธีส่งออก ตัวเลือกที่เห็นในระบบตัวอย่างคือ ftp และ scp
- Delete the local backup after remote transfer - ช่องเลือกให้ลบไฟล์ backup local หลังส่งออกสำเร็จ ช่วยลดการใช้พื้นที่บนเครื่อง แต่เสี่ยงถ้า remote ส่งไม่ครบหรือยังไม่ได้ตรวจผล
- Incremental file-by-file backup - ช่องเลือกใช้รูปแบบ incremental file-by-file พร้อม question mark ไอคอนช่วยอธิบายตัวเลือกนี้
- Remote Host - hostname หรือ IP ปลายทาง ค่า placeholder ในบัญชีตัวอย่างคือ
backup.host.com - Remote User - username สำหรับ login remote ค่า placeholder คือ
ftpuser - Remote Password - password สำหรับ remote มีไอคอน รูปตาเพื่อแสดง/ซ่อนรหัสผ่าน ค่า placeholder ถูกซ่อนเป็นจุดในภาพ
- Remote Path - path ปลายทางที่เก็บ backup ค่า placeholder คือ
/backups - SAVE - บันทึกค่าของ Remote Transfer
ถ้าใช้ ftp ต้องระวังเรื่องความปลอดภัยของ credential และ network path ส่วน scp เหมาะกับปลายทางที่รองรับ SSH/SCP และควรใช้บัญชีที่จำกัดสิทธิ์เฉพาะโฟลเดอร์ backup เท่าที่จำเป็น
ก่อนกด SAVE ให้ตรวจ remote host, user, password และ path ให้ถูก เพราะถ้าค่าผิด backup อาจสร้างเสร็จบน local แต่ส่งออกไม่สำเร็จ หรือส่งไปผิดปลายทาง ถ้าเปิด Delete the local backup after remote transfer ให้มั่นใจว่ามีขั้นตอนตรวจ remote backup จริงก่อนลบ local copy
เลือก Directory ของระบบที่ต้องการสำรอง
แท็บ Directories แสดงรายการ directory ที่ System Backup จะรวมเข้า backup เมื่อเปิด Custom Directories & Files ใน Basic Configuration ตารางนี้มีคอลัมน์หลักคือช่องเลือกและ Directories โดยแต่ละแถวคือ path หนึ่งรายการ

ส่วนบนขวาของตารางมี With selected (0 / 16) เพื่อบอกจำนวนแถวที่เลือกเทียบกับจำนวน directory ทั้งหมดในตาราง และปุ่ม Delete สำหรับลบรายการที่เลือกออกจาก list เมื่อยังไม่เลือกแถว ปุ่ม Delete อยู่ในสถานะจาง/ไม่พร้อมใช้งาน เมื่อเลือกช่อง หนึ่งแถว ตัวเลขจะเปลี่ยนเป็น With selected (1 / 16) และปุ่ม Delete จะพร้อมกด
รายการ directory ที่เห็นในบัญชีตัวอย่างได้แก่ /etc/httpd, /etc/mail, /etc/virtual, /home/admin, /usr/lib/apache, /usr/local, /usr/local/directadmin/data, /usr/local/frontpage, /usr/share/ssl, /var/log, /var/mail, /var/named, /var/spool/cron, /var/spool/mail, /var/spool/virtual และ /var/www
| ส่วนประกอบ | ความหมาย | ข้อควรระวัง |
|---|---|---|
| ช่องเลือกหัวตาราง | ใช้เลือกหลายรายการในตารางพร้อมกัน | อย่าใช้ถ้ายังไม่แน่ใจว่าจะลบรายการทั้งหมดหรือหลายรายการออกจาก backup list |
| ช่องเลือกหน้าแถว | เลือก directory แถวนั้นเพื่อใช้คำสั่ง Delete | ตรวจ path ให้ตรงก่อนเลือก เพราะ path บางรายการคล้ายกันและมีผลกับ backup coverage |
| Directories | path directory ที่จะถูกนำไป backup | path ระดับระบบ เช่น /usr/local/directadmin/data หรือ /var/named มีความสำคัญต่อการกู้คืน config |
| Delete | ลบ directory ที่เลือกออกจากรายการ backup | จากการทดสอบแบบบล็อก request ปุ่มนี้ส่ง POST คำสั่ง deletedirs ทันที ไม่มีหน้าต่างยืนยันแยก |
การลบรายการในแท็บนี้ไม่ได้ลบ directory จริงออกจาก server แต่ลบออกจาก list ที่ System Backup จะใช้ อย่างไรก็ตามผลกระทบยังสำคัญมาก เพราะ backup รอบถัดไปอาจไม่เก็บ path ที่จำเป็นต่อการกู้คืนระบบ
เพิ่มไฟล์หรือ Directory ที่ต้องการเอง
ท้ายตาราง Directories มีช่อง input สำหรับเพิ่ม path ใหม่ พร้อมปุ่ม Add ด้านขวาของช่อง และปุ่ม SAVE มุมล่างขวาของหน้า รูปแบบเดียวกันนี้ใช้กับแท็บ Files ด้วย เพียงแต่หัวตารางและรายการจะเป็น file path แทน directory path

วิธีใช้ที่ปลอดภัยคือเพิ่มเฉพาะ path ที่รู้ชัดว่าจำเป็นต่อการกู้คืนระบบ เช่น directory config เฉพาะ service หรือ path ที่ DirectAdmin ไม่ใส่มาให้โดยอัตโนมัติ หลีกเลี่ยงการเพิ่ม path กว้างเกินไป เช่น directory ใหญ่ทั้งก้อนโดยไม่ประเมินขนาด เพราะจะทำให้ backup ใช้พื้นที่และเวลามากขึ้น
ปุ่ม Add ใช้เพิ่มค่าที่กรอกเข้า list บนหน้าจอ ส่วนปุ่ม SAVE ใช้บันทึก list ใหม่ให้ DirectAdmin ใช้กับ backup รอบถัดไป ก่อนกด SAVE ให้เลื่อนตรวจทั้งรายการที่มีอยู่และรายการที่เพิ่งเพิ่ม เพราะการใส่ path ผิดอาจทำให้ backup ล้มเหลวจาก permission/path not found หรือเก็บข้อมูลไม่ครบตามที่ตั้งใจ
ถ้าต้องเพิ่มทั้ง directory และ file ให้แยกเพิ่มในแท็บที่ถูกต้อง: directory ใช้แท็บ Directories ส่วน file รายตัวใช้แท็บ Files อย่าใช้ file path ในช่อง directory หรือ directory path ในช่อง file โดยไม่รู้ behavior ของระบบ เพราะจะทำให้รายการ backup ไม่ตรงกับความคาดหวัง
เลือกไฟล์สำคัญของระบบที่ต้องการสำรอง
แท็บ Files แสดงรายการ file รายตัวที่ System Backup จะรวมเข้า backup เมื่อใช้ custom directories/files ตารางนี้มีคอลัมน์ช่องเลือกและ Files โดยแต่ละแถวคือ path ของไฟล์สำคัญระดับระบบ

ส่วนบนขวาของตารางมี With selected (0 / 20) และปุ่ม Delete เหมือนแท็บ Directories เมื่อเลือกช่อง หนึ่งแถว ตัวเลขจะเปลี่ยนเป็น With selected (1 / 20) และปุ่ม Delete จะพร้อมใช้งาน
ตัวอย่าง file ที่เห็นในบัญชีตัวอย่างได้แก่ /etc/exim.cert, /etc/exim.conf, /etc/exim.key, /etc/exim.pl, /etc/group, /etc/gshadow, /etc/hosts, /etc/httpd/conf/httpd.conf, /etc/httpd/conf/ips.conf, /etc/master.passwd, /etc/named.conf, /etc/passwd, /etc/proftpd.conf, /etc/proftpd.passwd, /etc/proftpd.vhosts.conf, /etc/resolv.conf, /etc/shadow, /etc/ssh/sshd_config, /etc/system_filter.exim และ /usr/local/directadmin/conf/mysql.conf
ไฟล์บางรายการใน list มีข้อมูลสำคัญมาก เช่น config mail, DNS, SSH, user/group และ DirectAdmin/MySQL config ดังนั้นการลบออกจาก backup list ต้องมีเหตุผลชัดเจน ไม่ควรลบเพราะคิดว่าเป็นไฟล์ระบบที่ไม่เกี่ยวกับเว็บ เพราะเวลาต้องกู้คืนเครื่อง รายการเหล่านี้มักเป็นส่วนที่ทำให้ระบบกลับมาทำงานใกล้เคียงเดิมได้เร็วขึ้น
จากการทดสอบแบบบล็อก request ปุ่ม Delete ในแท็บ Files ส่ง POST คำสั่ง deletefiles ทันที และไม่มีหน้าต่างยืนยันแยก เช่นเดียวกับแท็บ Directories ให้ถือว่าการกด Delete หลังเลือกช่อง คือการแก้ list จริงทันที ต้องตรวจ path ก่อนกดทุกครั้ง
ตรวจค่าทั้งหมดก่อนเริ่ม System Backup
ปุ่ม RUN SYSTEM BACKUP อยู่ด้านขวาบนของหน้า System Backup และเป็นปุ่มสั่งให้ DirectAdmin รัน backup ทันทีโดยใช้ค่าที่ตั้งไว้ใน Basic Configuration, Remote Transfer, Directories และ Files ณ ขณะนั้น

จากการทดสอบโดยบล็อก request เพื่อไม่ให้สั่งงานจริง พบว่าการคลิกปุ่มนี้ส่ง POST ไปที่:
CMD_SYSTEM_BACKUP?json=yes
คำสั่ง=now
ในหน้าจอตัวอย่างไม่มีหน้าต่างยืนยันก่อนส่งคำสั่งดังนั้นอย่ากดปุ่มนี้เพื่อทดลองดูขั้นตอนถัดไป ให้ถือว่าปุ่มนี้คือจุดสั่งงานจริงทันที
ก่อนกด RUN SYSTEM BACKUP ให้ตรวจ checklist นี้:
- Backup Path ถูกต้อง - path มีอยู่จริง เขียนได้ และอยู่บน partition ที่ต้องการ
- พื้นที่ว่างพอ - ค่า minimum disk space และพื้นที่จริงเพียงพอกับ backup รอบนี้
- ช่องเลือกข้อมูลหลักถูกเลือก - HTTPD data, DNS data, MySQL Databases และ Custom Directories & Files ตรงกับเป้าหมายของ backup
- Directories/Files ไม่ขาดรายการสำคัญ - ตรวจ list หลังมีการ Add/Delete ทุกครั้ง
- Remote Transfer พร้อม - ถ้าเปิด remote transfer ให้ตรวจ method, host, user, password และ remote path
- ไม่ลบ local เร็วเกินไป - หากเปิด Delete the local backup after remote transfer ต้องมั่นใจว่ามีวิธีตรวจ remote backup สำเร็จจริง
- เวลาเหมาะสม - รันในช่วงโหลดต่ำ โดยเฉพาะเครื่องที่มี database หรือไฟล์จำนวนมาก
- มีแผนตรวจผล - หลังรันให้เปิด View Last Backup Log และตรวจไฟล์ backup/remote ปลายทางก่อนถือว่างานเสร็จ
ถ้า System Backup ล้มเหลว อย่ากดรันซ้ำทันทีโดยยังไม่อ่าน log เพราะอาจทำให้ disk เต็มหรือทับอาการเดิม ให้เก็บ log, ตรวจพื้นที่ว่าง, ตรวจ permission ของ path, ตรวจ remote credential และค่อยแก้ค่าก่อนรันใหม่
หากไม่แน่ใจว่าค่าหรือคำสั่งใดจะกระทบส่วนไหนของเซิร์ฟเวอร์ ให้หยุดไว้ก่อน แล้วเก็บภาพหน้าจอกับรายละเอียดที่เกี่ยวข้องส่งให้ทีมงาน PhalconHost ช่วยตรวจสอบได้ครับ
ต้องการสอบถามข้อมูลเพิ่มเติม?
สามารถแอดไลน์คุยกันก่อนได้ที่ line: @PhalconHost