16.04 คำสั่งเพื่อแสดงรายการบริการทั้งหมดที่เริ่มต้นเมื่อเริ่มระบบ


21

ฉันติดตั้ง mongodb v3.4 แล้ว สิ่งนี้เริ่มต้นขึ้นในการบูท

ดังนั้นฉันสงสัยว่าฉันจะหาสิ่งที่เริ่มต้นขึ้น (และวิธีการปิดการใช้งานจากการเริ่มต้นในการบูต)?

ต่อไปนี้ไม่ทำงาน:

ฉันจะหยุด mongodb ไม่ให้เริ่มระบบบูทได้ (เก่า)

คำสั่งไปยังรายการบริการที่เริ่มต้นเมื่อเริ่มต้น? (เดิม)


3
service --status-allรายการบริการทั้งหมด คุณสามารถอ้างถึงสิ่งนี้ได้
พระนารายณ์ NK

คำตอบ:


47

เท่าที่ฉันตอนนี้บริการเปิดใช้งานโดยอัตโนมัติในอูบุนตูดังนั้นเมื่อคุณติดตั้งบางอย่างเช่นApacheมันจะเริ่มต้นในการบูต

ค้นหาข้อมูลบางอย่าง

หากต้องการค้นหาบริการทั้งหมดที่เริ่มทำงานเมื่อเริ่มต้น:

systemctl list-units --type service

สิ่งนี้จะแสดงบริการทั้งหมดที่ถูกโหลดเมื่อบู๊ตและเปิดใช้งานทันที หากคุณต้องการรับรายชื่อบริการทั้งหมดไม่ว่าจะเปิดใช้งานหรือไม่:

systemctl list-units --type service --all

อีกสิ่งที่คุณสามารถทำได้คือเรียกใช้:

systemctl list-dependencies --type service

จากนั้นกด/และค้นหาเพื่อmongodbดูว่าservice/ targetขึ้นอยู่กับมันและเรียกใช้มัน

นอกจากนี้คุณสามารถเรียกใช้:

locate mongodb.service

ซึ่งผลิตบางสิ่งเช่น:

/lib/systemd/system/multi-user.target.wants/mongodb.service

จากนั้นคุณจะรู้ว่ามันกำลังเริ่มต้นเป็นส่วนหนึ่งของเป้าหมายผู้ใช้หลายคนทางเลือกนี้คือ:

$ systemctl cat mongodb.service | grep -i wantedby
WantedBy=multi-user.target

ปิดการใช้งาน

หากต้องการทราบว่าหากใช้งานอยู่ (จะทำงานเมื่อเริ่มต้น / บูตเวลา):

systemctl is-active mongodb

มันเป็นอย่างใดอย่างหนึ่งactiveหรือinactive; activeในกรณีของคุณมันควรจะเป็น

หากต้องการหยุดไม่ให้เริ่มต้นในเวลาบูตเราควรปิดการใช้งาน:

sudo systemctl disable mongodb

และเพื่อให้แน่ใจว่าไม่มีสิ่งอื่นใด (ไม่มีบริการอื่น ๆ ) ที่สามารถเริ่มต้นได้เราปิดบัง:

systemctl mask mongodb

ดังนั้นมันจะเชื่อมโยงกับ/dev/nullและไม่สามารถเริ่มโดยอัตโนมัติหรือด้วยตนเองอีกต่อไป

ฉันไม่ทราบmongodbชื่อบริการลองกดปุ่มแท็บที่จะเสร็จสมบูรณ์ ฉันเดามันmongodb;)


systemctl list-units --type serviceจะไม่แสดงบริการของผู้ใช้ สงสัยว่าจะมีวิธีแสดงระบบ = ทั้งหมดและบริการผู้ใช้ทั้งหมดหรือไม่
EDID

sudo update-rc.d mongodb ปิดการใช้งาน
CRTLBREAK

9

หากต้องการทราบว่าบริการถูกเปิดใช้งานในเวลาบูตหรือไม่คำสั่งที่ถูกต้องคือ:

systemctl is-enabled apache2
enabled

คุณสามารถลองด้วยตัวเองโดยเปลี่ยนสถานะด้วย

systemctl enable apache2
systemctl disable apache2

(นี่ไม่ได้มีไว้เพื่อเป็นคำตอบ)


0

ดูที่การตั้งค่า -> เซสชันและการเริ่มต้น -> แอปพลิเคชันเริ่มต้นอัตโนมัติเพื่อดูว่ามีการพูดถึงแอปพลิเคชันของคุณหรือไม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.