ארכיון עבור הקטגוריה ניהול רשת

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

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

האפשרות שחסרה לי ביותר שם היא האפשרות להצמיד מסמכים (צילומים של קבלות ותעודות אחריות, צילומים של רכיבי חומרה וכו'), לכל רכיב.
inventory.jpg

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

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

אז אם לא פתרון ברמת הבלוקים, נשאר פתרון ברמת מערכת הקבצים.
mhddfs הוא פתרון כזה בדיוק.
הרעיון הוא שמאחדים כמה מערכות קבצים, אחת על השניה בoverlay. כשפותחים קובץ הקובץ שיפתח יהיה הקובץ במחיצה הראשונה (אם במקרה אותו קובץ מופיע באותה באותה ספריה ביותר ממערכת קבצים אחת, נראה רק את הראשון (שיסתיר את כל האחרים).
כשכותבים קובץ, mhddfs עושה משהו מעניין:
כשיוצרים קובץ, המערכת תבחר אוטומטית את המחיצה עם הכי הרבה מקום בשבילו. בנוסף, אם במהלך כתיבת הקובץ נגמר המקום, הקובץ מוזז בצורה שקופה למחיצה עם מקום (כמובן שאם אין כזו מחיצה, האפליקציה מקבלת את השגיאה הרגילה).
אחד היתרונות הוא שהקבצים עדיין נגישים דרך המחיצות המקוריות, ככה שגם אם hddfs לא עובד משום מה, הנתונים עדיין שם ונגישים.
mhddfs ממומש כמערכת קבצים במרחב המשתמש (FUSE), מה מה שנותן לה יתרונות נוספים, למשל - משתמשים יכולים להשתמש בה חופשי בלי שמנהל המערכת יגדיר מראש את התצורה בקובץ fstab.

# mhddfs /mnt/500gb/,/mnt/200gb,//mnt/160gb /storage -o allow_other

יוצר מערכת קבצים חדשה ב/storage, בנפח כולל של 775GB עם מקום פנוי כסכום המקום הפנוי בשלושת המחיצות:

# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sdc1 459G 258G 179G 60% /mnt/500gb
/dev/sdb2 159G 17G 142G 11% /mnt/200gb
/dev/sda3 158G 138G 21G 87% /mnt/160gb
/mnt/500gb;/mnt/200gb;/mnt/160gb 775G 412G 341G 55% /storage

כדי להגדיר את זה בfstab, נשתמש בשורה המוזרה הבאה (תחביר סטנדרטי לfuse) בfstab:

mhddfs#/mnt/500gb,/mnt/200gb,/mnt/160gb /storage fuse defaults,allow_other 0 0

דרך חבילת הדביאן היומית.

יש לי שני מחשבים:
מחשב עבודה בחדר, שבו אני משתמש באופן שוטף לתכנות משחקים גלישה וכו', ומחשב בסלון, שמשמש כשרת/מדיה סנטר.
המחשב בחדר הוא החזק מבין השניים, כי עליו אני עובד יותר ובעיקר כי הוא משמש גם למשחקים, והוא התברך במעבד פנטיום D דו ליבתי, 2 ג'יגה זכרון מהיר וכרטיס מסך ג'יפורס 7900GT שהיה בצעירותו - לפני שנתיים שלמות - ממש מהיר, אבל לא סוחב בכבוד את המשחקים של ימינו. בנוסף יש לו מסך 19" CRT שכבר עבר זמנו.
המחשב בסלון הוא חלש יותר, ומכיל מעבד אתלון 3200XP, כרטיס מסך מצ'וקמק במיוחד(הכי זול שמצאתי עם יציאת S-Video מתישהו לפני ארבע שנים), ו512 מגה זכרון איטי במיוחד.
המחשב הזה משמש כמכונת מדיה (הוא מחובר לטלווזיה ואני רואה עליו סרטים וסדרות), שרת דואר, שרת ג'אבר, שרת HTTP, שרת MySQL שרת הורדות (מוריד סדרות סדרתי), וכו' וכו'. עם הזמן הוא התחיל לקרטע יותר ויותר בעיקר עקב חוסר זכרון, למול דרישות הולכות וגדלות שלי ממנו.
שני המחשבים כבר לא כך כל עומדים בדרישות שלי, ולכן הגיע הזמן לשדרג.
בדרך כלל אני קונה חומרה בצורה ספורדית ומתקין איפה שצריך (הרדיסק פה, צורב סידירום שם), אבל שידרוגים מלאים דורשים תוכנית יותר יסודית.
מטבע הדברים, לא הייתי רוצה שהמחשב בסלון יהיה יותר מהיר מהמחשב בחדר, ולכן אני תמיד משדרג את המחשב בחדר, מתקין את החומרה שהתפנתה במחשב בסלון ומוציא לגמלאות את החומרה מהמחשב בסלון.

אתמול (שישי) בבוקר הגיעה החבילה הגדולה במיוחד, והשימחה היתה גדולה.
boxed-in.jpg
החבילה המרשימה כוללת:
מחשב מורכב לאחותי, עליו לא נרחיב.
מסך BenQ 24 LCD G2400W
זכרון A-data 4GB DDR2 PC6400 800MHZ CL4
לוח אם Gigabyte GA-EP35-DS3R Intel® P35 Express Chipset LGA 775
מעבד Intel Core 2 Duo E8400 3GHz 1333FSB 6MB Box 45nm
כרטיס מסך INNOVISION Geforce 9800GTX 512MB DDR3 PCI-E
ספק כוח Corsair VX Series 550W PSU

כמובן שקודם כל התקנתי את המסך, רק בשביל לראות איך זה מסך 24". ככה זה:
monitor.jpg
התמונה חדה (לא רואים בצילום), והרזולוציה היא 1920X1200.
למרבה הצער גיליתי פיקסל שרוף (תקוע על כחול), ואני מתכוון להחליף את המסך.

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

מסקנה : כשמרכיבים מחשב, לוודא שהם נדלק אחרי שמחברים את לוח האם. עדיף לא לחבר את כולו ולגלות שהוא לא עובד.

השביזות גדולה, אבל צריך לבדוק מה קורה פה..
פירקתי את הכרטיסים, את ההרדיסקים, את המאוור של המעבד (שמנע גישה לחיבור החשמל הקטן - ATX 12V), ניסיתי שוב, ועדיין לא נדלק.
בשלב הזה זה יכול להיות או בעיה באחד החיבורים המעצבנים מהמארז אל לוח האם, או בעיה בספק, או בעיה בלוח האם.
שיחקתי עם החיבורים ללוח האם. עדיין לא נדלק.
חיברתי את הספק הישן, פתאום נדלק.
נראה שהספק אשם.
ניסיתי שוב את הספק החדש, ופתאום המערכת החליטה להידלק.
שמח וטוב לבב, הרכבתי מחדש את ההרדיסקים ואת הכרטיסים והפעלתי את המחשב.
נסיון ראשון נכשל עם שגיאה 17 מGRUB.
יש לי שני כוננים קשיחים במחשב הזה, אחד בחיבור IDE ואחד בחיבור SATA. מסתבר שהמחשב החליט שהוא מבצע BOOT מהSATA - מה שלא עובד כי הGRUB שם שבור.
כדי לוודא את זה, ניתקתי את כונן הSATA, וניסיתי. GRUB עלה הפעם - בחרתי בחלונות (עם כל הכבוד לדביאן, אני מעדיף לראות איך הכרטיס מסך מתפקד על חלונות), והוא עלה בהצלחה.
כמובן שחלונות לא מזהה את החומרה שעל לוח האם כמו שצריך. הוא לא רואה את בקר הSATA,כרטיס הרשת שעל לוח האם, טוב - אז צריך דרייברים, זה לא חדש.
למרבה הצער, הלוח אם החדש תומך רק בחיבור IDE אחד, מה שעושה לי קצת בעיה כי הצורב במחשב הזה הוא בממשק IDE, וכאמור גם ההרדיסק הראשי ממנו אני מבצע אתחול.
טוב, הכנסתי את הDVD (דרייברים על DVD!?) למחשב בסלון, והעתקתי את הכל לדיסק און קיי, חזרתי למחשב בחדר, התקנתי את הדרייברים.
העלתי את Assassins creed וראיתי כי טוב, המחשב סוחב כמו ענק.
ככה הוא נראה עכשיו, שימו לב לחוסר באבק - האבק התפזר עלי ועל שאר החדר.
new-comp1.jpg

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

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

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

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

זוכרים שהזמנתי כונן קשיח נוסף וכונן DVD חלופי במקום זה ששבק?
שניהם היו כמובן בממשק SATA, והתסבר שהמחשב שאליו הם מיועדים סבל ממחסור חמור בערוצי SATA פנויים, כל שני הערוצים שעל לוח האם שלו היו תפוסים.
בינתיים התקנתי את הדיסק במחשב השני, והזמנתי כרטיס בקר SATA שמוסיף עוד ארבעה ערוצי SATA. אתמול הוא הגיע לשמחתי, וכשחזרתי מהעבודה התיישבתי להתקין את הבקר, את הכונן הקשיח ואת הכונן DVD.
בהתחלה פשוט התקנתי את הכל, הדלקתי את המחשב וקיוויתי לטוב - תקוות שהתבדו מהר מאוד: המחשב נתקע בBOOT, לפני שהתחיל להעלות את GRUB (טוען הBOOT של לינוקס). התחלתי לשחק קצת בחיבורים וגיליתי שהמחשב לא אוהב שאני מחבר את הDVD לבקר הSATA החדש, ולכן חיברתי אותו ישירות ללוח האם ואת אחד משני הכוננים הקשיחים הישנים חיברתי לבקר הSATA. אחרי שהמחשב הצליח להכנס לGRUB כאשר כל ארבעת הכוננים מחוברים (שני הרדיסקים ישנים, אחד חדש וכונן DVD חדש), הקרנל התחיל לעלות ונתקע כמובן כשחיפש את מערכת הקבצים במחיצת השורש (/)
חשבתי לעצמי, בטח הוא לא אוהב את השינויים, וניתקתי הכל כדי לוודא שהוא עובד במצב שבו הוא היה קודם.
במפתיע, הוא עדיין סרב לעלות כשלא מצא את מערכת הקבצים של /.
עכשיו כבר התחלתי לנסות להעריך כמה זמן יקח לי להתקין את הכל מחדש ולהביא את העסק למצב עובד (זה שרת הדואר שלי, ולא רציתי להשאיר אותו לא עובד), לא אהבתי את ההערכה.
החלטתי לנסות לעלות מדיסק של Knoppix 4.0 ישן שהיה לי, אבל הוא טען שהביוס שלי דפוק במיוחד וסירב לעלות. חשבתי לעצמי שאולי הדיסק KNOPPIX דפוק במיוחד וצרבתי את Knoppix 5.1, שהסכים עם הדיסק הקודם בדיאגנוזה וסרב גם הוא לעלות.
שלפתי מהמחסן את אחד מכונני הDVD הישנים שלי, שהתעטר בכיתוב "אולי דפוק, 22/2/2008", ניסיתי אותו ומשם דווקא Knoppix הסכים לעלות (לא שכחתי לסמן את הכונן בכיתוב "מספיק טוב בשביל קנופיקס, 14/4/2008") - בשיטוט במחשב מתוך הקנופיקס שמתי לב שהכונן החדש התיישב לו על SDA ודחף את הכונן הראשון שהיה בSDA אל SDC. זה גרם לי לחשוב שאולי זו הבעיה.
ביצעתי BOOT רגיל אל GRUB, ופתאום שמתי לב שהשורה של הקרנל נראית ככה:

kernel /boot/vmlinuz-2.6.24-1-686 root=/dev/hde1 ro

שורה שאופיינית לטעינת הקרנל מדיסק ATA רגיל ולא מSATA (שמופיע תחת sdx ולא תחת hdx).
התחלתי לנחש ולנסות כל מני אפשרויות ובסוף הצלחתי לבצע BOOT כאשר השורש בsdb2, סוף סוף קצת התקדמות!
חיברתי את כל הכוננים, ניחשתי וניחשתי שוב עד שהצלחתי עם sdc2, ונכנסתי למערכת.
לא ממה התחשק לי לשנות את הfstab ואת קובץ התפריט של GRUB לתצורה החדשה, כי ידעתי שברגע שאני אשנה משהו בחומרה הכל ישבר שוב.
נכנסתי ל#debian@irc.freenode.net, ושאלתי איך מונעים מהקרנל לשנות את שמות הכוננים כל פעם שמשהו משתנה.
ענו לי שאפשר, אבל זה קשה, ועדיף בכלל לעגן מחיצות לפי הUUID, ולא לפי שם הכונן.
UUID למחיצה? לא ידעתי שיש!
מסתבר שזה פשוט במיוחד, החל מגרסא מסויימת של הקרנל, יש בdev ספריות חדשות:

/dev/disk/by-id/
/dev/disk/by-label/
/dev/disk/by-path/
/dev/disk/by-uuid/

הספריה שמעניינת אותנו במקרה הזה היא /dev/disk/by-uuid/ שמכילה קבצים שנראים כך:

0427f3ec-17e1-4cd1-b195-7f5bdf861a28 -> ../../sdc3
3f7f2c77-88af-4e9a-a139-ba95900e0354 -> ../../sdb1

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

kernel /boot/vmlinuz-2.6.24-1-686 root=/dev/disk/by-uuid/8397dc08-be26-491d-9a06-c3fc93303d82 ro

אחרי כל זה, הכל עובד שוב, הנה נשרף לו ערב שיכול היה לשמש אותי לדברים מועילים יותר, אבל למדתי כמה דברים.

אגב, לדעתי מה שגרם לכל הסיפור הזה היה קודם כל שדרוג שביצעתי לקרנל דרך apt-get לפני מספר שבועות, שקילקל את menu.lst של GRUB.
בגלל זה גם כשניתקתי את הכל וחזרתי למצב הראשוני עדיין לא הצלחתי לבצע BOOT.
המסקנה שלי היא שצריך לבדוק טוב טוב את menu.lst אחרי שדרוג של הקרנל (אם אני אגיד את זה בקול רם אולי אני אזכור את זה בפעם הבאה!).
בנוסף, כדאי להשתמש בUUID ולא בשם הדיסק כשמעגנים מחיצות.

לבסוף, אני גאה לציין שהמחשב הסלוני שלי, שמשמש אותי כשרת דואר וכמכונת ווידאו סלונית שודרג בהצלחה ועכשיו יש לו נפח איחסון של 200+200+500=900GB.
האח, הידד.

איכשהו משהו נשבר בבלוג למרות שלא שיניתי כלום.
תיקנתי את זה, אם יש עדיין בעיות ספרו לי (אפשר גם במייל - omry ay yadan dot net).

השרת שמריץ את הבלוג ואת firestats.cc היה למטה במשך 24 שעות.
הבעיה התחילה בנסיון לטפל במהירות בחור האבטחה שהתגלה בלינוקס 2.6 שמאפשר למשתמשים מקומיים רגילים לקבל בקלות גישת root בלינוקס 2.6 שקומפל עם מודול מסויים (שכלול כברירת מחדל בהרבה מאוד הפצות).
הנסיון הסתבך, והיה צריך שאחד ממנהלי המערכת יגיע פיזית למתקן האירוח של השרת, ובגלל זה לקח כל כך הרבה זמן לפתור את הבעיה.

קניתי אוטו, פיג'ו 206 XS, שלוש דלתות עם גג שמש.
כדי להשלים את חויית הנסיעה, הזמנתי נגן MP3 לרכב שתומך בUSB, כניסת Aux דיבורית Bluetooth ועוד.
מקווה לא להתאכזב כשהוא יגיע.

בהמשך לשאלון הדיוידי מהפוסט הקודם, החלטתי לשמוע בעצת העם ולוותר על דיוידי.
במקום, הזמנתי צורב DVD של Asus (הפרש המחירים מכונן DVD רגיל הוא כל כך נמוך שאין שום הגיון בקניית כונן שלא מסוגל לצרוב).
על הדרך הזמנתי עוד כונן קשיח, Seagate Barracuda 500GB SATA II‎ ST3500320AS 32MB ב600 שקל (שזה קצת יותר משקל לג'יגה, מי היה מאמין).

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

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

אם הבלוג יעבור להיות בלוג באנגלית, תמשיכ/י לקרוא?

View Results

Loading ... Loading …

אם אתם קוראים את זה, הבלוג רץ על שרת חדש.
האח, הידד!
רובכם שמתם לב לריבוי התקלות בבלוג לאחרונה:
התקלות נבעו מעומס מוגבר על השרת הישן של hcoop, שעדיין משרת נאמנה את רוב משתמשי hcoop.
במהלך החודשים האחרונים, מנהלי המערכת בנו חווה חדשה שמאוכסנת בPeer1, שהוא אחד מספקי האכסון האיכותיים ביותר.
החווה מכילה מספר שרתים, ותוכל לשרת כמות הרבה יותר גדולה של משתמשים ממה שהמערכת הישנה סיפקה.
בשבוע האחרון התחלתי להעביר את האתרים שלי לחווה החדשה, והיום סיימתי ושיניתי את הגדרת הDNS בgodaddy שתצביע לשרתי הDNS החדשים. (מה שכבר נכנס לתוקף כשאתם קוראים את זה).
המעבר כלל העברה של firefang.net, שכולל שני בלוגים (הבלוג הזה והבלוג באנגלית), וכמובן של firestats.cc, שהוא סיפור הרבה יותר מורכב:
firestats.cc מריץ trac.
demo.firestats.cc מריץ בלוג וורדפרס, וכן התקנת הדגמה של FireStats.
blog.firestats.cc מריץ את הבלוג של FireStats.
svn.firestats.cc מריץ שרת apache וsvn.
files.firestats.cc מכיל את הקבצים להורדה של FireStats.
והרשימה ממשיכה וממשיכה.

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

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

FireStats icon ‏מריץ FireStats‏