הכנו עצמך ללמוד כיצד לכתוב סקריפטים יעילים יותר ב-PowerShell על DFS באמצעות הידע שתרכוש במדריך הזה. בפוסט זה, תלמד הכל על ניהול קישורי DFS ב-PowerShell!
פוסט הבלוג הזה מצורף בסרטון משותף שנוצר על ידי תורם מ- TechSnips, Scott Hurst. נפנה לך לצפייה, או, אם אתה מעדיף טקסט, תמשיך לקרוא!
הסרטונים האחרונים שלי
קישורי מערכת הקבצים המבוזרת (DFS) יפחיתו את המורכבות בעבודה עם חלוקות קבצים ברשת. קישורי DFS מאפשרים למשתמשים וליישומים לגשת אל שם נתיב וירטואלי להתחבר לתיקיות משותפות. תוכל ל יצור קישורי DFS באמצעות PowerShell.
בין אם אתה ניהול את ה-Active Directory או מוצר DFS אחר, כתיבת סקריפטים ב-PowerShell על DFS יעזור לך לטפח את הבעיות שתתקל בהן.
ה- שם מרחב וירטואלי הזה מאפשר למנהלים להציג תיקיות משותפות הממוקמות בשרתים שונים, או אפילו לשנות מיקום של תיקיית משותף, לגמרי שקוף לצרכני התיקייה ההיא.
המשתמשים לא יצטרכו לעדכן סימניונים, ויישומים לא יהיו חייבים להתעדכן עם נתיבים חדשים כאשר שרתי הקבצים משתנים.
יתרונות של DFS
למשתמשים, נגישות לתיקיות משותפות ברשת מפושטת לתבנית <שם מרחב וירטואלי>\שם תיקייה, הפחותות את המורכבות הקשורה לתיקיות המאוחסנות בשרתים רחוקים.
ליישומים, נתיבים מקודדים קשיחים למשאבים ברשת אינם צריכים להשתנות עקב שינוי בנתיב הרשת. עדכון פשוט לקישור DFS והיישום ימשיך לגשת למשאבים במיקומם החדשים.
דרישות מוקדמות עבור תפקיד שרת DFS
- Active Directory
- תפקיד שירותי קבצים ואחסון מותקנים על שרת Windows
- שרת Windows (ערוץ חצי-שנתי)
- שרת Windows 2016
- שרת Windows 2012 R2
- שרת Windows 2012
- שרת Windows 2008 R2 Datacenter/Enterprise
דרישות מוקדמות
- חשבון מנהל עם הרשאות המתאימות
- כלי RSAT עם 'כלי שירותים קובץ – כלי ניהול DFS' מותקנים
התקנה של סקריפטי פווה של PowerShell DSC שלך
ראשית, עליך להוריד ולהתקין RSAT. לאחר מכן, עליך להתקין את כל התכונות הנדרשות. זה יתקין את ממשק ה-GUI של DFS Management, את מודול ה-DFS Namespaces של PowerShell ליצירת קישורי DFS באמצעות PowerShell וניהולם, וכלי פקודה, אך הוא אינו מתקין שירותי DFS על השרת.
פקודות DFS נפוצות
ניתן לנהל מרחבי שמות באמצעות ממשק ה-GUI של DFS Management, פקודות הקודש הנפרדות (DFSN) ב-PowerShell, פקודות DfsUtil או סקריפטים שקוראים ל-WMI.
כמה פקודות PowerShell נפוצות הן:
Get-DfsnRoot
– גילוי כל המרחביות של DFS בדומיין הנוכחי – השימוש הנפוץ ביותר הוא בדיקת המרחביות הזמינות בדומיין הנוכחיNew-DfsnFolder
– יצירת שם תיקיה חדשה של DFS
– השימוש הנפוץ ביותר הוא ביצירת תיקיה חדשה של DFS במרחב השמותNew-DfsnFolderTarget
– הקצאת נתיבים לתיקיה של DFS
– השימוש הנפוץ ביותר הוא בהקצאת נתיב או יותר לתיקיה של DFSRemove-DfsnFolderTarget
– מסירת נתיב מתוך תיקיה של DFS, אך אינה מסירה את התיקיה של DFS
– השימוש הנפוץ ביותר הוא בהסרת נתיב או יותר מתוך תיקיה של DFSRemove-DfsnFolder
– מסירת תיקיה וכל הנתיבים שבתוכה
– השימוש הנפוץ ביותר הוא בהסרת תיקיה של DFS ממרחב השמות
מציאת מרחביות של DFS
נתחיל על ידי קבלת רעיון על כל המרחביות המקוונות והזמינות בדומיין הנוכחי באמצעות פקודת ה-Get-DfsnRoot
.
מתוך הפלט הזה, אנו רואים שישנם שני מרחביות המופעלות בדומיין זה.

