คำสั่งพื้นฐานของ Linux

SUDO หรือ Super User Do (ซูปเปอร์ ยูเซอ ดู) คือคำสั่งที่ใช้สำหรับเปิดใช้สิทธิ์การ ROOT (รูท) และเราจะเห็นใช้งานกันมากในเครื่อง Linux เพื่อที่เราจะสามารถจัดการกับไฟล์และโฟลเดอร์ต่างๆ หรือติดตั้งโปรแกรมเพิ่มเติมได้ เมื่อเราป้อนคำสั่ง sudo นำหน้าคำสั่งต่างๆ จะทำให้เรามีสิทธิ์เท่ากับยูสเซอร์ในระดับ root ถึงแม้ว่าจะล็อคอินผ่านยูสเซอร์ธรรมดาก็ตาม  พอมาถึงจุดนี้ ทุกคนอาจจะเข้าใจว่า ถ้ายูสเซอร์ทุกคนสามารถพิมพ์คำสั่ง sudo ได้ ก็หมายความว่า ความปลอดภัยของระบบก็ไม่มี เพราะทุกคนก็สามารถใช้สิทธิ์ root ยูสเซอร์โดยพิมพ์ sudo นำหน้าคำสั่งได้ แต่อันที่จริง ไม่ใช่ยูสเซอร์ทุกคนจะได้รับสิทธิ์นี้ เราจะต้องมีการระบุ ว่ายูสเซอร์คนใดสามารถรับสิทธิ์เป็น superuser หรือ root ได้ เนื่องจากตามที่โปรแกรมกำหนดมาให้มีเพียงยูสเซอร์ pi เท่านั้นที่เป็นยูสเซอร์ซึ่งได้รับสิทธิ์การใช้คำสั่ง sudo มาโดยอัตโนมัติ จึงสามารถใช้สิทธิ์การเป็น root ยูสเซอร์ได้  แต่ถ้าเราสร้างยูสเซอร์คนใหม่ จะต้องมีการกำหนดสิทธิ์การใช้คำสั่ง sudo เสียก่อน หากผู้ใช้คนใดไม่ได้ถูกระบุให้สามารถใช้ sudo  ผู้ใช้คนนั้นก็จะไม่สามารถใช้คำสั่ง sudo เพื่อใช้สิทธิ์การเป็น root ยูสเซอร์ได้ ถ้าจะให้เข้าใจง่ายๆคือการใช้ sudo นั้นเวลาที่ท่านใช้จริง หลังจากพิมพ์ sudo เพื่อทำอะไรสักอย่าง มันจะให้เราใส่รหัสผ่านไปก่อน

โปรดทราบว่า การใช้คำสั่ง su นั้น ทำให้เรามีเวลาคิดทบทวนก่อนใช้คำสั่งนั้นๆ เพราะคำสั่งใน OS ตระกูล Linux ในฐานะ root นั้น ทำได้ทุกอย่าง และทันที ไม่สามารถ undo ได้ ควรใช้งานด้วยความระมัดระวัง

คำสั่ง sudo เบื้องต้น

sudo apt-get update                        คือ อัพเดทฐานข้อมูลของแพ็กเก็จทั้งหมด รันคำสั่งนี้เมื่อเปลี่ยนแปลงไฟล์ /etc/apt/sources.list
sudo apt-cache search <keyword> คือ ค้นหาแพ็กเก็จที่ต้องการติดตั้ง เช่น sudo apt-cache search firefox

sudo apt-get install <package>       คือ การดาวน์โหลด และติดตั้งแพ็กเก็จ
sudo apt-get -d install <package>   คือ ดาวน์โหลดแพ็กเก็จเก็บไว้ใน /var/cache/apt/archives แต่ไม่ติดตั้ง
sudo apt-cache show <package>   คือ แสดงข้อมูลรายละเอียดของแพ็กเก็จ
sudo apt-get upgrade                     คือ เชคดูว่าแพ็กเก็จที่ติดตั้งไปทั้งหมดมีเพ็กเก็จใดมีการอัพเดทบ้าง ต่อจากนั้นก็จะถามว่าต้องการดาวน์โหลดและติดตั้งหรือไม่

sudo apt-get autoclean                  คือ ลบแพ็กเก็จที่ดาวน์โหลดมาไม่สมบูรณ์ หรือแพ็กเก็จที่ไม่ได้ใช้ติดตั้งแล้ว
sudo apt-get clean                         คือ ลบทุกแพ็กเก็จที่ดาวน์โหลดมาเก็บอยู่ที่ /var/cache/apt/archives
sudo apt-get -f install                     คือ กรณีที่มีความผิดพลาดเกิดขึ้นในขณะที่กำลังติดตั้งแพ็กเก็จ เช่น สั่งยกเลิก หรือ ไฟฟ้าดับ แล้วใช้คำสั่ง apt-get install                                                                แล้วมีข้อความ error สามารถใช้คำสั่ง apt-get -f install ช่วยแก้ปัญหาได้ sudo apt-config -v คือ แสดงเวอร์ชัน และ                                                                    ราย ละเอียดของ APT utilities

sudo apt-get remove <package>  คือ ลบแพ็กเก็จที่ติดตั้งไปแล้ว
sudo apt-get purge name              คือ เหมือนกับ remove แต่จะลบ ไฟล์คอนฟิคด้วย
sudo add-apt-repository ppa:name คือ เพิ่ม repository (ต้องลง python-software-properties ก่อน)

CHMOD

CHMOD คือ ค่า Permission หรืออธิบายเป็นไทยคือ ค่าของความมีสิทธิ์ในการเข้าถึง และใช้งาน File หรือ Directory นั้น ๆ ซึ่ง CHMOD จะมีค่าต่าง ๆ แบ่งเป็นตัวเลข 3 หลัก เช่น 755, 777 เป็นต้น ในความหมายของเลขแต่ละหลักทั้ง 3 หลัก จะมีความหมายดังนี้

 ตารางแบ่งตามกลุ่มผู้ใช้
 Owner(หลักที่1) Group(หลักที่ 2)Others & Public (หลักที่3)
Execute WriteRead Execute WriteRead Execute  Write Read
421421421
 Example : 755 = Owner (7), Group (5), Other (5)

 *Owner คือ เจ้าของไฟล์, Group คือ กลุ่มผู้ใช้งานรวมกับเจ้าของไฟล์, Other & Public คือ กลุ่มผู้ใช้งานจากภายนอก

Execute คือการ อนุญาตให้สั่งไฟล์หรือ Directory

Write คือการ อนุญาตให้เขียนไฟล์หรือ Directory

Read คือการ อนุญาตให้อ่านไฟล์หรือ Directory

ยกตัวอย่างเช่น 777 ก็คือ เปิดสิทธ์ทั้งหมดกลุ่มผู้ใช้ โดยที่

Owner(หลักที่1) จะนำเอา 4+2+1=7 

Group(หลักที่ 2) 4+2+1=7 

Others & Public (หลักที่3) 4+2+1=7

ผลลัพท์คือ 777