โปรแกรมส่วนใหญ่ที่เราใช้ — Office Suite, Web Browser, เกม — ตั้งค่าผ่านเมนู GUI กลายเป็นวิธีเริ่มต้นของเราเกือบทั้งหมด
แต่บางโปรแกรมต้องข้ามขั้นนั้น แทนเมนู ต้องแก้ไข Text File ให้ซอฟต์แวร์ทำงานตามต้องการ
ไฟล์ข้อความเหล่านี้ตั้งค่าให้ซอฟต์แวร์ เรียกว่า "Config Files" หากต้องการเพิ่มความรู้คอมพิวเตอร์ ต้องรู้ Config File คืออะไร และแก้ไขอย่างไร
Config Files คืออะไร?
ก่อนรายละเอียดทางเทคนิค ให้กำหนดความหมายก่อน
Config Files คือ ไฟล์ข้อความที่แก้ไขได้ (Editable text files) มีข้อมูลที่จำเป็นสำหรับการทำงานของโปรแกรม โครงสร้างแบบเฉพาะ จัดรูปแบบให้ผู้ใช้ตั้งค่าได้
บางการตั้งค่า Hard-coded อยู่ในซอฟต์แวร์ แต่ตั้งค่าที่เปลี่ยนได้ จะอยู่ใน Config Files
น่าประหลาดใจ: ไม่มีมาตรฐานบังคับ Config Files ควรทำงาน/รูปแบบอย่างไร ขึ้นอยู่กับนักพัฒนาแต่ละคน
หาและแก้ไข Config Files อย่างไร
Config Files บางตัวมีโครงสร้างเฉพาะของนักพัฒนา บางตัวใช้มาตรฐานที่รู้จักกันดี เช่น:
- JSON (JavaScript Object Notation)
- YAML (YAML Ain't Markup Language)
- XML (eXtensible Markup Language)
บางโปรแกรมโหลดข้อมูลจาก Config ตอนเริ่มต้น บางตัวเช็คเป็นระยะว่ามีการเปลี่ยนแปลงหรือไม่
ไม่ว่าจะ Config File ไหน ข้อฉกาดคือ Copy ไฟล์ไว้ก่อนแก้ไข หากผิดพลาด ก็คืนค่าเดิมได้!
มาดู Config File จริง: ไฟล์ hosts เป็นตัวอย่างที่คุ้นเคย Windows, Mac, Linux ใช้ Map IP Address ไป Hostname ด้วยมือ
Config Files บน Windows
Windows: hosts file อยู่ที่ c:\windows\system32\drivers\etc\
เปิดได้โดยดับเบิลคลิก เลือก Notepad พอ แก้ไขได้ แต่อยู่ๆ มีทางเลือกอื่น (ดูด้านล่าง)
เปิดแล้วเห็น ใช้ Whitespace (Space/Tab) แยกองค์ประกอบ
แต่ละ Hostname อยู่บรรทัดเดียว ตามด้วย Tab และ IP Address อนุญาตให้เพิ่ม Annotation/Comment เริ่มต้นด้วย #
Config Files บน Linux
Linux: hosts file อยู่ /etc/ เปิดด้วย Gedit หรือ CLI Editor เช่น nano/vim (ส่วนใหญ่ติดตั้งมาอยู่แล้ว)
บางโปรแกรมเก็บ Config ใน Home Directory ชื่อไฟล์ขึ้นต้นด้วยจุด (.) นี้เรียกว่า "Dotfiles" บางครั้งมี Extension .rc
Config Files บน macOS
macOS: hosts file อยู่ /etc/ เหมือน Linux
Mac ใช้ BBEdit เป็น Text Editor เริ่มต้น เหมาะสำหรับแก้ Config Files nano/vim ก็ใช้ได้เหมือนกัน
แอปสำหรับแก้ไข Config Files อย่างปลอดภัย
รู้ Config Files แล้ว มาพูดถึงการแก้ไข
ต้องใช้ Text Editor ห้ามใช้ Word Processor เพราะเพิ่ม Formatting ให้ไฟล์อ่านไม่ได้
มี Native Text Editor ให้ แต่สำหรับฟีเจอร์เพิ่ม มี Third-party editors มากมาย
Text Editing Tools เยอะมากบนทุก Platform ยากที่จะแนะนำแอปเดียว Linux ดูรายการ Text Editors ของเรา macOS ดูรอบรวม Text Editors ของเรา
แก้ไข Config File ต้องปฏิบัติตาม Convention ของมัน ดูได้จากการสังเกต บางไฟล์ (เช่น hosts) อธิบาย Convention ในบรรทัด Comment บางตัวต้องอ่าน Documentation หรือบล็อก
หาก Config File เป็น JSON/XML ควรใช้ Editor ที่มี Syntax Highlighting เช่น Notepad++, Atom จะช่วยจับผิดง่ายขึ้น
ที่อื่นที่เจอ Config Files
อยากสำรวจ Config Files เพิ่ม? เจอได้ในแอปและแพลตฟอร์มหลากหลาย ไม่ได้แค่ Block เว็บ/IP!
นอกจาก hosts file ยังเจอใน Video Games ใช้กำหนด Keymappings
บาง Config ใช้ cheat ได้ เช่น Deus Ex ต้นฉบับ ตอนนี้ Cheat ยากกว่า ไม่คุ้มค่า ยกเว้น Enable Cheat Mode อย่างเป็นทางการ
Web Applications ก็ใช้ Config Files สำหรับ Customization
ถ้าแก้ Config แล้วไม่ทำงาน? สาเหตุ 2 อย่าง
ปัญหาจากการแก้ Config แบ่ง 2 กลุ่ม: Permissions และ User Error
ปัญหา Permissions
แก้ไขไม่ได้เพราะเป็น Ordinary User หลาย Config Files ให้แก้ได้เฉพาะ Admin เพื่อป้องกันการตั้งค่าผิดพลาด
แก้ไขง่าย:
- Windows: คลิกขวา Text Editor > Run as administrator
- macOS/Linux: ใช้ sudo เช่น sudo nano /etc/hosts
(หมายเหตุ: หากระบุชื่อไฟล์/ตำแหน่งอื่น จะสร้าง Config File ใหม่ใน Terminal)
ปัญหา User Error
มันคือผิดที่คุณ: ตรวจ Typo และ Convention ของ Config File
Spelling mistake เล็กน้อย ทำให้ไฟล์ทั้งหมดใช้ไม่ได้ ก่อน Save ให้:
- ตรวจสอบการเปลี่ยนแปลง
- แน่ใจว่าเหลือ Comment ไว้
และปิด Config File ก่อนรันซอฟต์แวร์ที่ตั้งค่า
Config Files สำคัญมาก
สำคัญกว่านั้น กำเป็นต่อการใช้ Linux การแก้ไขอย่างถูกต้องช่วยคุณมาก
แก้ Config Files ได้หลายตัว แต่ ต้อง Copy ไฟล์ไว้ก่อน หากผิดพลาด คืนค่าเดิมได้
ใช้ Linux? อ่านเพิ่มเติมเกี่ยวกับการจัดการ hosts file บน Linux