ก่อนจะทำอะไรกับ Linux ได้ คุณต้องคุยกับมันให้เป็นก่อน — บทนี้จะสอนตั้งแต่ “หน้าจอดำๆ นั่นคืออะไร” ไปจนถึงการเดินไปมาในเครื่องได้อย่างมั่นใจ
🌱 บทนี้เขียนเพื่อคนที่ไม่เคยแตะ Linux มาก่อนเลยถ้าคุณคุ้นกับ Windows คุณจะชินกับการ คลิกเมาส์ — เปิดโฟลเดอร์ ลากไฟล์ กดปุ่ม แต่ในโลกของเซิร์ฟเวอร์ Linux ส่วนใหญ่ ไม่มีหน้าจอสวยๆ ให้คลิก มีแต่ “หน้าจอดำๆ” ที่รอให้เราพิมพ์คำสั่ง
และที่สำคัญที่สุดสำหรับคุณตอนนี้:
ทุกอย่างในข้อสอบทำผ่านการพิมพ์คำสั่งทั้งหมด ดังนั้นยิ่งคุณพิมพ์คล่องเท่าไหร่ ก็ยิ่งทำข้อสอบได้ทันเวลา 3 ชั่วโมงมากเท่านั้น
ข่าวดีคือ — การพิมพ์คำสั่งไม่ได้น่ากลัวอย่างที่คิด มันแค่เหมือนการ “สั่งงาน” เป็นประโยคสั้นๆ พอชินแล้วจะเร็วและแม่นยำกว่าการคลิกเมาส์เสียอีก
มีสองคำที่ได้ยินบ่อยและมักสับสนกัน:
bashลองนึกภาพ ร้านอาหาร:
• Terminal = โต๊ะกับกระดาษสั่งอาหารที่คุณนั่งอยู่
• Shell = พนักงานที่รับออเดอร์จากคุณ แล้ววิ่งไปบอกครัว (ตัวเครื่อง) ให้ทำ
คุณเขียนออเดอร์ (พิมพ์คำสั่ง) → พนักงานอ่าน (shell แปลคำสั่ง) → ครัวทำอาหาร (เครื่องทำงาน) → เอามาเสิร์ฟ (ผลลัพธ์โผล่บนจอ)
พอเปิด terminal ขึ้นมา คุณจะเห็นข้อความรออยู่แบบนี้ เราเรียกมันว่า prompt (เครื่องกำลังบอกว่า “พร้อมรับคำสั่งแล้วนะ”):
[student@server1 ~]$ _
ดูเหมือนยุ่งเหยิง แต่จริงๆ มันบอกข้อมูล 4 อย่างให้เราฟรีๆ:
student = ชื่อ user ที่กำลังล็อกอินอยู่ตอนนี้server1 = ชื่อเครื่อง (hostname) ที่เรากำลังใช้~ = เรากำลังอยู่โฟลเดอร์ไหน (เครื่องหมาย ~ หมายถึง “บ้าน” ของเรา — เดี๋ยวอธิบายข้อ 4)$ = สัญลักษณ์บอกระดับสิทธิ์$ = คุณเป็น user ธรรมดา (ทำได้จำกัด ปลอดภัย)
# = คุณเป็น root ผู้ดูแลระบบสูงสุด (ทำได้ทุกอย่าง รวมถึงพังเครื่องได้ด้วย!)
เห็น # เมื่อไหร่ ให้ระวังเป็นพิเศษ เพราะ root ลบอะไรก็ได้โดยไม่มีใครเตือน
ใน Windows ไฟล์ถูกแยกเป็นไดรฟ์ C:\, D:\ แต่ Linux ไม่มีไดรฟ์แบบนั้น — ทุกอย่างเริ่มจากจุดเดียวคือ / (อ่านว่า “รูท” หรือ “สแลช”) แล้วแตกกิ่งก้านออกไปเหมือนต้นไม้
นึกถึง ต้นไม้กลับหัว — โคนต้น (root) อยู่บนสุดคือ / แล้วแตกกิ่งลงมาเป็นโฟลเดอร์ต่างๆ แต่ละกิ่งก็แตกเป็นกิ่งย่อยได้อีก
/ ← จุดเริ่มต้นของทุกอย่าง (root) ├── home/ ← บ้านของ user แต่ละคน │ └── student/ ← โฟลเดอร์ส่วนตัวของ user ชื่อ student ├── root/ ← บ้านของ root (คนละอันกับ / นะ!) ├── etc/ ← ไฟล์ตั้งค่าของระบบทั้งหมดอยู่ที่นี่ ├── var/ ← ข้อมูลที่เปลี่ยนบ่อย เช่น log ├── usr/ ← โปรแกรมและไฟล์ของระบบ └── tmp/ ← ที่พักไฟล์ชั่วคราว
ตอนนี้ยังไม่ต้องท่องจำทั้งหมด แค่จำ 2 อันนี้ก่อนพอ:
/ = จุดเริ่มต้นของทุกอย่าง ไม่มีอะไรอยู่เหนือมัน/home/student = “บ้าน” ของคุณ พื้นที่ส่วนตัวที่คุณเก็บไฟล์ได้อิสระเวลาเราจะบอกเครื่องว่า “เอาไฟล์ที่อยู่ตรงนั้น” เราต้องบอก path (เส้นทาง) ซึ่งมี 2 แบบ:
เริ่มด้วย / เสมอ บอกเส้นทางเต็มจากโคนต้นไม้ — ชัดเจน ไม่ว่าตอนนี้คุณยืนอยู่ตรงไหนก็หาเจอ
เหมือนที่อยู่บ้านแบบเต็ม: “ประเทศไทย → กรุงเทพ → ถนนสุขุมวิท → บ้านเลขที่ 10” = /home/student/notes.txt ใครอยู่ที่ไหนก็ตามมาถูก
ไม่ขึ้นต้นด้วย / — บอกเส้นทางจาก “ตำแหน่งที่คุณยืนอยู่ตอนนี้”
เหมือนบอกทางว่า “เดินตรงไป 2 ห้อง แล้วเลี้ยวขวา” — ใช้ได้ก็ต่อเมื่อรู้ว่าตอนนี้คุณยืนอยู่ตรงไหน
มีสัญลักษณ์ลัดที่ใช้บ่อยมาก จำไว้เลย:
| สัญลักษณ์ | หมายถึง |
|---|---|
~ | บ้านของคุณ (เช่น /home/student) |
. | โฟลเดอร์ที่คุณอยู่ตอนนี้ (จุดเดียว) |
.. | ถอยขึ้นไป 1 ขั้น (โฟลเดอร์แม่) |
/ | จุดเริ่มต้นสูงสุด (root) |
ไม่มีใครจำทุกคำสั่งได้หมด แม้แต่ผู้ดูแลระบบมืออาชีพ — เคล็ดลับคือ รู้ว่าจะหาคำตอบจากที่ไหน และ Linux มีคู่มือติดตัวมาให้ในเครื่องอยู่แล้ว
ย่อมาจาก “manual” = เปิดคู่มือละเอียดของคำสั่งนั้น
[student@server1 ~]$ man ls LS(1) User Commands LS(1) NAME ls - list directory contents SYNOPSIS ls [OPTION]... [FILE]... ...
หน้าคู่มือจะเปิดขึ้นมาเต็มจอ ใช้ปุ่มเหล่านี้ควบคุม:
↑ ↓เลื่อนขึ้น–ลงทีละบรรทัด (หรือใช้ Space เลื่อนทีละหน้า)/คำค้นหาคำในคู่มือ เช่นพิมพ์ /sort แล้ว Enterqออกจากคู่มือ — สำคัญมาก! มือใหม่มักติดอยู่ในนี้เพราะไม่รู้ว่ากด q เพื่อออกเปิด man แล้วออกไม่เป็น กด Ctrl+C ก็ไม่ออก! จำง่ายๆ ว่า กด q (quit) เพื่อออกจากคู่มือเสมอ
ถ้าอยากดูแค่รายการ option สั้นๆ ไม่ต้องเปิดคู่มือเต็ม ให้เติม --help ต่อท้ายคำสั่ง
[student@server1 ~]$ ls --help Usage: ls [OPTION]... [FILE]... -a, --all do not ignore entries starting with . -l use a long listing format ...
ข้อสอบ RHCSA อนุญาตให้ใช้ man ได้ ระหว่างสอบ! ดังนั้นคุณไม่จำเป็นต้องท่องจำทุก option — แค่จำว่าคำสั่งชื่ออะไร แล้วเปิด man ดูรายละเอียดเอาตอนสอบได้ แต่ต้องเปิดให้ คล่อง เพราะเวลามีจำกัด
cd /etc (มีเว้นวรรค) ทำงานได้ แต่ cd/etc (ไม่เว้น) จะ error — ต้องมีช่องว่างคั่นระหว่างคำสั่งกับสิ่งที่ตามมาเสมอDocuments กับ documents คือคนละโฟลเดอร์! ต่างจาก Windows ที่มองว่าเหมือนกัน/ คือจุดสูงสุดของทั้งเครื่อง ส่วน ~ คือบ้านของคุณ (/home/student) คนละที่กันq| คำสั่ง | ทำอะไร |
|---|---|
pwd | บอกว่าตอนนี้อยู่โฟลเดอร์ไหน |
ls | แสดงไฟล์ในโฟลเดอร์ |
ls -l | แสดงแบบละเอียด (ขนาด/วันที่/เจ้าของ/สิทธิ์) |
ls -a | แสดงรวมไฟล์ซ่อน (ที่ขึ้นต้นด้วยจุด) |
cd โฟลเดอร์ | เดินเข้าไปในโฟลเดอร์นั้น |
cd .. | ถอยขึ้น 1 ขั้น |
cd ~ หรือ cd | กลับบ้าน |
cd - | กลับไปโฟลเดอร์ก่อนหน้า |
man คำสั่ง | เปิดคู่มือ (กด q เพื่อออก) |
คำสั่ง --help | ดูสรุป option สั้นๆ |
ปุ่ม Tab | เติมชื่อไฟล์/โฟลเดอร์อัตโนมัติ |
เปิด terminal → รู้ว่าตัวเองอยู่ไหน (pwd) → ดูว่ามีไฟล์อะไร (ls) → เดินไปโฟลเดอร์อื่นแล้วกลับบ้านได้ (cd) → และเปิดคู่มือดูเองได้เมื่องง (man) เท่านี้คุณก็ “เอาตัวรอด” บน command line ได้แล้ว!