ฉันเปลี่ยนพีซีที่ใช้ Windows ให้เป็นเซิร์ฟเวอร์อัตโนมัติด้วย nssm

/th/images/xda-laptop-services-list-feature.jpg

Non-Sucking Service Manager เป็นตัวช่วยบริการที่ติดตั้งโปรแกรมและสคริปต์แบบกำหนดเองเป็นบริการ ซึ่งช่วยให้โปรแกรมเหล่านั้นทำงานอย่างต่อเนื่องในเบื้องหลัง เวอร์ชันเสถียรล่าสุดมีการประทับเวลาในวันที่ 31 สิงหาคม 2014 แต่ยังคงเป็นเครื่องมือที่ขาดไม่ได้ในการพัฒนาและการประมวลผลทางวิชาชีพ

มันถูกใช้มากกว่าการติดตั้งบริการด้วย NSSM ยังสามารถปิดระบบ หน่วงเวลา รีสตาร์ท และแม้แต่ถอนการติดตั้งบริการได้ นอกจากนี้ยังมีตัวเลือกการกำหนดค่าในทุกขั้นตอนของการดำเนินการบริการ ช่วยให้ฉันสามารถเลือกสิ่งที่จะเกิดขึ้นเมื่อบริการเปิดและออก

จริงๆ แล้วฉันใช้ NSSM ในบทความก่อนหน้านี้บทความหนึ่งของฉัน แต่ในตอนนั้น ฉันไม่มีเวลาที่จะเจาะลึกมัน และจริงๆ แล้ว ฉันไม่คิดว่าเครื่องมือที่เปิดตัวย้อนกลับไปเมื่อปี 2550 จะยังคงมีประโยชน์ในปัจจุบัน แต่ถ้ามีอะไรที่อินเทอร์เน็ตสอนไว้ คำสั่ง Windows แบบเก่าก็ยังมีประโยชน์อยู่

บริการ กับ กระบวนการ ต่างกันอย่างไร?

ใน Windows ทุกบริการเป็นกระบวนการ แต่ไม่ใช่ทุกกระบวนการที่เป็นบริการ

แต่ทำไมต้องติดตั้งสิ่งต่าง ๆ เป็นบริการ และแตกต่างจากกระบวนการอย่างไร คำตอบที่ง่ายที่สุดคือกระบวนการนี้เป็นอินสแตนซ์ของโปรแกรมที่ทำงานภายใน Windows ทุกเซสชันของเบราว์เซอร์ (รวมถึงแท็บ), Steam และทีมต่างก็มีกระบวนการของตัวเอง (หรือหลายกระบวนการ เรียกว่า แผนผังกระบวนการ) ความแตกต่างที่ใหญ่ที่สุดระหว่างกระบวนการและบริการก็คือ กระบวนการอาจมีหรือไม่โต้ตอบกับผู้ใช้โดยตรง ในขณะที่บริการจะทำงานอยู่เบื้องหลังอย่างเคร่งครัด นอกจากนี้ Windows ยังจัดการบริการต่างๆ โดยใช้ระบบเฉพาะที่เรียกว่า Windows Service Control Manager (SCM) ซึ่งมักจะจัดกลุ่มบริการต่างๆ ให้เป็นกระบวนการเดียวในตัวจัดการงาน

ทำไมไม่ใช้ Windows Task Scheduler ล่ะ?

การติดตั้งกระบวนการเป็นบริการช่วยให้สถานะการออนไลน์ดีขึ้น

หาก NSSM เป็นเพียงอีกวิธีหนึ่งในการเปิดและรันบริการโดยอัตโนมัติ ทำไมไม่ลองใช้ Windows Task Scheduler ซึ่งดูเหมือนว่าจะทำหน้าที่เดียวกันล่ะ นั่นเป็นเพราะว่าแม้ว่าความสามารถของ Task Scheduler จะรันงานในเหตุการณ์หรือกำหนดการเฉพาะ แต่ก็ไม่มีความถาวรเหมือนที่บริการทำ

ต่างจาก Task Scheduler ตรงที่ NSSM ติดตั้งบริการที่รวมเข้ากับ SCM เพื่อเรียกใช้บริการพื้นหลังอย่างต่อเนื่องก่อนเข้าสู่ระบบ หลังจากออกจากระบบ และรีสตาร์ทอัตโนมัติหากบริการขัดข้อง บริการนี้สามารถใช้ได้กับผู้ใช้ทุกคน ในขณะที่ Task Scheduler จะดำเนินการตามผู้ใช้แต่ละรายเท่านั้นเนื่องจากต้องเข้าสู่ระบบ อย่างไรก็ตาม ด้านที่ทรงพลังที่สุดของ NSSM ก็คือความสามารถในการอนุญาตให้ผู้ใช้ติดตั้งสคริปต์และเครื่องมือที่กำหนดเองเป็นบริการได้ สิ่งที่สำคัญที่สุดคือหากกระบวนการจำเป็นต้องเริ่มต้นเพียงครั้งเดียวและทำงานอย่างต่อเนื่อง (เช่น เซิร์ฟเวอร์ภายในเครื่องหรือตัวตรวจสอบไฟล์) การติดตั้งเป็นบริการก็เป็นทางเลือกที่ดีกว่า หากคุณต้องการให้รันเพียงครั้งเดียวและออกตามผู้ใช้แต่ละราย Task Scheduler เป็นตัวเลือกที่ดีกว่า

การตั้งค่ามีลักษณะอย่างไร?

มันง่ายกว่าที่คุณคิด

/th/images/xda-rustdesk-server-services-windows.png

