OS (Operating System) ที่เป็น Debian และ Ubuntu แล้วล่ะก็ ต้องไม่มีใครไม่รู้จัก คำสั่ง apt-get อย่างแน่นอน
apt-get คืออะไร ??
ระบบปฏิบัติการ Linux ที่เป็น Debian based จะใช้ packaging system ที่ชื่อว่า DPKG ซึ่งเจ้า packaging system ที่ว่าเนี่ย จะทำหน้าที่เป็นผู้ช่วย user อย่างเราๆในการลงโปรแกรมหรือแอพพลิเคชั่นต่างๆ
ทีนี้ถึงแม้ว่าเจ้า DPKG จะช่วยเราทำให้ไม่ต้องไปยุ่งวุ่นวายกับการนั่งคอมไพล์ source code เองเวลาจะลงโปรแกรมซักโปรแกรมนึง แต่มันก็ยังเข้าไปใช้งานได้ยากอยู่ดี ดังนั้นจึงได้มี APT กำเนิดขึ้นมา
APT จะทำหน้าที่เป็นตัวกลางช่วยสื่อสารระหว่างเรา กับ DPKG ผ่านทาง command-line ทำให้เราสามารถสั่งการให้ DPKG ทำงานต่างๆได้ เช่น การล้างแพ็คเกจ, ติดตั้งแพ็คเกจ, อัพเดทแพ็คเกจ
*แพ็คเกจ (package) ใน Linux ก็คือโปรแกรมต่างๆนั่นแหละ
โดยหลักๆแล้ว APT นั้นจะมีคำสั่งอยู่สองคำสั่งด้วยกัน นั่นก็คือ apt-get และ apt-cache
– apt-get จะทำหน้าที่ในการ install, upgrade และ clean packages
– apt-cache จะเอาไว้สำหรับหา packages ใหม่ๆ
1. Updating package database
พิมพ์คำสั่งนี้ลงใน terminal
$sudo apt-get update
Output ที่แสดงออกมาจะมีหลักๆอยู่ 3 แบบด้วยกัน คือ
- hit : ไม่มีการเปลี่ยนแปลงของเวอร์ชั่นแพ็คเกจ (ไม่มีอัพเดทนั่นแหละ)
- ign : แพ็คเกจถูกยกเลิก ซึ่งมีหลายเหตุผลด้วยกันไม่ว่าจะเป็น เพ็คแกจมันเป็นเวอร์ชั่นใหม่ล่าสุดซะจนไม่ต้องเช็ค หรือ มี error ระหว่างรับไฟล์แพ็คเกจมา ซึ่งเป็นเรื่องปกติครับ มันจะขึ้นเตือนเฉยๆ ไม่มีอะไรต้องตกใจไป
- get : มีเวอร์ชั่นใหม่ของแพ็คเกจและจะดาวน์โหลดมาลงที่เครื่องเร า
2. Upgrading installed packages
อัพเกรดแพ็คเกจที่ลงอยู่ในเครื่องเราได้โดยการ
$sudo apt-get upgrade
มาถึงจุดนี้ เชื่อได้เลยว่าหลายคนกำลัง งง กับคำว่า update และ upgrade เรื่องปกติครับ ตรงนี้มันค่อนข้างจะสับสนนิดหน่อย
คำสั่ง apt-get update
แม้จะดูเหมือนทำหน้าที่อัพเดท package ให้เรา แต่จริงๆแล้ว ไม่ใช่ ครับ apt-get update
เพียงแค่อัพเดทฐานข้อมูลของแพ็คเกจให้เรา (package database) เท่านั้น ยกตัวอย่างเช่น ถ้าคุณมีแพ็คเกจ ABC เวอร์ชั่น 13.0 อยู่ในเครื่อง การ update จะไปเช็คว่ามีเวอร์ชั่นใหม่ไหม (เช่น เวอร์ชั่น 14.0) ถ้ามีก็จะ mark ไว้ว่าแพ็คเกจ ABC นี่มีเวอร์ชั่นใหม่นะ แล้วดาวน์โหลดมาเก็บไว้ แต่ยังไม่ได้อัพเกรดตัวแพ็คเพจให้เป็นเวอร์ชั่น 14.0 ให้
ซึ่งหลังจากที่เราอัพเดทฐานข้อมูลเรียบร้อยแล้ว เราจึงจะใช้คำสั่ง apt-get upgrade
เพื่ออัพเกรด (หรือจะเรียก อัพเดท ก็ได้ตามสะดวก) แพ็คเกจที่มีอยู่ในเครื่องเราให้เป็นเวอร์ชั่นล่าสุด
ดังนั้นโดยปกติแล้วเวลาที่เราจะอัพเดทแพ็คเกจใน Linux เราจึงใช้คำสั่งนี้
$sudo apt-get update && sudo apt-get upgrade -y
คืออัพเดทฐานข้อมูลแล้วอัพเกรดแพ็คเกจไปพร้อมกันเลย (-y คือถ้ามีการ confirm อะไรก็ต้อง yes ไปให้หมดแบบอัตโนมัติ ทำให้เราสามารถกดอัพเดททิ้งไว้แล้วเดินไปชงกาแฟชิวๆได้ ไม่ต้องนั่งรอกด yes)
3. Installing new package with apt-get
แน่นอนว่ามีอัพเดท อัพเกรดแล้ว เราก็ต้องมีการลงแพ็คเกจเพิ่มนอกเหนือจากที่มีอยู่ในเครื่ อง ทำได้โดย
$sudo apt-get install package-name
ตัวอย่างก็เช่น สมมติว่าคุณจะลงโปรแกรม(แพ็คเกจ) VLC โปรแกรมเล่นวิดีโอฟรีสุดฮิต สิ่งที่ต้องทำก็เพียงแค่พิมพ์ $sudo apt-get install vlc
ลงไปใน terminal เท่านี้เครื่องเราก็จะมีโปรแกรม VLC ไว้ใช้แล้ว ง่ายสุดๆ
หรือถ้าเราอยากจะลงทีหลายๆตัวพร้อมกัน ก็สามารถทำได้โดย
$sudo apt-get install package-name1 package-name2 package-name3
4. Installing new package without upgrading
ในบางครั้ง คุณอาจจะต้องการที่ติดตั้งแพ็คเกจ แต่ไม่อยากจะอัพเกรดมันถ้าหาก แพ็คเกจนั้นถูกติดตั้งอยู่ในเครื่องอยู่แล้ว (งงมั้ย แต่เชื่อเถอะมันมีจริงๆ)
เราสามารถทำได้เช่นกันโดย
$sudo apt-get install package-name --no-upgrade
5. Removing installed packages
เมื่อมีติดตั้งก็ต้องมีถอนการติดตั้ง วิธีการที่เราจะถอนการติดตั้งนั้นไม่ยากเช่นกัน
$sudo apt-get remove package-name
หรือ
$sudo apt-get purge package-name
ถ้าจำชื่อ package ไม่ได้ ลองกด tab หรือ tabtab (กดสองที) ดูครับ terminal จะลิสต์รายชื่อ package ที่ตรงกันออกมาให้
6. Finding package name and description
ในบางครั้ง เราก็ไม่แน่ใจว่าแพ็คเกจที่เราต้องการนั้นมีอยู่หรือไม่ หรือต้องการจะเชคว่ามันเอาไว้ทำอะไร เวอร์ชั่นไหนแล้ว เราสามารถใช้ apt-cache มาช่วยได้
$sudo apt-cache search package-name
7. Checking package information
ในการที่เราจะดูรายละเอียดทั้งหมดของแพ็คเกจก็สามารถทำได้ เช่นกัน
$sudo apt-cache show package-name
8. apt-get, apt-cache HELP!
ถ้าหากอยากจะรู้ว่า apt ทำอะไรได้อีกบ้าง เข้าไปอ่านด้วยตัวเองได้เลยที่
$apt-get -h
หรือ$man apt-get
และ
$apt-cache -h
หรือ$man apt-cache
มั่นใจได้ 100% เลยว่าถ้าหากคุณกำลังใช้ Ubuntu หรือ Linux ที่เป็น Debian based แล้วนั้นหลีกหนีไม่พ้น apt-get, apt-cache อย่างแน่นอน เพราะฉะนั้นรีบฝึกใช้ไว้เสียแต่เนิ่นๆ ใช้ให้เป็น ใช้ให้คล่อง แล้วคุณจะรู้ว่ามันช่วยคุณได้เยอะมากแค่ไหน
สุดท้ายนี้ขอฝากไว้หนึ่งประโยคเช่นเดิม
การอ่านทำให้คุณ “รู้จัก”
แต่คุณจะไม่มีวัน “เชี่ยวชาญ”
ถ้าเคยไม่เอาไป “ใช้งานจริง”