מציאת תיקיות של DFS
על ידי השימוש בפקודת Get-DfsnFolder
אנו יכולים לרשום את התיקיות של DFS בכל מרחב שמות.
מתוך הפלט הזה, אנו רואים שב- מרחב השמות AppRoot אין תיקיה של DFS בשם PowerShell.

יצירת תיקיות קישור של DFS עבור סקריפטים של DSC PowerShell
בדוגמה זו, יש לנו תיקייה שמוכפלת בשם PowerShell על שלושת שרתי הקבצים שלנו; FileServer01, FileServer02 ו־Datacenter.
המטרה היא לשתף את התיקייה המשוכפלת הזו עם המנהלים שלנו באמצעות נתיב יחיד.
על מנת לעשות זאת, ניצור תיקיית DFS קישור חדשה במרחב השמות AppRoot בשם PowerShell באמצעות New-DfsnFolder
ונפנה אותו לשיתוף הקבצים של שרת המרכז לנתיב. נגדיר את התיקייה DFS להיות מקוון ונגדיר את TargetPath להיות מקוון.
ב-GUI של ניהול DFS, אנו רואים שהתיקייה DFS PowerShell אינה קיימת.


נפעיל את מערכת הפעלה Windows Explorer דרך מקלט PowerShell ונאשר שהיא לא קיימת.
אם התיקייה אינה קיימת, התוכנית תכתוב את הפלט Path not found. Clear to proceed בטקסט ירוק בחלון הטרמינל כפי שאתה רואה למטה.
מהפלט אנו רואים שהתיקייה נוצרה, ה־Referral Priority Class
מוגדר להיות Global-High
והמצב מוגדר להיות מקוון
.

ה-GUI מאשר גם את מה שפוורשל אמר לנו.

והנתיב שלנו כעת זמין ב-Windows Explorer.

יצירת מטרות תיקיות DFS
מאחלים עתה שיצרנו בהצלחה את ה-Powershell DFS תיקייה ב-מרחב השמות, נוסיף נתיב תיקייה יעד נוסף ונקבע את הנתיב הזה כ-מקוון באמצעות New-DfsnFolderTarget
. סקריפטים של DFS PowerShell מאפשרים לך להוסיף כמות שתרצה של רכיבים.
עד כה, יש לנו שתיים מתוך שלוש נתיבי שרת שלנו, נוספו והן מקוונות. לתיקייה האחרונה שלנו, נרצה להוסיף את הנתיב אך לא להפוך אותו לזמין למשתמשים. אז נוסיף תיקיית יעד ל-PowerShell DFS תיקייה והפעם נקבע את מצב הנתיב של DFS ללא קשר בעזרת New-DfsnFolderTarget
.

אתה יכול לראות שהנתיב של FileServer01 ושל מרכז המידע נמצא כרגע במצב מקוון
והמצב של FileServer02 הוגדר ל-לא מקוון
.

הגדרת מצב הנתיבים של DFS ללא קשר או במקוון
אנו יכולים גם לשנות אילו שרתים יהיו המארחים מקוונים ו- מנותקים, ואפשר אף להחליט איזה מהשרתים יהיה המארח הראשי של נתיב הקובץ באמצעות Set-DfsnFolderTarget
.
כפי שניתן לראות למטה:
- נתיב הקובץ של FileServer01 השתנה למצב
מנותק
- השרת Datacenter החליף את
ReferralPriorityClass
ל-sitecost-normal
מתוךglobal-high
- נתיב הקובץ של FileServer02 שינה את מצבו ל-
מקוון
- ה- ReferralPriorityClass של FileServer02 החליף ל-
global-high

הסרת נתיבי היעד של תיקיות DFS באמצעות PowerShell
I try to vaccinate my code against the fat finger flu as much as possible. Here we will try to install a safety net before removing one of the folders by making sure that it is offline before deleting it.
להתראות FileServer01!

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

הסרת תיקיות DFS
זה היה נתיב ארוך ומסובך, אך הגיע הזמן לקישור ה-DFS שלנו להסתיים. אנו יכולים להסיר את התיקייה של PowerShell ואת קישור ה-DFS באמצעות cmdlet של Remove-DfsnFolder
.

A quick double-check of the DFS Management GUI shows our DFS link is no more.

סיכום
זהו! עברת על דרך מתופצלת של DFS ו-PowerShell קונג פו. על ידי עכשיו אני מקווה שיש לך קטעי קוד כדי לעזור לך לבנות סקריפטים טובים יותר של PowerShell DFS!
Source:
https://adamtheautomator.com/dfs-powershell-scripts/