سافت گذر دانشنامه نرم افزار - دانلود رایگان نرم افزار

اطلاعیه های مهم سایت اطلاعیه های مهم سایت
💐 میلاد زینت پدر حضرت زینب سلام الله علیها مبارک باد 💐
 
 
  1. جهت رفع مشکل باز شدن سایت به دلیل بلاک توسط  نود 32 این ویدیو یا این ویدیو(ورژن 9 به بالا) یا راهنمای تصویری را مشاهده کنید
  2. به مناسبت عید غدیر، در سایت https://esetupdate.ir/ تخفیف ویژه‌ای برای محصولات در نظر گرفته شده است؛ فرصت را از دست ندهید. 🌸
  3. اکانت های بروزرسانی نود32 با قیمت های مناسب به صورت یک ، سه ، شش و دوازده ماهه از اینجا قابل خرید می باشد.

نرم افزار های پرکاربرد

ثبت نام | ورود
wepido.ir

اسکریپت خودترمیم‌شونده برای رزبری‌پای؛ خداحافظی با SSH برای کارهای تکراری

اسکریپت خودترمیم‌شونده برای رزبری‌پای؛ خداحافظی با SSH برای کارهای تکراری

یک کاربر با استفاده از رزبری‌پای زیرو ۲ دبلیو (Raspberry Pi Zero 2 W) یک سرور کوچک شبکه راه‌اندازی کرده که پاسخ به پرس‌وجوهای DNS ورودی را با ترکیب Unbound و Pi-Hole انجام می‌دهد. چند کانتینر Docker نیز برای پایش و داشبورد در نظر گرفته شده و Tailscale بیرون از این کانتینرها برای دسترسی از راه دور و در صورت نیاز Tailscale Serve مستقر شده است.

این مجموعه به‌خوبی کار می‌کند، اما هر از گاهی یک سرویس دچار اختلال می‌شود و نخستین راه‌حل، اتصال SSH به رزبری‌پای برای بررسی مشکل است. همین تجربه‌ها کاربر را به فکر اسکریپتی انداخته که در پس‌زمینه اجرا شود، سرویس‌های غیرفعال را شناسایی کند و مانند یک نگهبان (Watchdog) آن‌ها را بدون دخالت انسان ترمیم کند.

چرا دسترس‌پذیری DNS اهمیت دارد؟

وقتی صحبت از ابزارهای شبکه‌ای روی یک برد تک‌برد (SBC) مانند Raspberry Pi Zero 2 W باشد، مهم‌ترین دغدغه زمان کارکرد (Uptime) است. در حالت ایده‌آل سرور نباید هیچ‌گاه از دسترس خارج شود، اما این همیشه ممکن نیست. یک سرویس، فرایند یا نمونه Docker معیوب می‌تواند سرور را غیرقابل استفاده کند.

اگر کاربر پشت رایانه شخصی باشد یا داشبورد را در مرورگر باز کرده باشد، می‌تواند ببیند کدام کانتینرها از کار افتاده‌اند. اما وقتی هر پرس‌وجوی جست‌وجو از رایانه به سرور Raspberry Pi Zero 2 W می‌رسد، این روش چندان کارآمد نیست. برخی سرویس‌ها مانند Tailscale نیز چون بیرون از Docker مستقر شده‌اند، در داشبورد نمایش داده نمی‌شوند و در صورت خرابی، دسترسی به سیستم از خارج خانه از دست می‌رود.

ساخت اسکریپت خودترمیم

بسیاری از کاربران سامانه‌ای برای رهگیری و هشدار هنگام از کار افتادن Docker یا سرور می‌سازند؛ چنین سامانه‌ای مشکل را اطلاع می‌دهد اما کاری برای بازگرداندن وضعیت کاری انجام نمی‌دهد. از سوی دیگر، منابع سخت‌افزاری برد تک‌برد انتخابی محدود است. Raspberry Pi Zero 2 W می‌تواند کل این مجموعه را اجرا کند، اما توان اجرای ابزارهایی مانند Uptime Kuma و Grafana را ندارد.

