למד את פיקוד לינוקס - fdisk

שֵׁם

- מניפולטור לוח מחיצה עבור לינוקס

תַקצִיר

fdisk [-u] [-b sectorize ] [-C cyls ] [-H ראשי ] [-S ]

fdisk -l [-u] [ התקן ... ]

מחיצת fdisk-s ...

fdisk -v

תיאור

דיסקים קשיחים ניתן לחלק דיסק אחד או יותר לוגי שנקרא מחיצות . חלוקה זו מתוארת בטבלת המחיצות שנמצאת בגזרה 0 של הדיסק.

בעולם BSD אחד מדבר על 'פרוסות דיסק' ו 'disklabel'.

לינוקס צריך לפחות מחיצה אחת, כלומר עבור מערכת הקבצים השורש שלה. זה יכול להשתמש בקבצי החלפה ו / או מחיצות swap, אבל אלה הם יעילים יותר. אז, בדרך כלל אחד ירצה מחיצה לינוקס השני המוקדש מחיצת החלפה. בחומרה תואמת Intel, ה- BIOS המגנה את המערכת יכול לעיתים קרובות לגשת רק ל -1,200 הצילינדרים הראשונים של הדיסק. מסיבה זו, אנשים עם דיסקים גדולים לעתים קרובות ליצור מחיצה שלישית, רק כמה מגה גדול, בדרך כלל רכוב על / boot , כדי לאחסן את התמונה הקרנל וכמה קבצים עזר הצורך בזמן האתחול, כדי לוודא כי החומר הזה הוא נגיש ל - BIOS. ייתכנו סיבות של אבטחה, קלות הניהול והגיבוי, או בדיקות, להשתמש יותר מאשר מספר מינימלי של מחיצות.

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

fdisk (בצורה הראשונה של קריאה) הוא תפריט מונע תוכנית ליצירת מניפולציה של טבלאות מחיצה. הוא מבין טבלאות מחיצות מסוג DOS ו- diskdabels מסוג BSD או SUN.

ההתקן הוא בדרך כלל אחד מהבאים:

/ dev / hda / dev / hdb / dev / sda / dev / sdb

(/ dev / hd [ah] עבור דיסקי IDE, / dev / sd [ap] עבור דיסקי SCSI, / dev / ed [ad] עבור דיסקי ESDI, / dev / xd [ab] עבור דיסקי XT). שם התקן מתייחס לכל הדיסק.

המחיצה היא שם התקן ואחריו מספר מחיצה. לדוגמה, / dev / hda1 הוא המחיצה הראשונה בדיסק הקשיח הראשון של IDE במערכת. הדיסקים יכולים להכיל עד 15 מחיצות. ראה גם /usr/src/linux/Documentation/devices.txt .

דיסקלד מסוג BSD / SUN יכול לתאר 8 מחיצות, השלישית שבהן צריכה להיות מחיצה 'דיסק שלם'. אל תתחילו מחיצה שמשתמשת בפועל במגזר הראשון שלה (כמו מחיצת swap) בגליל 0, מכיוון שזה יהרוס את הדיסקלאבל.

דיסק קשיח מסוג IRIX / SGI יכול לתאר 16 מחיצות, האחת עשרה מהן צריכה להיות מחיצה 'נפח' שלמה, ואילו התשיעית צריכה להיות מסומנת ככותרת 'עוצמת קול'. כותרת עוצמת הקול תכסה גם את טבלת המחיצות, כלומר היא תתחיל בבלוק אפס ותתרחב כברירת מחדל על חמישה צילינדרים. השטח הנותר בכותרת האחסון יכול לשמש את ערכי הספריות של הכותרת. אין מחיצות עשויות לחפוף עם כותרת עוצמת הקול. כמו כן לא לשנות את הסוג שלה ולעשות קצת מערכת הקבצים על זה, שכן תאבד את טבלת המחיצה. השתמש בסוג זה של תווית רק כאשר אתה עובד עם לינוקס ב- IRIX / מכונות SGI או דיסקים IRIX / SGI תחת לינוקס.

טבלת מחיצות מסוג DOS יכולה לתאר מספר בלתי מוגבל של מחיצות. במגזר 0 יש מקום לתיאור של 4 מחיצות (הנקראות 'ראשוני'). אחד מהם עשוי להיות מחיצה מורחבת; זוהי קופסה המחזיקה מחיצות לוגיות, עם מתארים שנמצאו ברשימה מקושרת של מגזרים, כל אחד לפני מחיצות לוגיות המקביל. ארבעת המחיצות הראשיות, נוכחים או לא, מקבלים מספרים 1-4. מחיצות לוגיות מתחילות למנות מ -5.

