อะไรคือ systemctl ที่เทียบเท่ากัน


30

ฉันกำลังแปลงแพคเกจจาก. rpm เป็น. deb โดยใช้บทช่วยสอนนี้ อย่างไรก็ตามในการทดสอบและแก้ไขข้อบกพร่องของแอปพลิเคชันฉันต้องเปิด โปรแกรม readme อธิบายให้เรียกใช้เป็นบริการด้วย:

systemctl enable progname.service
systemctl start progname.service

อะไรคือสิ่งที่เทียบเท่ากับอูบุนตูสำหรับคำสั่งเหล่านี้?


sudo service network-manager restart คือสิ่งที่ฉันกำลังมองหาเมื่อฉันพบสิ่งนี้
Martin Thoma

ตั้งแต่ปี 2018 Ubuntu จะใช้ systemd ที่ใหม่กว่าsystemctl(เช่นเดียวกับระบบใด ๆ ข้างบน Ubuntu 15.04, Debian 8, CentOS 7, Fedora 15 ... ) /usr/sbin/serviceยูทิลิตีเก่าเรียกsystemctlว่า / เมื่อระบบกำลังเรียกใช้ systemd
ไมเคิล

คำตอบ:


12

Ubuntu กำลังวางแผน / พัฒนาเพื่อใช้systemdในอนาคต ดูลิงก์ต่อไปนี้สำหรับข้อมูล: Vivid จะเปลี่ยนเป็นการบูทด้วย systemd ...และบันทึกประจำรุ่น: การจัดการการบูตและบริการ

ฉันใช้ 14.04

คุณสามารถใช้คำสั่งเนทีฟupdate-rc.dเพิ่มเติม ตรวจสอบหน้าคน

การเปิดใช้งานบริการที่มีค่าเริ่มต้น (ดูหน้าคน):

sudo update-rc.d foo_service defaults

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

sudo update-rc.d foo_service remove

โปรดทราบว่าในการลบโดยไม่มีข้อความแสดงข้อผิดพลาดไฟล์foo_serviceจะต้องไม่ปรากฏ อย่างไรก็ตามคุณสามารถบังคับ:

sudo update-rc.d -f foo_service remove

4
อาจจะไม่เกี่ยวกับเรื่องนี้ 15.04 ใช้ systemd
muru

@muru Dou คุณมีการอ้างอิงโปรด? โปรดแก้ไขคำตอบของฉันและแจ้งให้ผู้อื่นทราบ
Ely

1
โพสต์ประกาศสวิตช์ในระหว่างการพัฒนา: lists.ubuntu.com/archives/ubuntu-devel-announce/2015-March/…บันทึกย่อประจำรุ่นของรุ่นสุดท้าย: wiki.ubuntu.com/VividVervet/…
muru

5

systemctl เป็นโปรแกรมควบคุมสำหรับ systemd:

http://www.freedesktop.org/software/systemd/man/systemctl.html

โปรดทราบว่า Ubuntu ไม่ได้ใช้ systemd มันใช้พุ่งพรวดซึ่งทำบางสิ่งเดียวกันในหลักการ แต่มีแนวคิดแตกต่างกันบ้าง

หากปราศจากความรู้เกี่ยวกับ systemd และจากสิ่งที่ฉันอ่านในเอกสารที่ฉันโพสต์ฉันคิดว่าคุณไม่จำเป็นต้อง "เปิดใช้งาน" บริการ เพียงแค่วางไฟล์. config สำหรับบริการของคุณใน / etc / init ควรทำให้ทราบอย่างถี่ถ้วน

แต่นั่นเป็นประเด็นสำคัญของ: ไฟล์กำหนดค่า systemd สำหรับบริการของคุณจะไม่ทำงานบน Ubuntu คุณต้อง "แปล" เป็นรุ่นที่เทียบเท่าสำหรับ Upstart นี่คือเอกสารสำหรับการพุ่งพรวด:

http://upstart.ubuntu.com/cookbook/

เมื่อคุณมีไฟล์ up .art ที่เหมาะสมแล้วคุณสามารถเริ่มบริการ (เทียบเท่าได้กับ systemctl start) โดยใช้:

start your-service

2
ปัญหาคือการเริ่มต้น 13.10, อูบุนตูไม่ logind ใช้ systemd ซึ่งโดยค่าเริ่มต้นระงับแล็ปท็อปเมื่อฝาปิด หากคุณต้องการที่จะล็อคหน้าจอก่อนเกิดเหตุการณ์นี้คุณต้องแขวนบริการ systemd systemctlปิดปิดฝาและจะทำอย่างไรที่คุณดูเหมือนจะจำเป็น ดูforum.xfce.org/viewtopic.php?id=8411และbbs.archlinux.org/viewtopic.php?id=148829ตัวอย่างเช่น
Douglas Bagnall

5

แพ็คเกจเริ่มต้นที่ 14.04 คือแพคเกจsystemd-servicesที่ไม่มีsystemdctlคำสั่ง

อ่าน

คุณจะต้องอ่านบทความวิธีการติดตั้งและทดสอบ Systemd บน Ubuntu 14.04 Trusty Tahr และ Ubuntu 12.04 Precise Pangolinsystemdถ้าคุณต้องการใช้งาน

Pitti PPA

มี PPA ppa:pitti/systemdที่ให้แพคเกจที่เพียงพอสำหรับ LTS 12.04, 14.04 และที่กำลังจะมาถึง

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