به همین دلیل یک اسکریپت گزینه هوشمندانه‌ای است؛ زیرا هنگام راه‌اندازی بارگذاری می‌شود و در بازه‌های زمانی کوتاه در پس‌زمینه اجرا می‌شود. کاربر برای رسیدن به این هدف با Gemini و ChatGPT آزمایش کرده و در نهایت از اسکریپت دومی استفاده کرده است. این اسکریپت بین بررسی‌ها فاصله می‌گذارد و سرور را با نخستین خطا ری‌استارت نمی‌کند.

اسکریپت ابتدا بررسی می‌کند که Docker فعال است یا نه، سپس وضعیت کانتینرها را بازرسی می‌کند و هر چیزی را که در حال اجرا نیست، دوباره راه‌اندازی می‌کند. پس از آن با یک پرس‌وجوی DNS بررسی می‌کند که Pi-Hole فعال است یا نه و سپس در صورت نیاز آن را ری‌استارت می‌کند. Unbound نیز بررسی مشابهی می‌شود و در ادامه سرویس Tailscale تحلیل می‌شود.

حتی اگر همه‌چیز کار کند، ممکن است اینترنت قطع باشد؛ برای این حالت هم بررسی وجود دارد. اسکریپت تنها زمانی راه‌اندازی مجدد سیستم را آغاز می‌کند که چند بررسی پشت‌سرهم شکست بخورند و نتیجه را در یک فایل لاگ ذخیره می‌کند. یک تایمر نیز اسکریپت را وادار می‌کند پس از مدت کوتاهی دوباره اجرا شود؛ دلیل اصلی این کار، جلوگیری از اجرای مداوم آن در حافظه است، زیرا چنین چیزی برای یک برد تک‌برد تجملی محسوب می‌شود.

فراتر از سیاست‌های ری‌استارت Docker

Docker از سیاست‌های ری‌استارت (Restart Policies) پشتیبانی می‌کند و می‌توان آن‌ها را در فایل پیکربندی بررسی کرد. اما فقط ری‌استارت کردن کانتینر، سایر مشکلات موجود روی سرور را بررسی نمی‌کند. کاربر برای همه کانتینرها از سیاست ری‌استارت استفاده می‌کند، اما اسکریپت به‌عنوان یک لایه حفاظتی اضافی عمل می‌کند و کل سیستم Docker را همراه با Tailscale و بررسی اتصال شبکه خارجی مدیریت می‌کند.

اسکریپت بررسی می‌کند که Pi-Hole واقعاً کار می‌کند و حل‌کننده DNS یعنی Unbound را آزمایش می‌کند. اگر چیزی غیرعادی باشد، در لاگ ثبت می‌شود و سپس اسکریپت تلاش می‌کند آن را برطرف کند. به‌طور مشابه، وجود یک فرایند Tailscale به معنای فعال بودن واقعی سرویس نیست؛ اسکریپت سرویس را ری‌استارت می‌کند تا دوباره کار کند. Docker هیچ بررسی‌ای بیرون از کانتینرها پیاده‌سازی نمی‌کند.

بخشی از کد حتی بررسی می‌کند که برد تک‌برد می‌تواند به شبکه خارجی متصل شود. اسکریپت تلاش می‌کند یک شبکه خارجی را پینگ کند و نتیجه را ثبت می‌کند. این اسکریپت مانند یک تازه‌کار عمل نمی‌کند و با عجله فرمان راه‌اندازی مجدد سیستم را صادر نمی‌کند. ری‌استارت تنها زمانی رخ می‌دهد که چند بررسی شکست بخورند و راه دیگری جز شروع دوباره باقی نماند.

البته این اسکریپت بسیار مفصل، سرور Raspberry Pi را کاملاً ضدخطا نمی‌کند. بهترین توصیف این است که نیاز به عیب‌یابی‌های پایه را از بین می‌برد. کارهای خسته‌کننده را انجام می‌دهد و همه نتایج را در یک فایل لاگ برای بررسی بیشتر ارائه می‌کند. بنابراین یک خط پایه برای مرجع و آزمایش‌های بعدی در اختیار دارید یا می‌توانید اقدام‌های پیشرفته‌تری مانند بازسازی کانتینرها انجام دهید.

SSH را برای کارهای مهم نگه دارید

SSH نخستین چیزی است که هنگام کار با یک برد تک‌برد یاد می‌گیرید. صفحه‌ای برای تماشا وجود ندارد و باید به دسترسی ترمینال و دانش خود تکیه کنید. اما اتصال SSH به برد برای کارهای جزئی مانند ری‌استارت یک سرویس یا بررسی‌های پایه شبکه و وضعیت، اتلاف وقت است. یک اسکریپت Bash می‌تواند همه این کارها را ترکیب کند، در زمان‌بندی مشخص اجرا کند و مشکلات کوچک را خودش برطرف کند. ممکن است مجموعه متفاوتی از کانتینرهای Docker و ابزارهای نصب‌شده مستقیم داشته باشید، بنابراین باید اسکریپت را متناسب با نیاز خود تغییر دهید.

در پایان، Raspberry Pi Zero 2 W یک برد تک‌برد کوچک با قابلیت Wi-Fi و بلوتوث است.

نظرتان را ثبت کنید کد خبر: 55161 گروه خبری: اخبار نرم افزار منبع خبر: XDA Developers تاریخ خبر: 1405/07/14 تعداد مشاهده: 88
اخبار مرتبط با این خبر
نظر های کاربران
سرور آپدیت نود 32
پیشنهاد سافت گذر
Titan Souls

Titan Souls

ارواح تایتان

اقسام صبر از زبان آیت الله حسین مظاهری

اقسام صبر از زبان آیت الله حسین مظاهری

اقسام صبر از زبان آیت الله حسین مظاهری

ابرقدرت شرق

ابرقدرت شرق

رقابت های ژئوپلیتیک در قرن 21

Hotel Mogul

Hotel Mogul

خرید و فروش ملک و زمین جهت احداث هتل

Adobe Lightroom Classic 2026 15.6 / 2025 14.5.2 / 13.3.1 / 2023 / 2022 / 2021 / 2020 / macOS

Adobe Lightroom Classic 2026 15.6 / 2025 14.5.2 / 13.3.1 / 2023 / 2022 / 2021 / 2020 / macOS

فوتوشاپ لایتروم کلاسیک

Undertale

Undertale

فکری و معمایی برای کامپیوتر

تلاوت مجلسی استاد جواد فروغی سوره مبارکه نصر

تلاوت مجلسی استاد جواد فروغی سوره مبارکه نصر

سوره نصر جواد فروغی

GiliSoft AI Toolkit 10.10

GiliSoft AI Toolkit 10.10

هوش مصنوعی

Adobe Dreamweaver CS5.5 v11.5 Build 209 ME + Portable

Adobe Dreamweaver CS5.5 v11.5 Build 209 ME + Portable

دریم ویور

سلام پاریس من

سلام پاریس من

آموزش زبان فرانسوی

Maxon CINEMA 4D Studio 2027.0 / macOS

Maxon CINEMA 4D Studio 2027.0 / macOS

مکسون سینما فور دی

CloneCD 5.3.4.0

CloneCD 5.3.4.0

نرم افزار کپی از انواع CD و DVD قفل دار و خش دار با دقت بالا

Lindo Lingo 18.0.44

Lindo Lingo 18.0.44

حل مسائل برنامه ریزی خطی

Lynda - Spring Design Patterns

Lynda - Spring Design Patterns

آموزش اسپرینگ طراحی الگوها

Adobe Dreamweaver 2021 21.8.1 / 2020 / macOS

