systemctl start/stop service: วิธีการตั้งค่า Upstart Script และ Respawn Process ใน Ubuntu, CentOS, Redhat Linux

เผยแพร่แล้ว: 2021-06-09

Linux systemd พุ่งพรวด - สคริปต์พุ่งพรวด

จะเขียนสคริปต์เริ่มต้นสำหรับ systemd ได้อย่างไร?

systemd เป็น service management utility ล่าสุดในเวอร์ชันล่าสุดของ Linux เช่น Ubuntu OS, Redhat OS, CentOS

นั่นเป็นสาเหตุที่เวอร์ชัน Ubuntu 17.4 และ Redhat 7.4 รองรับ systemctl command เป็นสคริปต์พุ่งพรวด หากคุณใช้ Linux OS เวอร์ชันเก่า คุณอาจต้องดูที่ด้านล่างสุดของหน้านี้เพื่อดู init.d script ที่เก่ากว่า

เราจะพูดถึงสิ่งต่าง ๆ ด้านล่างในบทช่วยสอนนี้

  • การตั้งค่าหน่วยบริการ systemd
  • จะ configure systemd ได้อย่างไร?
  • วิธี enable งาน systemd?
  • เริ่มต้นกระบวนการโดยอัตโนมัติโดยใช้ systemd อย่างไร?
  • จะหยุดและ respawn กระบวนการใหม่โดยใช้ systemd ได้อย่างไร?

ขั้นตอนการตั้งค่าสำหรับบทช่วยสอนนี้:

Prerequisite: เราได้คอมไพล์โปรแกรม CrunchifyAlwaysRunningProgram.java เวอร์ชันที่คอมไพล์ไว้ที่โฟลเดอร์ /tmp/crunchify กระบวนการจาวานี้จะทำงานในพื้นหลังตลอดไป คุณสามารถดาวน์โหลดโปรแกรมได้จากที่นี่

เมื่อคุณดาวน์โหลดแล้ว try to compile และรันมันเพื่อให้แน่ใจว่าใช้งานได้

คุณสามารถพิมพ์ CTRL + C เพื่อออกจากโปรแกรม

มาเริ่มกันที่การตั้งค่าสคริปต์เริ่มต้นระบบอัตโนมัติของ systemd สำหรับโปรแกรมด้านบน

ขั้นตอนที่ 1

  • ไปที่โฟลเดอร์ /lib/systemd/system
  • พิมพ์ cd /lib/systemd/system

ขั้นตอนที่ 2

  • สร้างไฟล์ crunchify.service (เปลี่ยนชื่อไฟล์ตามนั้น)
  • ใส่เนื้อหาด้านล่างลงไป

ขั้นตอนที่ 3

  • บันทึกไฟล์
  • ให้สิทธิ์ดำเนินการโดยใช้ chmod 755 crunchify.service

ขั้นตอนที่ 4

  • โหลด crunchify.service โดยใช้คำสั่ง systemctl daemon-reload
  • เปิดใช้งาน crunchify.service โดยใช้คำสั่ง systemctl enable crunchify.service
  • เริ่ม crunchify.service โดยใช้คำสั่ง systemctl start crunchify
  • ตรวจสอบสถานะของ crunchify.service โดยใช้คำสั่ง systemctl status crunchify

ขั้นตอนที่ -5

  • ตอนนี้ตรวจสอบว่ากระบวนการทำงานอยู่หรือไม่ ??
  • พิมพ์คำสั่ง ps -few | grep java ps -few | grep java เพื่อดูกระบวนการ Java ที่ทำงานอยู่ทั้งหมด
  • คุณควรเห็นอะไรแบบนี้

นั่นหมายความว่ากระบวนการ 28631 กำลังเริ่มต้นโดยใช้สคริปต์พุ่งพรวดของคุณ คุณอาจมี ID กระบวนการที่แตกต่างกัน

จะตรวจสอบได้อย่างไรว่า systemd crunchify.service ของคุณทำงานหรือไม่?

  • พยายามฆ่ากระบวนการโดยใช้ kill -9 28631 และคุณจะเห็นว่าควรสร้างกระบวนการใหม่โดยอัตโนมัติ
  • ในกรณีของฉัน ID กระบวนการใหม่ 28887 สร้างแล้ว

วิดีโอ: ตัวอย่างการตั้งค่าสคริปต์พุ่งพรวด Live systemd ที่สมบูรณ์:

วิดีโอนี้มี - วิธีการตั้งค่าสคริปต์เริ่มต้น / พุ่งพรวด systemd ใน CentOS, Redhat, Ubuntu Linux OS

  • วิธีรันเชลล์สคริปต์โดยอัตโนมัติเมื่อบูตเครื่องเริ่มต้น
  • วิธีสร้างบริการ systemd ใน Linux (CentOS 7)
  • วิธีกำหนดค่าบริการ Linux ให้เริ่มทำงานโดยอัตโนมัติ
  • สคริปต์เริ่มต้นระบบ Centos 7 systemd
  • สคริปต์เริ่มต้นระบบ Ubuntu

ต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ systemd หรือไม่? นี่คือแผ่นโกงสำหรับการอ้างอิงของคุณ

สูตรโกงคำสั่ง Linux Systemd

ฉันหวังว่าคุณจะเรียนรู้ everything about systemd command และการตั้งค่าสคริปต์พุ่งพรวดบน Linux OS ทุกประเภท

หยุด: สำหรับระบบปฏิบัติการเวอร์ชันเก่าเท่านั้น

หากคุณใช้ Redhat, Ubuntu, CentOS เวอร์ชัน older version คุณจะต้องมีสคริปต์ในรูปแบบนี้

  • ไปที่ /etc/init
  • สร้างไฟล์ crunchify.conf

  • เพียงแค่เริ่มบริการโดยใช้คำสั่ง service crunchify start
  • ทำตามขั้นตอนการตรวจสอบเดียวกับด้านบน

แจ้งให้เราทราบหากคุณพบปัญหาในการใช้งานสคริปต์พุ่งพรวดในสภาพแวดล้อมของคุณ สนุกกับวันของคุณและมีความสุขในการเข้ารหัส