NSSM ไม่จำเป็นต้องติดตั้งใดๆ เพียงนำทางไปยังหรือป้อนพาธของไฟล์ใน Windows Command Prompt เพื่อเรียกใช้คำสั่ง (เพื่อให้เข้าถึงได้ทั่วโลกในบัญชีของฉัน ฉันได้เพิ่มมันเป็นตัวแปรสภาพแวดล้อม ดังนั้นฉันจึงสามารถเรียกใช้ได้จากทุกที่) แม้ว่าจะสามารถจัดการได้อย่างสมบูรณ์ผ่าน Windows Command Prompt แต่ฉันชอบใช้อินเทอร์เฟซแบบกราฟิกซึ่งสามารถเรียกใช้ได้โดยใช้คำสั่ง “nssm install” ไม่ว่าอินเทอร์เฟซจะโบราณแค่ไหน แท็บ ตัวเลือก และกล่องข้อความก็ทำให้ดูน่ากลัวน้อยลง

เมื่อฉันตั้งค่าเซิร์ฟเวอร์ Windows RustDesk โดยใช้ไคลเอนต์ ฉันใช้ NSSM เพื่อตั้งค่าเซิร์ฟเวอร์รับและส่ง ด้วยการตั้งค่าอาร์กิวเมนต์ “service_auto_start” เซิร์ฟเวอร์ RustDesk สามารถทำงานในพื้นหลังได้ตลอดเวลาและรีสตาร์ทอัตโนมัติเมื่อล้มเหลว

นอกจากนี้ สำหรับเซิร์ฟเวอร์ระยะไกลของฉัน ฉันยังมีสคริปต์เฝ้าระวังที่ส่ง Ping พวกเขาอย่างต่อเนื่องและแจ้งเตือนฉันเมื่อพวกเขาไม่ตอบกลับ Ping ในจำนวนที่กำหนด การติดตั้งสคริปต์เป็นบริการหมายความว่าฉันไม่จำเป็นต้องเรียกใช้สคริปต์ด้วยตนเองทุกครั้งที่บูตเครื่องพีซี เนื่องจากสคริปต์ทำงานในเบื้องหลัง ฉันจึงสามารถคัดลอกเอาต์พุตของสคริปต์ (ในกรณีของฉันคือการประทับเวลา) ไปยังไฟล์บันทึกโดยใช้คำสั่ง “AppStdout” ของ NSSM รวมถึงข้อความแสดงข้อผิดพลาดใดๆ โดยใช้คำสั่ง “AppStderr”

ในบทความที่ฉันเขียนเมื่อไม่กี่สัปดาห์ก่อน ฉันได้พูดถึงวิธีใช้ Task Scheduler เพื่อกำหนดเวลางานล้างข้อมูลและบำรุงรักษา แม้ว่าคำสั่งและสคริปต์ในบทความนั้นสามารถเปลี่ยนเป็นบริการได้ แต่นี่เป็นตัวอย่างที่ฉันเชื่อว่า Task Scheduler เหนือกว่า เนื่องจากการดำเนินการล้างข้อมูลทั้งหมดจะทำงานไม่บ่อยนักตามเวลาที่กำหนด เนื่องจากได้รับการออกแบบมาให้ทำงานและออก Task Scheduler จึงดีกว่าสำหรับสิ่งนั้น อย่างไรก็ตาม หากฉันต้องการตรวจสอบโฟลเดอร์และตัดเนื้อหาอย่างต่อเนื่อง การติดตั้งสคริปต์นั้นเป็นบริการจะช่วยได้อย่างแน่นอน

คำปิดท้ายเรื่องความปลอดภัย

บางคนเรียกมันว่าซอฟต์แวร์เสี่ยง

มีกรณีการใช้งานอีกมากมายที่ NSSM มีประโยชน์ นอกเหนือจากระบบอัตโนมัติส่วนบุคคล ยังมีให้เห็นอย่างกว้างขวางในทุกสิ่งตั้งแต่การใช้งาน Windows แบบอัตโนมัติไปจนถึงระบบ ณ จุดขาย อย่างไรก็ตาม ความสามารถอันทรงพลังในการติดตั้งบริการก็ถือเป็นจุดอ่อนที่ยิ่งใหญ่ที่สุดเช่นกัน เนื่องจากมันถูกเอารัดเอาเปรียบโดยผู้คุกคามเพื่อปรับใช้มัลแวร์ เช่น นักขุด crypto แบ็คดอร์และเพย์โหลดอื่น ๆ ที่ไม่สนุก ด้วยเหตุนี้ ผู้จำหน่ายระบบรักษาความปลอดภัยบางรายจึงจัดประเภท NSSM ว่าเป็นซอฟต์แวร์เสี่ยงแวร์ที่ถูกกฎหมายซึ่งสามารถนำไปใช้ในทางที่ผิดได้ง่าย นอกจากนี้ เนื่องจาก NSSM เวอร์ชันแก้ไขมีไว้เพื่อวัตถุประสงค์ที่เป็นอันตราย การดาวน์โหลดจากแหล่งที่เป็นทางการเท่านั้นจึงเป็นสิ่งสำคัญ

ฉันยังคงหาวิธีใหม่ในการใช้ NSSM หากเครื่องมือนี้เป็นส่วนหนึ่งของขั้นตอนการทำงานของคุณ โปรดแสดงความคิดเห็นและเรายินดีที่จะให้คำแนะนำของคุณ

*️⃣ ลิงค์ที่มา:

คำสั่ง Windows โบราณ, Windows Service Control Manager , เซิร์ฟเวอร์ RustDesk, กำหนดเวลางานล้างข้อมูลและบำรุงรักษา, ผู้จำหน่ายความปลอดภัย ,