คำสั่ง ของ User สูงสุด หรือ Root ในลีนุ๊ค SUDO และ CHMOD บน 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 มั่ว จนได้ลง OS ใหม่มาแล้ว ดังนั้นการใช้งาน sudo ควรใช้งานด้วยความระมัดระวัง)

คำสั่ง 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  Write Read  Execute  Write Read  Execute   Write  Read
4 2 1 4 2 1 4 2 1
 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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
คำศัพท์ Antonyms ที่ใช้ในชีวิตประจำวัน
โดย internTk21 จ 08 เม.ย. 2024 11:52 am บอร์ด Microsoft Office Knowledge & line & Etc
0
135
จ 08 เม.ย. 2024 11:52 am โดย internTk21 View Topic คำศัพท์ Antonyms ที่ใช้ในชีวิตประจำวัน
Stress คำศัพท์ภาษาอังกฤษอย่างไรให้ถูกต้อง
โดย internTk21 อ 07 เม.ย. 2024 11:57 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
138
อ 07 เม.ย. 2024 11:57 pm โดย internTk21 View Topic Stress คำศัพท์ภาษาอังกฤษอย่างไรให้ถูกต้อง
การใช้ Intonation ในภาษาอังกฤษ
โดย internTk21 ส 06 เม.ย. 2024 1:46 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
170
ส 06 เม.ย. 2024 1:46 pm โดย internTk21 View Topic การใช้ Intonation ในภาษาอังกฤษ
พื้นฐานการทำ SEO ในเว็บไซต์ เส้นทางสู่การเพิ่มประสิทธิภาพในการค้นหา
โดย athirach.offcial พฤ 04 เม.ย. 2024 4:53 pm บอร์ด Share Knowledge
0
276
พฤ 04 เม.ย. 2024 4:53 pm โดย athirach.offcial View Topic พื้นฐานการทำ SEO ในเว็บไซต์ เส้นทางสู่การเพิ่มประสิทธิภาพในการค้นหา
ลักษณะการทดสอบโปรแกรมที่ไม่เหมาะกับการทดสอบอัตโนมัติ
โดย athirach.offcial พฤ 04 เม.ย. 2024 4:49 pm บอร์ด Software testing
0
297
พฤ 04 เม.ย. 2024 4:49 pm โดย athirach.offcial View Topic ลักษณะการทดสอบโปรแกรมที่ไม่เหมาะกับการทดสอบอัตโนมัติ
Tester trick ข้อควรระวังในการทดสอบโปรแกรม
โดย athirach.offcial พฤ 04 เม.ย. 2024 4:43 pm บอร์ด Software testing
0
100
พฤ 04 เม.ย. 2024 4:43 pm โดย athirach.offcial View Topic Tester trick ข้อควรระวังในการทดสอบโปรแกรม
การทดสอบและบทบาทของผู้ทดสอบโปรแกรมอัตโนมัติในปี 2024
โดย athirach.offcial พฤ 04 เม.ย. 2024 4:38 pm บอร์ด Software testing
0
89
พฤ 04 เม.ย. 2024 4:38 pm โดย athirach.offcial View Topic การทดสอบและบทบาทของผู้ทดสอบโปรแกรมอัตโนมัติในปี 2024
ตัวอย่าง Prefix และ Suffix ในภาษาอังกฤษ
โดย internTk21 พฤ 04 เม.ย. 2024 4:34 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
164
พฤ 04 เม.ย. 2024 4:34 pm โดย internTk21 View Topic ตัวอย่าง Prefix และ Suffix ในภาษาอังกฤษ