RHCSA แบบไทยๆ 02- เข้าใจ Acronym ของ Linux

Panupong Simto
3 min readOct 27, 2018

--

วันนี้ผมจะมาแนะนำ Acronym ของ Linux กันครับ

หากเราลองเปิด Dictionary เราจะพบว่า คำว่า Acronym (ออกเสียงว่า แอ๊ โขร่ นิม ) แปลว่า อักษรย่อ

ในการใช้งาน Command Line ของ Linux เราจะพบว่าคำสั่งมีเป็นร้อยๆพันๆคำสั่ง แต่ละคำสั่งมันก็คือโปรแกรมที่ใช้ทำงานให้เรา หรือแก้ไขปัญหาให้เรา

เพราะฉะนั้น เกือบจะทุกคำสั่งจะต้องมี ตัวย่อ หรือการเขียนให้สั้นลง แต่สื่อความหมายได้ เพื่อให้คนที่ใช้งาน สะดวกพิมพ์ ไม่ต้องพิมพ์คำเต็มยาวๆ ซึ่งไม่เฉพาะแต่คำสั่ง Command Line เท่านั้น แต่รวมไปถึงระบบอื่นๆด้วย เช่นระบบ File System / Directory Name หรือแม้แต่ค่า error ต่างๆ

ถ้าเราเจอของพวกนี้ใน Linux เราไม่ต้องรีบร้อนคิดว่ามันคือคำนั้นตรงตัวเป๊ะๆ ให้เราคิดว่า “มันอาจจะเป็นตัวย่อ (abbreviation) ก็ได้

วันนี้ผมเลยจะจัดกลุ่มตัวย่อสุดฮิต และมาอธิบายด้วยว่ามันย่อแล้วกลายเป็นอะไร

กลุ่มที่ 1 คำสั่ง (Command)ที่ติดมากับ gnu coreutils

coreutils มันถูกย่อครับ จริงๆมันก็คือ Core Utilities แปลว่า แก่นโปรแกรมอรรถประโยชน์ พูดง่ายๆคือชุดโปรแกรมพื้นฐานที่จะติดมาใน Linux ทุกตัว ไม่มีไอ้พวกนี้ก็ไม่ไหวมันก็จะเป็น kernel ที่ว่างเปล่าเกินไป

ถ้าเป็น Windows ละ coreutiles คืออะไรได้บ้าง ?

  • โปรแกรม Copy / Paste
  • โปรแกรม Explorer เปิดดูไฟล์ในโฟลเดอร์ต่างๆ
  • โปรแกรมดูสถานะ CPU / RAM

ผมจะพูดถึง gnu coreutils ของ Linux มีอะไรบ้าง และ acronym , abbreviation ของมันบ่งบอกอะไรบ้าง ผมจะเอามาเฉพาะตัวดังๆ ใช้บ่อยๆนะครับมีดังนี้

  • ls

คนส่วนใหญ่เรียก = แอล-เอส

จริงๆเต็มๆคือ = list (ลิสต์)

หน้าที่ของโปรแกรมนี้คือ = เรียกดูรายการไฟล์ใน Directory ปัจจุบันที่เราทำงานอยู่

  • cp

คนส่วนใหญ่เรียก = ซี-พี

จริงๆเต็มๆคือ = copy (ก๊อปปี้)

หน้าที่ของโปรแกรมนี้คือ = ทำสำเนาไฟล์จากที่นึงไปอีกที่นึง

  • cat

คนส่วนใหญ่เรียก = แคท (และคิดว่ามันคือคำสั่งแมว)

จริงๆเต็มๆคือ = concatenate (คอน แค-ท เนท)

หน้าที่ของโปแกรมนี้คือ = แสดงผลไฟล์ออกมาที่หน้าจอ ส่วนใหญ่ใช้กับไฟล์ข้อความ

เอาแค่นี้ก่อนแบ่งไปกลุ่มอื่นบ้างครับ

