פורסם 2012 בינואר 2913 שנים אני עובד בלפטופ על כונן איטי (דיסק און קיי ;D ) והייתי רוצה לזרז עניינים.יש לי 4GB RAM והייתי רוצה להקצות כמה מאוד מגה בייטים לטובת ה-cache של הדפדפן.חיפשתי בגוגל ולא מצאתי איזה מדריך ברור איך להקצות ram drive או איך להעביר את ה-cache של chromium.
פורסם 2012 בינואר 2913 שנים בכללי ביותר mount -t tmpfs -o size=512M tmpfs /tempחוצמזה יכול לעניין אותךhttps://wiki.archlinux.org/index.php/Firefox_Ramdisk
פורסם 2012 בינואר 2913 שנים מחבר תודה.אפשר הסבר לגבי כרום ולא פיירפוקס?ובנוסף, פירוט של הפקודות, אני רוצה לדעת מה אני מבצע.
פורסם 2012 בינואר 2913 שנים פעולת ה mount :נניח שמערכת ההפעלה שלך נמצאת במחיצה sda1 (ובתוכה התיקיות הרגילות dev home וכו). אתה חיברת למחשב USB שהוא sdb1 ואתה רוצה לפתוח ממנו קבצים / לכתוב אליוהכונן sda1 הוא קובץ מערכת בתיקיה /dev (שהיא בעצמה תיקיה מיוחדת - הקרנל של לינוקס יוצר את התוכן שלה תוך כדיי שהוא עובד, חלק משמעותי ממנה זה לא באמת קבצים אל הדיסק וגם אלה שכן הם קבצים מיוחדים) - תיקיה שהקבצים בתוכה מסמלים התקני מערכת שונים - דיסקים, כרטיס רשת... והתקנים וירטואליים - קובץ אינסופי של אפסים, "חור שחור" שניתן לכתוב לתוכו דברים והם נעלמים וכולדיסק הקשיח שלך (sda) ול אחת מהמחיצות שלו (sda1 וכו) יש קבצי התקן בתיקיה /dev. אבל הקבצים האלה לבד לא נותנים גישה לתוכן של הכונן. בשביל זה אתה אמור _לחבר_ אותם לתיקיות במערכת קבצים שלך. כלומ, להפוך תיקיות ריקות רגילות לכמו "פורטלים" שבהם אתה עובר לכונן האחרדוגמה ראשונה - המחיצה של מערכת ההפעלה שלך sda1 מחוברת כרגע לתיקיה "/" כלומר מה שאתה רואה ב / נמצא במחיצהדוגמה שניה - אתה רוצה לפתוח את המחיצה sdb1 שנמצאת ב USB. נתחיל מזה שאתה מחבר את ה USB למחשב. הקרנל מזהה את ה USB שחיברת ואת המחיצה היחידה שיש בו ויוצר 2 קבצים מתאימים ב /dev - הם sdb ו sdb1. הם ייעלמו ברגע שתנתק את ה USBכעת אנחנו ניצור את ה "פורטל" :אתה יוצר תיקיה ריקה רגילה במחשב למשל /new_folderהתיקיה נמצאת במחיצה sda1 והיא ריקהעכשו נבצע את ה mount - החיבור של sdb1 לתיקיה :mount /dev/sdb1 /new_folderעכשו שאתה נכנס ל new_folder במקום תיקיה ריקה יש בתוכה את כל מה שיש ב sdb1פיזית ב sda1 עדיין יש תיקיה ריקה וכל מה שאתה רואה או כותב ל new_folder (שלא נראית לך ריקה עכשו...) הולך ל sdb1עכשו מערכת ההפעלה לא תמיד כותבת דברים מיידית לדיסק אלא משהה דברים ב cache. כלומר יתכן שכתבת קובץ חדש ל new_folder. הקובץ אמור להיכתב ל sdb1 אבל מערכת ההפעלה מחזיקה אותו בינתיים ב RAM (אבל אתה כבר רואה אותו ב new_folder כיאלו שהוא כבר כתוב ל sdb1)המטרה היא שאם יש הרבה פניות לאותו אזור במערכת קבצים, מערכת ההפעלה תצבור ותעשה אותן במכה אחת כדיי להקטין את כמות העבודה הפיזית של הדיסק וכך לשמור אל אורך חיים ארוך יותר שלו (פחות שחיקה) וביצועים טובים יותר (תבצע את הפעולות בסדר שבו זה הכי קל ולא בסדר שבו הפניות הגיעו למערכת ההפעלה)לכן כדיי שתוכל להוציא את ה USB בצורה בטוחה עליך לוודא שכל מה שהיה אמור להיכתב אליו אכן נכתב סופית ולא תקוע ב cache. אתה נותן למערכת ההפעלה הוראה לרוקן את ה cache של הכונן הזה ולאחר מכן לנתק אותו מהתיקיה. ב Windows הפעולה נקראת "הוצאה בטוחה". בלינוקס unmount (הפקודה היא umount)umount /new_folderאוumount /dev/sdb1(מערכת ההפעלה יודעת ש sdb1 מחובר ל new_folder ולכן כל אחת מהפקודות תעבוד). הפעולה יכולה לקחת זמן מסויים - זה הזמן שלוקח לכתוב את הכול מה cache לכונן. כשהיא תסתיים אתה תקבל שורת פקודה חדשהברגע שתנתק את ה mount אתה תישאר אם sda1 שמכיל תיקיה ריקה (ואת כל יתר התוכן הרגיל שלו) ו sdb1 שבו יש את כל מה שכתבת לתיקיהבדרך כלל מערכת ההפעלה תזהה אוטומטית את מערכת הקבצים שיש ב sdb1 וכו' ולכן למשל בפקודת ה mount אתה לא כותב שמערכת הקבצים היא ntfs - אבל אתה יכול לתת למערכת ההפעלה ידנית את הסוג של מערכת הקבציםזה שימושי למצבים שלינוקס יכול לזהות את מערכת הקבצים בכמה צורות. למשל את ntfs ניתן לזהות כ ntfs או כ ntfs-3g כשרק ntfs-3g תומך בצורה מלאה בכתיבה ל ntfsלכן אם אתה רוצה לוודא שה USB יעבוד כ ntfs-3g (ולא סתם ntfs) אתה יכול לתת הוראה :mount -t ntfs-3g /dev/sdb1 /new_folderבאותה צורה ניתן לתת מאפיינים אחרים לפקודת ה mount למשל מה הקידוד של שמות קבצים בעברית :mount -t ntfs-3g -o nls=utf8 /dev/sdb1 /new_folderתיאורטית ב ramdisk היית אמור ליצור בשבילו קובץ ב /dev/ ואז לעשות mount לתיקיהבמציאות יצירת ramdisk נעשית אל ידיי פקודת ה mount עצמה. מערכת ההפעלה מכירה מערכת קבצים וירטואלית בשם tmpfs וזה מערכת הקבצים שיש ב ramdiskים בלינוקס. כלומר אם אתה אומר למערכת ההפעלה שמערכת הקבצים הוא tmpfs וההתקן הוא tmpfs אז בכך יצרת ramdiskלכן ההוראה ליצירת ramdisk (שכבר מחובר לתיקיה /new_folder) תהיהmount -t tmpfs tmpfs /new_folderעוד משהוא אתה רוצה לאמר למערכת מראש מה הגודל של ה ramdisk ואת זה אתה עושה באותה צורה כמו שמעבירים אפשרויות אחרות ל mount :mount -t tmpfs -o size=512M tmpfs /new_folderכדיי להשתמש אם זה לדפדפן תמצא מה התיקיות שבהם הוא שומר את התוכן שלו, ותכין מראש את התיקיות האלה כ tmpfs לפניי שאתה פותח את הדפדפןמה שמצאתי לפיירפוקס עלה לי בתוצאות כשחיפשתי בגוגל using tmpfs - לא בדקתי לעומק אם יש מדריך דומה גם ל chromium - בכל מקרה יש שם הסבר של איך לסדר דבר כזה בצורה קבועה לפיירפוקס אם קובץ ה fstabהקובץ fstab (File System TABle) קובע איזה mountים יתבצעו אוטומטית בכל פעם שהמחשב עולה + איזה mountים מערכת ההפעלה אמורה "להכיר" כך שלמשל תכתוב mount /new_folder ומערכת ההפעלה כבר תדע איזה מחיצה אתה רוצה שתתחבר לשם וכו
פורסם 2012 בינואר 2913 שנים מחבר קצת סיבכת אותי.כונן ה-USB הוא הכונן הראשי שלי. שם מותקן לי האובונטו, אין לי מערכת הפעלה אחרת.אז למעשה כל תיקייה היא כמו קיצור דרך? פוינטר לאיזור מסויים במחיצה מסויימת?בכל מקרה מצאתי את זה:Chromium: $XDG_CACHE_HOME/chromium, which defaults to ~/.cache/chromiumIf you pass --user-data-dir=/path/to/foo, the cache will be under /path/to/foo.אז מה בעצם אני צריך להקיש על מנת להקצות 512MB לקאש עבור התיקייה הזאת?
פורסם 2012 בינואר 2913 שנים במקרה שלך אם אין דיסק קשיח במחשב, ה USB של אובונטו יהיה sda (והמחיצות sda1 וכו), ה USB השני sdb....אם יש דיסק קשיח אז הדיסק sda, ה USB של האובונטו sdb, ה USB השני שחיברת sdc וכן הלאהמה שמשנה זה שכל דיסק וכל מחיצה מקבלים איזה שהוא קובץ ב /dev שניתן לעשות לו mountכל תיקיה היא תיקיה. אל ידיי ביצוע mount אתה הופך אותה ל "קיצור דרך" (וזה עובד בצורה מלאה לגמרי כיאלו שהכול באמת נמצא בתיקיה - למשל ניתן לכתוב את המסלול לתוך התיקיה בצורה חופשית, להעתיק את כל התיקיה כולל התיקיה עצמה וכו. זה לא שהתיקיה הופכת לקובץ .lnk כמו של קיצור דרך לתוכנה בוינדוס)בדוגמה שלך תבצע כ root :mount -t tmpfs -o size=512M tmpfs /home/Gil28/.cache/chromiumchmod 777 /home/Gil28/.cache/chromiumיצור את כונן ה tmpfs על גבי התיקיה ~/.cache/chromium שבה chromium שומר בדרך כלל את התוכן שלו (אם מהתחלה התיקיה לא היתה ריקה, הפעולה הזאת "מחביאה" את התוכן המקורי מאחוריי ה ramdisk - זה לא הולך להפריע לך)כמו כן כדיי שלמשתמש תהיה הרשאה מלאה לעבוד אם התיקיה (ההרשאה שניתנת למשתמש יכולה להיות מוגבלת בגלל שה mount בוצע אל ידיי root) משנים את הרשאות של התיקיה בהתאמה (ההרשאות 777 הן כמו everybody full control - לא מאובטח אם יש במחשב כמה משתמשים שאתה לא רוצה שייכנסו אליך וניתן לתת הרשאה "פרטית" יותר אל ידיי פקודה אחרת, לא כזה משנה במחשב פרטי)עכשו פשוט תריץ chromium רגיל
פורסם 2012 בינואר 2913 שנים אם הפעלת מחדש את המחשב אתה בדיוק ביטלת את הרצת הפקודות. הן עובדות מרגע ההרצה ועד לכיבויהכרומיום אמור להיות סגור לגמרי בזמן הרצה כדיי שלא יפריע. תפתח אותו מ 0 (לא מחדש) אחריי שהרצתאם תיתן את ההוראה mount (בלי כלום) ב 1 מהשורות אתה אמור לראות שיש tmpfs אל התיקיה שכתבת. מעבר לזה - אם באמת יש את השיפור ביצועים שאתה מנסה לקבל בכרומיום
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.