• 17/05/2023
  • Matan Sigavker
  • 0

היי,
במאמר זה אציג לכם כיצד ניתן להפחית את שטח הדיסק (VMDK) המוגדר כ- thin provisioned, לאחר מחיקה של קבצים ותקיות מהכוננים המקומיים של מכונת ה-Windows .

אז מתי נצטרך לבצע הפחתה לשטח הדיסק (VMDK) של ה-VM?
במקרים שבהם פיניתם מקום באחד מהכוננים של מכונת ה-Windows שלכם, אך ברמת ה-Esxi אנו רואים שהנפח דיסק (VMDK) לא הופחת ונשאר באותו הנפח.

למה זה קורה?
כאשר אנו מוחקים קבצים באחד מהכוננים של מערכת ההפעלה של Windows, הוא אכן נמחק אך אינו הופך את ה- blocksשל המחיצה ל-0, וזאת כדי שתהיה לנו את היכולת לבצע שחזור קבצים ולכן מבחינת שרת ה-ESXI השטח עדיין מנוצל ולכן קובץ ה-VMDK לא הופחת (מה שהיה אמור לקרות בדיסקים מסוג “thin provisioned”).

לפני התחלת התהליך אנא וודאו שיש לכם גיבוי מלא של המכונה הוירטואלית!


כעת נתחיל בתהליך:

  • הורידו את הכלי SDelete, מבית Sysinternals אל מכונה אשר אתם רוצים להפחית את נפח הדיקס שלה.

    הקישור להורדת הכלי:
    https://learn.microsoft.com/en-us/sysinternals/downloads/sdelete

    SDelete – הוא כלי אשר משמש אותנו לביצוע מחיקה מלאה של sectors אשר כבר אינם נמצאים בשימוש ומשנה להם את הערך מ-1 ל-0.

  • פתחו את CMD כ-Administrator והריצו את הפקודות הבאות:
cd “C:\SDelete”
sdelete.exe -z drive_letter:

# Example: sdelete.exe -z C: 
# -z = Zero free space (good for virtual disk optimization).

שימו לב: בשלב זה הכונן שעליו אתם מריצים את הכלי, יתמלא עד 0 מקום.
אין לכם מה לדאוג זאת התנהגות תקינה וברגע שהכלי יסיים לרוץ (100%), תוכלו לראות שהכונן חזר לגודלו המקורי ואפילו יכול להיות מצב שהתפנה עוד נפח בכונן.

כך נראת תוצאה תקינה:

  • בצעו למכונה כיבוי בצורה מסודרת.
  • בטלו את הרישום של המכונה הוירטואלית ע”י קליק ימיני על ה-VM ולאחר מכן “Unregister”.

  • אפשרו חיבור SSH ל-ESXI.
    גשו אל – HOST > Actions > Services > Enable Secure Shell (SSH)

  • התחברו אל ה-ESXI דרך SSH בעזרת CMD או PuTTY.
  • גשו אל התיקייה שבתוכה נמצאת המכונה הוירטואלית בעזרת הפקודה הבאה:
cd /vmfs/volumes/DATASTORE_NAME/VM_NAME
  • הריצו את הפקודה הבאה על קובץ ה-VMDK של המכונה:
vmkfstools -K disk_name.vmdk

vmkfstools -K – כלי זה עובר על המחיצה ומבצע טיהור לדיסק ברמת הesxi, ומחשב מחדש את המקום של נפח הדיסק.

  • בטלו את חיבור ה-SSH שפתחתם קודם לכן.
    HOST > Actions > Services > Disable Secure Shell (SSH)
  • בצעו רישום מחדש של המכונה הוירטואלית:
    בשרת ה-ESXI, גשו אל – Storage > “your datastore” > datastore browser
    הכנסו אל התקייה של המכונה הרלוונטית > לחצו קליק ימני על הקובץ עם הסיומת של ”.vmx” > ואז על “Register VM”.

בלב זה סיימנו את התהליך, אתם יכולים להדליק  את המכונה הוירטואלית וכעת תוכלו לראות שהנפח הדיסק (VMDK) של ה-VM הופחת בהצלחה.


This Article Was Written By Matan Sigavker

Leave a Reply

Your email address will not be published. Required fields are marked *