בטבלת מחיצות מסוג DOS, היסט ההתחלה והגודל של כל מחיצה מאוחסנים בשתי דרכים: כמספר מוחלט של סקטורים (נתון ב -32 סיביות) וכגודל של צילינדרים / ראשי / מגזרים (נתון ב 10 + 8 + 6 סיביות). הראשון הוא בסדר - עם 512 בתים סקטורים זה יעבוד עד 2 TB. זה האחרון יש שתי בעיות שונות. קודם כל, אלה שדות C / H / S ניתן למלא רק כאשר מספר הראשים ומספר המגזרים לכל מסלול ידועים. שנית, גם אם אנחנו יודעים מה מספרים אלה צריכים להיות, 24 סיביות הזמינים אינם מספיקים. DOS משתמש C / H / S בלבד, Windows משתמש בשני, לינוקס מעולם לא משתמש C / H / S.

אם ניתן, fdisk יקבל את הגיאומטריה בדיסק באופן אוטומטי. זה לא בהכרח את הגיאומטריה בדיסק פיזי (אכן, דיסקים מודרניים לא באמת יש משהו כמו הגיאומטריה הפיזית, בהחלט לא משהו שאפשר לתאר ב צילינדרים פשטני / ראשי / מגזרים צורה), אבל היא הגיאומטריה בדיסק כי MS-DOS משתמש עבור טבלת המחיצות.

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

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

גרסאות מסוימות של MS-DOS יוצרות מחיצה ראשונה שאינה מתחילה על גבול צילינדר, אלא על מגזר 2 של הצילינדר הראשון. מחיצות המתחילות בגליל 1 אינן יכולות להתחיל על גבול גליל, אך אין זה סביר שיגרמו לקשיים, אלא אם כן יש ברשותכם מערכת הפעלה / 2 במחשב שלכם.

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

אזהרה Dos 6.x

הפקודה DOS 6.x FORMAT מחפשת מידע בחלק הראשון של אזור הנתונים של המחיצה, ומתייחסת למידע זה כאמין יותר מהמידע בטבלת המחיצות. פורמט DOS מצפה ש- DOS FDISK ינקה את 512 הבתים הראשונים של אזור הנתונים של מחיצה בכל פעם שמתרחש שינוי בגודל. פורמט DOS יסתכל על מידע נוסף זה גם אם הדגל U / נתון - אנחנו רואים את זה באג ב DOS FORMAT ו DOS FDISK.

השורה התחתונה היא שאם אתה משתמש ב- cfdisk או fdisk כדי לשנות את גודל טבלת המחיצה של DOS, עליך להשתמש גם ב- dd כדי לאפס את 512 הבתים הראשונים של המחיצה לפני השימוש ב- DOS FORMAT כדי לפרמט את המחיצה. לדוגמה, אם אתה משתמש ב- cfdisk כדי ליצור ערך טבלת מחיצות DOS עבור / dev / hda1, ולאחר מכן (לאחר יציאה מ- fdisk או cfdisk ואתחול מחדש של Linux כך שמידע טבלת המחיצות תקף), תשתמש בפקודה "dd if / dev / אפס של = / dev / hda1 bs = 512 count = 1 "לאפס את 512 הבתים הראשונים של המחיצה.

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

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

אפשרויות

ירות them

ציין את גודל הסקטור של הדיסק. ערכים חוקיים הם 512, 1024 או 2048. (גרסאות אחרונות מכירות את גודל הסקטור, השתמש רק בגרעינים ישנים או כדי לעקוף את הרעיונות של הקרנל).

-C cyls

ציין את מספר הצילינדרים של הדיסק. אין לי מושג למה מישהו ירצה לעשות זאת.

-H ראשי

ציין את מספר ראשי הדיסק. (לא את המספר הפיזי, כמובן, אבל את המספר המשמש טבלאות מחיצה). ערכים סבירים הם 255 ו 16.

כיתות

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

-L

רשום את טבלאות המחיצה עבור ההתקנים שצוינו ולאחר מכן צא. אם לא התקבלו מכשירים, המוזכרים ב- / proc / מחיצות (אם קיימים) משמשים.

-u

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

- מחיצה

גודל המחיצה (בבלוקים) מודפס על הפלט הסטנדרטי.

-v

הדפס את מספר הגרסה של תוכנית ה- fdisk והיציאה ממנה.