การปิด service ต่างๆใน แต่ละ runlevel ของ Ubuntu

service ต่าง ๆที่รันใน ubuntu จะถูกกำหนดใน script ที่อยู่ในโฟลเดอร์  rc.d  ซึ่งอยู่ใน /etc ซึ่งโฟลเดอร์ rc.d นั้นจะใช้ตัวเลขในการกำหนดเลเวลในการ boot เช่น ถ้า boot ขึ้นมาใน runlevel 2 ก็จะรันสคริปต์ใน rc2.d หรือ ถ้ารันแบบ single mode ก็จะรันสคริปต์ใน rcS.d เป็นต้น

เราสามารถตรวจสอบว่า ระบบรันอยู่ในเลเวลใดโดยใช้คำสั่ง

$ runlevel

โดยปกติถ้าเราติดตั้ง ubuntu แบบ desktop จะถูกกำหนดค่าเบื้องต้นเป็น runlevel 2 ครับ

คราวนี้ลองเข้าไปสำรวจไฟล์สคริปต์ใน runlevel 2 โดยจะถูกเก็บไว้ที่ /etc/rc2.d จะสังเกตว่า เป็นไฟล์ลิงค์ไปที่ /etc/init.d อีกทีหนึ่งครับ โดยรูปแบบการตั้งชื่อจะประกอบด้วย อักษรภาษาอังกฤษ1ตัว+ตัวเลข 2 ตัว แล้วตามด้วยชื่อไฟล์สคริปต์ที่อยู่ใน /etc/init.d โดย ถ้าตัวอักษรนำหน้าเป็น S คือกำหนดให้รันสคริปต์ ส่วน K คือปิดการทำงานของสคริปต์ ยกตัวอย่างใน rc2.d ในเครื่องผมมี service ชื่อ bluetooth เปิดอยู่ซึ่งผมไม่ต้องการเพราะเครื่องผมไม่มี bluetooth  ซึ่งรูปแบบของไฟล์ เป็นดังนี้

S25bluetooth

วิธีการปิด service ตัวนี้ตามที่ผมอ่านใน README
1. เปลี่ยนตัว S ให้เป็น K เพื่อยกเลิกการรันสคริปต์นี้
2. รันสคริปต์ update-rc.d script defaults เพื่อจัดเรียงหมายเลขใหม่(หมายเลขจะบอกลำดับของการรัน service) ซึ่งมีผลต่อ dependency ของ service ต่าง ๆครับ

ในที่นี้ผมเปลี่ยนชื่อไฟล์เป็น K25bluetooth และรันคำสั่ง
$ sudo mv S25bluetooth  K25bluetooth
$ sudo update-rc.d bluetooth defaults

ลอง boot เครื่องใหม่แล้วดู service ทั้งหมดจะพบว่าไม่มี blootooth service รันอยู่ครับ : )
คำสั่งในการดู service ทั้งหมด นะครับ
$ service –status-all    (จะแสดงเครื่องหมาย ? ซึ่งหมายถึง service ที่ไม่ได้รันอยู่ครับ)
หรือ
$ initctl list  (จะแสดงเฉพาะ serviceที่รันอยู่)

ข้อมูลเพิ่มเติม
https://help.ubuntu.com/community/UbuntuBootupHowto

Advertisements

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

Up ↑

%d bloggers like this: