איך להפוך כל סקריפט לשירות שעולה אוטומטית, מתחזק את עצמו ומפיק לוגים — ב-25 שורות INI
systemd הוא מנהל התהליכים והשירותים של רוב הפצות לינוקס המודרניות (Ubuntu, Debian, CentOS, Fedora, Arch — כולן). בלי systemd, כל פעם שאתם רוצים להריץ סקריפט שיעלה אוטומטית בכל boot, יקום מחדש אם נפל, ויקבל הגבלות זיכרון/CPU — הייתם צריכים לכתוב הרבה קוד מלוכלך עם cron, screen, supervisord ו-init.d. עם systemd, כל זה הופך לקובץ טקסט קטן בסגנון INI של 10-20 שורות, ופקודה אחת. אצלי (אלעד) על ה-Hetzner VPS, systemd מנהל את כל 13 סוכני המיקרו-שירותים שלי: כל אחד הוא systemd unit נפרד, מתחיל אוטומטית, מתעד לוגים מרכזיים ב-journalctl, ומתחיל מחדש לבד אם הוא קורס. בנוסף, systemd-timer מחליף לי את cron עם סינטקס ברור יותר והיסטוריית הפעלות, ו-systemd-resolved מטפל ב-DNS. הוא לא הכלי הפופולרי ביותר בקרב חובבי 'Unix פילוסופיה' (יש מי שאוהב init scripts קלאסיים), אבל המציאות היא שאם אתם בעולם לינוקס בייצור — אתם משתמשים ב-systemd. המדריך הזה יראה לכם את החלק שבו תשתמשו ב-90% מהזמן: יצירת service units, ניהול דרך systemctl, וקריאת לוגים ב-journalctl.
ההבדל בין hobby project לאפליקציה רצינית הוא לא הקוד — אלא איך הוא רץ.
`python app.py &` ב-screen ולקוות שלא יקרוס
systemctl service שמתחיל מחדש אוטומטית
cron עם '> /var/log/myapp.log 2>&1'
systemd-timer + journalctl מובנה
אחרי reboot — לזכור להריץ הכול מחדש
systemctl enable — הכול עולה לבד
אין בקרת זיכרון, סקריפט אחד מפיל הכול
MemoryMax, CPUQuota — הגנה מובנית
הנה איך:
במקום `nohup` ו-`screen`, systemd עושה את הכול טוב יותר — auto-restart, לוגים, ניטור.
כל סוכן = systemd service. אם אחד נופל, רק הוא מתחיל מחדש. שאר הרשת ממשיכה לעבוד.
לא כל אפליקציה צריכה Docker. systemd נותן בידוד, restart וניטור — בלי overhead של containers.
systemd-timer מציע סינטקס ברור יותר, היסטוריית הפעלות, ויכולת tracking של failures.
לחצו על כל סעיף לפתיחה
התיעוד הרשמי — מקיף, גם אם קצת מאיים בהתחלה
המדריכים הקלים ביותר להבנה. התחילו כאן
המדריך המקיף ביותר. אם אתם רוצים להבין הכול לעומק
דוגמאות אמיתיות של units לכל סיטואציה
האלטרנטיבה הפופולרית — מתי לבחור מה
להריץ את cloudflared כ-systemd service
אצלי 13 סוכנים רצים כ-systemd services עם uptime של 99.9%. אני יכול להעביר את הסקריפטים שלכם ל-services של ייצור.
מפתח Full-Stack ומומחה AI
אצלי על Hetzner VPS, systemd מנהל 13 שירותים שונים — מ-Python agents, דרך Node webhooks ועד Go workers. uptime ממוצע: 99.9%. כל אחד מהשירותים מבודד עם resource limits ו-sandboxing, וכשמשהו נופל — הוא קם לבד בתוך 5 שניות. המדריך הזה הוא כל מה שצברתי באלף שעות של ניהול ייצור על Linux.