กลุ่มที่ 2 Filesystem Hierarchy Standard (FHS)

หมายถึงลำดับชั้นของไฟล์ หรือโครงสร้าง Directory ที่ได้รับการยอมรับแล้วในมาตรฐานของ Linux ซึ่งจะแบ่งตามหน้าที่ของมันต่างกัน และแน่นอนก็ต้องมีตัวย่อ

ลองยกตัวอย่าง Windows อีกครั้ง กรณีนี้จะเทียบกับ Windows ยังไง

  • Windows มี C:\Windows เอาไว้เก็บไฟล์ระบบปฏิบัติการต่างๆ
  • Windows มี C:\Program Files เอาไว้เก็บไฟล์โปรแกรมที่ติดตั้งแล้ว
  • Windows มี C:\Users เอาไว้เก็บไฟล์ของผู้ใช้แต่ละคน

เป็นต้น

Linux ก็เหมือนกัน มี Directory ของระบบที่มีหน้าที่แตกต่างกันเหมือนกัน และเยอะกว่า ละเอียดกว่า ตรงไปตรงมากว่าด้วย (ขอให้คิดง่ายๆไว้ก่อนว่า Directory ใน Linux มันก็คล้ายๆกันมากๆกับ Folder ของ Windows นั่นแหละ)

อะ ลองมาดู Linux FHS Acronym and abbreviations บางอันกันนะครับ

  • /dev

คนส่วนใหญ่เรียก = เดฟ

จริงๆเต็มๆคือ = device (ดี ไวซ์) ซึ่งแปลว่าอุปกรณ์ ใน Linux นั้น ตัวย่อ dev มักจะใช้อ้างอิง Harddisk , DVD-RW Drive , USB Flash Drive เพราะพวกนี้คืออุปกรณ์ที่ใช้อ่านเขียนข้อมูลได้ อย่าไปหลงคิดว่าคือ เดฟ ที่แปลว่าพัฒนา นะครับ คนละเรื่องเลย

เช่น

/dev/sda1

คือ device , sda1 บ่งบอกว่าเป็น Harddisk แบบ SCSI ในสมัยก่อนโน้น สมัยนี้จะมองว่ามันคือ SATA ก็ได้ นั่นก็คือคำอธิบายของตัว s ครับ

ตัว d คือ Disk

รวมกันก็เป็น SCSI Disk

ตัว a คือ ลำดับ Harddisk ที่พบ ก็เรียงไปเรื่อยๆ a-z 26 ลูก (หรืออาจจะเยอะกว่านั้น)

รวมกันก็เป็น SCISI Disk ลูกที่ a

ตัวเลข 1 คือ Partition ที่เจอใน Disk ลูกนี้ 1 คือ partition แรก 2 ก็คือ partition ต่อไปใน Harddisk ลูกนี้ แค่นี้เองง่ายๆ

รวมกันก็เป็น SCSI Disk ลูกที่ a อ้างอิง partition ที่ 1

  • /lib

คนส่วนใหญ่เรียก = หลิบ , ลิบ

จริงๆเต็มๆคือ = library , libraries (ไลบรารี) แปลว่าห้องสมุด ……… ใช่มั้ย ก็ใช่ แต่ในทางคอมพิวเตอร์ library คืออะไร ผมอธิบายง่ายๆงี้ว่า มันคือ “ชุดโปรแกรมที่เตรียมพร้อมจะทำงานบางอย่างให้เราแล้ว ขอแค่เราส่งค่าเข้าไปหามันให้ถูกต้อง” หากคุณจะเขียนโปรแกรมคำนวณเกรดนักเรียน แต่ต้องการทำให้มันเป็นกราฟสวยๆ คุณไม่จำเป็นไปนั่งเขียนโค้ดโปรแกรมสร้างกราฟ คนอื่นเขาเขียนไว้แล้ว ก็ไปใช้ libgraph ก็ได้ เหมือนห้องสมุด มีหนังสือมากมาย คุณจะเข้าใจเรื่องๆนึง คุณก็ไปอ่านหนังสือเล่มนึง แต่ในหนังสือเล่มนั้น พออ่านไปเรื่อยๆ คุณดันเจอภาษาฝรั่งเศส คุณไม่รู้ว่ามันคืออะไร คุณก็เดินเข้าไปหาในห้องสมุดเพื่อไปหาว่ามี Dictionary ภาษาฝรั่งเศสมั้ย เพื่อที่จะแปลมัน ถ้ามี ก็เอามาเปิดอ่าน ใช้งาน แปล จบ แต่ถ้าไม่มี ก็ต้องเริ่มเรียนภาษาฝรั่งเศสเอง แน่นอนในห้องสมุดก็จะมีหนังสือเยอะแยะมากมาย เหมือนโปรแกรมที่ตอนนี้มี lib ให้ใช้เยอะแยะมากมายเช่นกัน

  • /etc

