איך לשמור על המידע?

נכתב ב-18 ביוני 2009, 17:09 | על-ידי לירון | קטגוריות: כללי

5

שתי עובדות:
1. המחשב שלי כבר בן 3.5 שנים. אני מרגיש את האיטיות. הגיע הזמן לקנות מחשב חדש.
2. לאחרונה סבלתי מכשל של הדיסק הקשיח. לא איבדתי כלום, למזלי, אבל הייתי במרוץ נגד הזמן להספיק להעתיק את כל המידע מהדיסק לפני שהוא ימות (כידוע, סקטורים פגומים הם כמו מחלה: בד"כ אחרי שמופיע אחד, הם מתחילים להתרבות בקצב מסחרר. וראיתי את זה קורה בדיווחי ה-SMART של הדיסק).

כשאני אומר "להעתיק את המידע" מהדיסק, אני לא מתכוון לתוכן של My Documents. אני מתכוון לזה, ואני מתכוון לעוד הרבה תיקיות אחרות עם מידע חשוב, ואני מתכוון גם למערכת ההפעלה ולתוכנות המותקנות. אני לא אוהב להתקין מחדש ווינדוז. אני לא מהמפרמטים. במחשב האישי שלי (לא ניידים) התקנתי מחדש ווינדוז פעם אחת בעשור האחרון – כשעברתי ל-XP, והשארתי את המחשב עם ה-Windows 2000 לעבוד במקביל. עשיתי את זה כי שידרוג של 2000 ל-XP הוא זוועתי, בניגוד לשדרוג של NT4 ל-2000, שהוא קליל וחלק, ועשיתי אותו מאות פעמים, אז לא פחדתי לעשות אותו גם בבית, ובאמת המחשב שעבר את השדרוג הזה רץ בשמחה עד היום.

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

המחשב החדש שלי יהיה, לפי תכנוניי, עם לפחות 1TB של דיסק קשיח לשימושי (כרגע זה הרבה, אבל אני מתכוון להשתמש בו כמה שנים, וזה זול, וימנע ממני את הצורך לשדרג לזמן מה), ועם dual-boot של Windows 7 (לכשיצא) ולינוקס כלשהו, כנראה אובונטו (סתם כי אני כבר מכיר אותו מה-Eee שלי). עכשיו הבעיה שלי היא איך לשמור על רציפות המידע והעבודה במקרה של כשל דיסק, כמו שהיה לי עכשיו.

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

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

חשבתי על RAID 5 עם שלושה דיסקים של 500GB, אבל יש עם זה בעיה. או ליתר דיוק, בעיות:

  • אם אני בוחר ב-RAID תוכנה, ז"א RAID של מערכת ההפעלה, ללינוקס לא תהיה גישה לווינדוז, ולהיפך, כי כל אחת מהן מממשת את זה אחרת. נפסל.
  • אם אני קונה לוח-אם עם RAID מובנה (למשל Intel Matrix RAID), זה יעבוד סבבה יחסית בווינדוז, אבל התמיכה לזה בלינוקס זוועתית. חוץ מזה, RAID 5 בתוכנה (שזה מה שהלוחות האלו נותנים) יכול ליצור בעיות של פגימה במידע אם יש כתיבה כשנופל החשמל, או דברים כאלה. אני לא אכנס לפרטים, מי שמעוניין שיחפש raid atomicity. נפסל.
  • האפשרות הנותרת היא RAID חומרתי אמיתי, כמו של Adaptec, 3ware ואחרים. כאן הבעיה היא בעיקר הכסף. לא מצאתי בקר כזה שגם יתאים לדרישות שלי (RAID 5, תמיכה בלינוקס, SATA 2) וגם יעלה מספיק מעט (נניח, עד 600 ש"ח בערך). וזה עוד כשחיפשתי לקנות בחו"ל ושישלחו לי לארץ – אני בטוח שאם אני אחפש בארץ, זה יתחיל מ-2000 ש"ח. באינטרנט עוד הצלחתי למצוא בסדר גודל של 800 ש"ח, אבל כידוע, זה בלי אחריות בארץ, ולקנות מוצר שהוא גם יקר, וגם בליבה של המערכת (אם הוא נדפק – אין מידע! וגיבויים זה לא פתרון!) בלי אחריות, זה סוג של טירוף. נפסל.

(אגב, מאמר מעניין שמפרט על הרבה בקרי RAID ומציין מי אמיתי ומי לא – עזר לי הרבה ב"מחקר" שלי)

אז מה נשאר לי? האמת היא שאני לא יודע. חשבתי כבר על לעשות mirror בין שני דיסקים של 1TB, אבל אם אני כבר מבזבז כ"כ הרבה נפח (50% לעומת ה-33% ב-RAID5), הייתי רוצה משהו יותר מגניב, כמו גיבוי שיתן לי גם ניהול גרסאות, ושאני אוכל לשלוף מתוכו גרסאות ישנות בלי שחזור מלא, וכמובן שיאפשר לי, אם אני מחבר דיסק 1TB חדש במקום הישן שנפגם, לעשות שחזור מלא, הכל כולל הכל, ווינדוז ולינוקס, כולל הגדרות boot, למצב שהיה לפני שהישן נפגם. יכול להיות נחמד גם אם תהיה לזה אפשרות "לשלוח" את הגיבוי לשרת מרוחק, ז"א לעדכון גיבוי מבוסס-גרסאות שיהיה שם (אין לי בעיה לשים אצל מישהו אחר דיסק 1TB שיהווה לי גיבוי), אבל אני לגמרי אסתדר בלי זה.

אני באמת לא חושב שהצרכים שלי מאוד נדירים. גם הדרישות שלי (כמו זה שיהיו גרסאות, וזה שאפשר יהיה לחזור בצורה מלאה מהגיבוי) לא בשמיים. ה"בעיה" שלי היא שאני מודע לבעיות בכל הפתרונות שאני מכיר, ואני פרפקציוניסט מחורבן. אז אני פונה אליכם, קוראי החנונים הנאמנים: מה אתם מציעים? יש לכם כיוון? לא אכפת לי לפתח (חלק) מזה בעצמי, לבנות סקריפטים שיתחברו עם מערכת גיבוי כלשהי או משהו. עם לינוקס אני די גרוע אבל בווינדוז בוודאי שלא תהיה לי בעיה. אה, ובלי פתרונות שהם ללינוקס או ווינדוז בלבד. זה חייב להיות הכל. אחרת אנחנו נכנסים לממלכת הפתרונות המעפנים, שבה כבר עדיף לעשות סקריפט שעושה xcopy /d כל שעה. ולא, אני לא אריץ ווינדוז בתוך מכונה וירטואלית! אני יודע ש-VirtualBox יכול להעביר חיבורי USB. לא אכפת לי.

תודה לכל מי שהגיע עד פה. :)

נ.ב.
לדעתכם כדאי לפרסם את זה גם באנגלית באיזה פורום טכני? או שאני הוזה?

תגובות (5)

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

ניהול גרסאות: נראה לי שהמונח מדבר יותר על פיתוח תוכנה, והמונח היותר מתאים הוא Snapshots.
סולאריס ומק כבר הכניסו את זה בילט אין – ZFS, Time machine. בלינוקס יש כמה מערכות קבצים נסיוניות (לא הייתי הולך על זה) ובווינדוס אני לא מכיר, אבל גם אם אין זה בטח עניין של זמן. יש גם כל מיני דרכים לממש סנאפשוט "לעניים" שלא מצריכים מערכת קבצים מיוחדת, כמו העתקת רק הקבצים שהתאריך שלהם השתנה מאז הגיבוי האחרון.

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

בנוסף, פתחתי חשבון ב- amazon s3. זה לכאורה מאוד זול – כחצי דולר לחודש לג'יגה. אבל מחישוב ארוך טווח, אלבום התמונות (בעיית הגיבוי העיקרית מבחינתי: חומר שחשוב לי מאוד, תופס הרבה מקום וגם גדל עם הזמן) יהפוך את העסק ליקר מאוד תוך כמה שנים, כשיצטברו עשרות ג'יגות. אז כיום יש לי שם איזה 3 ג'יגה ואני משלם כ- 8 ש"ח בחודש.
כפתרון, אגב, חשבתי על אפשרות להקטין את הרזולוציה של כל התמונות בגיבוי, יכול להיות שאפשר לוותר על כמה מגהפיקסלים, אני כמעט אף פעם לא מדפיס תמונות.

אני אגב לגמרי מוותר על גיבוי מע"ה. את שרת הווב שלי, שאולי יהיה קשה לקנפג מההתחלה, אני מריץ ב- VM, ואז האימאג' אני מעתיק הצידה מדי פעם.

האמת,
אני באופן אישי לא מבינה למה אתה בכלל רוצה להשתמש באופציה של RAID במחשב אישי
אני נמצאת בתחום המחשוב לא מעט שנים (יותר מ10) ואף פעם לא ראיתי ו/או שמעתי על מישהו שעשה ב-PC שלו כונני RAID בשביל לעשות גיבוי לדיסק
בעקרון RAID נועד למצב שבו אם דיסק אחד קורס, אז הדיסק השני נכנס לפעולה
בדר"כ עושים את זה עם הכוננים של המערכת הפעלה (ולא עם אלה שאתה שם עליהם את ה-DATA) וזה על מנת לא לשתק את העבודה בחברה
בשרתים יש גם גיבוי של כל הDATA בקלטות דרך טייפ/רובוט גיבוי, ככה שאם צריך לשחזר פשוט עושים שחזור של המידע. אבל אתה לא רוצה (ובאמת לא צריך) לקנות טייפ גיבוי לבית, זה סתם יקר ומיותר (למשתמש הבייתי, בחברות אין חדר שרתים בלי רובוט/טייפ כזה).

ההמלצה שלי:
דיסק קשיח אחד למערכת ההפעלה והתקנות של תוכנות (80G 120G 150G כמה שבא לך לא צריך להיות גדול מדיי)
אם אתה מתקין יותר מאחת, תחלק אותו למחיצות (שלכל אחת תהיה המחיצה שלה)
מאוד מומלץ תמיד תמיד תמיד להפריד בין הדיסק של מערכת ההפעלה לבין הדיסק עליו אתה שומר את המידע שלך
דיסק קשיח שני גדול (1T יכול להיות נחמד למדיי) בשביל שמירת מידע
רוצה גיבוי? תקנה דיסק קשיח חיצוני (לWD יש לא רעים כאלה אבל לא רק להם) שיהיה מחובר תמיד למחשב ותעשה סינכרון כמה פעמים ביום שתרצה. ככה המידע מהדיסק של הDATA יתעדכן בדיסק החיצוני
הרבה יותר הגיוני לעבוד ככה מאשר עם RAID על PC

סורי על החפירה…
אבל אני מקווה שזה שופך לך קצת אור על הנושא

אולי שווה לך לבדוק את האפשרות של רובוט הגיבוי הזה: http://www.drobo.com/

אני חייב לתקן את n_lee: נראה לי שהיא אולי בתחום המחשוב אבל לא ממש מבינה לעומק את מושג הRAID.
בRAID אין מצב שבו דיסק אחד מחכה בצד. ממש לא מה שתיארת. יש סוגים של RAID. חפשי בגוגל. כנ"ל לגבי חלוקה למחיצות. החלוקה לא תעזור במקרה שהדיסק ימות.

RAID 5 בהחלט נוצר לשם גיבוי משום שגיבוי על קלטות של כמות מידע גדולה הוא בלתי אפשרי משום האיטיות וכמות המידע שניתן לשמור על קלטת. הרעיון הוא שהמידע נכתב על פני כמה דיסקים בצורה כזו שגם אם הולך דיסק (ומשום כך המספר המינימלי לRAID 5 הוא 3 דיסקים) עדיין ניתן לשחזר את המידע. פשוט לא נחשפת לעולם מערכות האחסון ולכן לא ראית אף פעם דבר כזה. במערכות אחסון לא משתמשים בקלטות לגיבוי אלא במערכת אחסון נוספת (storage cluster). הסיכוי הסטטיסטי ששני דיסקים במערך איחסון יהרסו נמוך מאוד וגם נגד זה יש פתרונות כמו RAID 7 (של NETAPP) שבו גם אם שני דיסקים מתים עדיין ניתן לשחזר את המידע.

מה שאני יכול להציע לך הוא לבנות שרת אחסון ביתי מבוסס openFiler. אפשר בהשקעה לא גבוהה במיוחד (ההשקעה היא בדיסקים ובבקר RAID.) חבר בנה משהו של 6TB בהשקעה של כ$1000. ,תומך בכל הפרוטוקולים המקובלים. תעשה GHOST פעם ביום למכונת וינדוס, תעשה גיבוי של לינוקס וישאר גם מלא מקום לאחסן סרטים ומוזיקה ולהזרים אותם ברשת (החבר שלי מדווח על קצב של 80MB לשניה במכונה שלו. בייט לא ביט). אם תרצה עוד מקום, פשוט תוסיף דיסקים. זה הפתרון שאני הולך ליישם אצלי.

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