הסרות יכולות להיעצר באמצע עם שגיאה שמציינת סקריפט תחזוקה, ולהשאיר את ה-VPN חצי מוסר: קובצי התצורה נשארים, ייתכן שהשירות עדיין פועל, ומנהל החבילות מסרב להמשיך. התיקון המפתה בשרשור פורום ישן הוא למחוק את הסקריפט ולכפות את ההסרה. זה מטפל בסימפטום וזורק את שלב הניקוי שנכשל. קראו קודם את השלב ואת מצב החבילה.

איזה שלב במחזור החיים באמת נכשל

חבילות Debian מריצות preinst ו-postinst בהתקנה, ו-prerm ו-postrm בהסרה או בטיהור מלא, כאשר מצב היציאה של כל סקריפט קובע את הפעולה הבאה. שגיאה מ-prerm פירושה שההסרה נעצרה לפני שנמחקו קובצי החבילה; שגיאה מ-postrm פירושה שההסרה כבר התרחשה והניקוי נכשל. אלו מצבים שונים עם שחזור שונה. מדיניות ההפצה גם מצפה שהסקריפטים יסבלו הרצה חוזרת, משום ששלב שנכשל צריך לחזור עליו ולא להימנע ממנו.

רשמו את השגיאה הראשונה מילה במילה, יחד עם שם החבילה, הגרסה ומהדורת ההפצה. שגיאות מאוחרות יותר הן בדרך כלל תוצאות.

קראו את מצב החבילה לפני שינוי

שאלו את מנהל החבילות מה לדעתו קרה לפני שתפיקו פקודה נוספת.

dpkg -l vpn-package
dpkg --audit
apt-get -s remove vpn-package

הרשימה מציגה את דגלי המצב של החבילה, הביקורת מוצאת חבילות שנשארו שבורות או חצי מוגדרות, וההסרה המדומה מדפיסה מה apt היה עושה בלי לגעת בדבר. סימולציה שנכשלת באותו סקריפט מאשרת את השלב ולא את הרשת. שימו לב לסקריפט הנקוב בשגיאה ותנו רשימה של קובצי המידע של החבילה אם עליכם לראות אילו סקריפטים קיימים. דבר מזה עדיין אינו מצדיק עריכת אותם קבצים.

הגנו על נתיב הניהול לפני התיקון

אם ה-VPN נושא את הפעלת ה-SSH היחידה שלכם למארח הזה, הסרתו מסיימת את הגישה שלכם באמצע התיקון. סדרו תחילה קונסולה, ממשק ניהול מחוץ לפס או נתיב שני, ואשרו שהוא עובד לפני שתתחילו. שמרו את הפרופיל וכל הוראות רישום מחדש שתזדקקו להן לאחר מכן, כי טיהור עשוי להסיר תצורה שנוצרה. הרחיקו אישורים מההערות שאתם מדביקים בכרטיס, והרחיקו מפתחות פרטיים לגמרי מהאבחון.

התייחסו לעקיפה ידנית מתועדת כמוצא אחרון בהדרכת בעל החבילה, עם השלבים שדולגו מחושבים. לעולם אל תמחקו סקריפטים באמצעות תו כללי, משום שרשימת הניקוי של החבילה עצמה היא התיעוד של מה שנותר לעשות.

הפרידו בין תוצאות החבילה, הרשת והאישורים

יש לבדוק שלוש תוצאות בנפרד כשהנוהל הנתמך מסתיים. עסקת החבילה צריכה להראות מצב נקי, בלי רשומות חצי מוגדרות שנותרו בביקורת. הרשת צריכה להתאים למה שהתכוונתם: השירות הנכון עצר, אין נתיבים או הגדרות DNS מיושנים, ויש נתיב עובד להחלפה או לגישה ישירה. הצד המרוחק הוא התוצאה השלישית, ואישורים מיושנים צריכים להיות מבוטלים דרך בעל החשבון הזה, כי הסרת לקוח אינה מבטלת דבר.

אחר כך התחברו מחדש ובדקו יעד אחד מורשה. מצב חבילה נקי עם מנהרה שעדיין פועלת הוא תוצאה שונה מרשת נקייה, ורק השנייה אומרת לכם שההסרה אכן נכנסה לתוקף.

מאמרים קשורים