Adobe Dreamweaver 2021 21.8.1 / 2020 / macOS

ادوبی دریم ویور

Hexodius

Hexodius

هکسودیوس

Norton Internet Security 2024 22.24.8.36 + Offline Update

Norton Internet Security 2024 22.24.8.36 + Offline Update

نورتون اینترنت سکیوریتی

Sketch Guru 1.4.2 for Android

Sketch Guru 1.4.2 for Android

طراحی با رنگ ها

PCMark 2.0.3716 for Android +4.1

PCMark 2.0.3716 for Android +4.1

بنچمارک گوشی

VMware ThinApp Enterprise 2312 Build 23148499

VMware ThinApp Enterprise 2312 Build 23148499

ساخت پرتابل

Puzzle Man 2.2 for Android

Puzzle Man 2.2 for Android

پازل

Way of the Hunter - Outfits Pack

Way of the Hunter - Outfits Pack

شبیه‌ساز شکار حیوانات مختلف برای کامپیوتر

Lynda - Spring 5.0 and Spring Boot 2.0 New Features

Lynda - Spring 5.0 and Spring Boot 2.0 New Features

آموزش اسپرینگ 5 و اسپرینگ بوت 2

DAEMON Tools Lite 12.6.0.2470 / Pro 8.3.0.0742 / Ultra 6.1.0.1753

DAEMON Tools Lite 12.6.0.2470 / Pro 8.3.0.0742 / Ultra 6.1.0.1753

درایو مجازی دیمون تولز

کاتلر در مدیریت بازار

کاتلر در مدیریت بازار

آشنایی با کاتلر و بازاریابی در بازار

یکی از کتاب های پرطرفدار و محبوب برای زنان

یکی از کتاب های پرطرفدار و محبوب برای زنان

توصیه هایی برای زنان

آموزش جامع برنامه نویسی به زبان #C

آموزش جامع برنامه نویسی به زبان #C

برنامه نویسی به زبان سی شارپ

PicView 5.0.2

PicView 5.0.2

مشاهده عکس

Lynda - Microsoft Project Server 2013 Administration

Lynda - Microsoft Project Server 2013 Administration

فیلم آموزش مدیریت مایکروسافت پراجکت سروِر 2013

Little Girl - Molly Playing With Her Dolly

Little Girl - Molly Playing With Her Dolly

دختر کوچولو - مـالی با عروسکش بازی می‌کند - بازی سالم و آموزشی مناسب کودکان خردسال

SmartPCFixer 5.5

SmartPCFixer 5.5

تعمیر و عیب‌یابی جهت روان‌تر شدن ویندوز

SecretDNS 4.0.2

SecretDNS 4.0.2

رمزگذاری دی‌ان‌اس

Comodo Internet Security Premium 12.3.4.8162 + Offline Update

Comodo Internet Security Premium 12.3.4.8162 + Offline Update

آنتی ویروس کومودو

The Tenth Line +  Update v1.0.3 + v1.0.5

The Tenth Line + Update v1.0.3 + v1.0.5

نقش آفرینی

ترتیل کل قرآن کریم از استاد شحات محمد انور

ترتیل کل قرآن کریم از استاد شحات محمد انور

ترتیل قرآن کریم 30 جزء شحات محمد انور

مداحی امیر برومند سال 96

مداحی امیر برومند سال 96

محرم شب اول تا شام غریبان برومند

Aiseesoft PDF Converter Ultimate 3.3.62

Aiseesoft PDF Converter Ultimate 3.3.62

تبدیل فرمت فایل های پی دی اف

Driver

Driver

درایور - نسخه کامپیوتر، منتشر شده در سال 2000

Money Calendar 6.3.2023.108

Money Calendar 6.3.2023.108

مدیریت مالی

Loreena McKennitt The Visit

Loreena McKennitt The Visit

موسیقی بیکلام از لورنا مک کنیت

خبرنامه

با عضویت در خبرنامه، زودتر از همه باخبر باش!