คนส่วนใหญ่เรียก = อี ที ซี

จริงๆเต็มๆคือ = etcetera (เอ้ด เซ เท หร่า) แปลว่า เป็นต้น

อีทีซี ( /etc ) ของ linux เป็นอะไรที่สิ้นคิดเหมือนกัน แต่ผมก็เข้าใจเค้านะ กล่าวคือ เค้าจะนิยมเอา config โปรแกรมต่างๆไว้ในเนี้ย มันก็เลยมี Directory ย่อยๆอีกเยอะเลย แยก Directory ตามโปรแกรมไป ตัวอย่าง

ที่ผมบอกว่าสิ้นคิดก็เพราะแบบนี้แหละ คือมันชอบเอาอะไรมาลงที่นี่กันหมด สมชื่อมัน etc ภาษาไทยก็นะ … คืออะไรละ… ฯลฯ (เก้า ลอ เก้า) ประมาณนั้นน่ะ ประมาณแบบ อะไรก็แล้วแต่น่ะครับ อะไรก็ลงตรงนี้ได้

ถ้า Windows มี control panel ไว้คอยปรับแต่งระบบและโปรแกรมเบื้องต้น

linux ก็มี etc ไว้ทำหน้าที่ทำนองนี้เช่นกัน ต่างกันที่ linux เป็น open source เราสามารถปรับแต่งแก้ไข config ในระดับไฟล์ได้เต็มที่ แก้ถูกก็ดี หล่อเหลา ระบบ optimize แก้ผิดแก้มั่ว ก็พังเหมือนกัน (มาถึงจุดนี้คงไม่ต้องอธิบาย open source แล้วมั้งครับ)

  • /bin

คนส่วนใหญ่เรียก = บิน

จริงๆเต็มๆคือ = binary (ไบ นา รี่)

ไบนารี่ คือ 0 กับ 1 …….. ไม่เอาสิ ผมไม่กำปั้นทุบดินแบบนั้น binary ในที่นี้คือ ไฟล์ที่ใช้ประมวลผล ไฟล์โปรแกรม ยังไม่เข้าใจใช่มั้ย ?

Windows Binary ที่เห็นชัดที่สุดคือ ไฟล์นามสกุล .exe แหละ setup.exe งี้ EXCEL.exe งี้

Linux ก็เหมือนกัน Binary ไฟล์คือเอาไว้ประมวลผล โปรแกรมต่างๆก็จะเก็บไว้ในนี้ เพราะคือโปรแกรมที่ใช้ Run ขึ้นมา เช่น cat

จากภาพผมพิมพ์คำสั่ง ls -l ใน directory /bin มันก็จะ list รายการไฟล์ออกมา ซึ่งตามชื่อที่ผมเขียนไงครับ Binary ในนี้ก็จะมีไฟล์โปรแกรมเต็มไปหมด ทั้ง cat , cd , alias เป็นต้น

เอาแค่นี้ก่อนแล้วกันเดี๋ยวจะยาวมากเกินไป

ไว้ต่อกัน blog หน้าครับ

--

--

No responses yet