Whatsup - לינוקס, תוכנה חופשית וקוד פתוח בעברית

שימוש מתקדם בלינוקס - סינכרון מקור לשני יעדים בזמן הכולל הכי קצר

מייקי - 26/12/2019 - 09:00
נושא ההודעה: סינכרון מקור לשני יעדים בזמן הכולל הכי קצר
שלום,

אני צלם, וכשאני בדרכים, אני מגבה מדי ערב את כרטיסי הזיכרון שלי (נפח מידע כולל טיפוסי של כ 100GB ליום!) לשני כונני SSD חיצוניים (USB3) תוך שימוש במחשב נייד לא חזק (אבל תומך ב USB3) עם ארץ'.
עד כה עשיתי זאת באמצעות rsync, ראשית לכונן הגיבוי הראשון, ובהמשך- לשני.

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

תודה מראש לעוזרים

מיקי
Anonymous - 26/12/2019 - 09:19
נושא ההודעה:
לא בטוח שזה עונה על הצורך שלך במדוייק אבל אתה יכול להגדיר RAID 1 על שני הכוננים עם mdadm.

כאשר תגיע למצב שאתה רוצה לשלוף את ההמידע רק מכונן אחד (ולא משניהם) אתה יכול פשוט לטעון את הכונן (ואם יש בעייה mdadm --assemble --scan --run )
מייקי - 26/12/2019 - 10:36
נושא ההודעה: תודה לאורח
תודה,

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

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

תודה
Anonymous - 26/12/2019 - 11:06
נושא ההודעה:
קוד:
rsync --write-batch=mybak -av /dir/src/ /dir/dest1/
./mybak.sh /dir/dest2/

האופציה --write-batch תיצור תוכנית shell וקובץ נוסף בגודל של כל הגיבוי, ואת תוכנית ה SHELL יש להריץ על הכוננים הבאים שברצונך לשמור את הגיבוי עליהם. מחק את הקבצים לאחר השימוש.
מייקי - 26/12/2019 - 14:29
נושא ההודעה: מצאתי
מצאתי לבד

תודה בכל זאת.

הולך לבדוק את PARALLEL.

פרוט ודוגמאות כאן[url]

https://opensource.com/article/18/5/gnu-parallel

[/url]
וכאן
[url]
https://www.msi.umn.edu/support/faq/how-can-i-use-gnu-parallel-run-lot-commands-parallel
[/url]
Anonymous - 26/12/2019 - 16:52
נושא ההודעה:
זה אגב לא משהו שאתה לא יכול לעשות בעצמך בסקריפט. פקודה שימושית: wait.

קוד:

#!/bin/bash

random_time() {
        sleep $((RANDOM % 32))
}

cmd() {
        echo "Starting $1"
        random_time
        echo "Done $1"
}

cmd 1 &
cmd 2 &
cmd 3 &
wait

Anonymous - 26/12/2019 - 17:05
נושא ההודעה: לא קשור לסנכרון: מייקי, בעתיד, נא המנע מתיוג קישורים עם URL
מייקי :
מצאתי לבד

תודה בכל זאת.

הולך לבדוק את PARALLEL.

פרוט ודוגמאות כאן[url]

https://opensource.com/article/18/5/gnu-parallel

[/url]
וכאן
[url]
https://www.msi.umn.edu/support/faq/how-can-i-use-gnu-parallel-run-lot-commands-parallel
[/url]

סבור שיש בעיה עם התגיות בהודעות שלך. אולי על הנהלת האתר לשפר בענין זה.
  1. בכל מקרה, לקישורים מציע למייקי לא לרשום אותם בתוך תגיות. סבור שעדיף קישור שניתן להקליק עליו מאשר קישור שהתגיות אמורה ליפות, ובפועל יותר מקלקלת:
    https://opensource.com/article/18/5/gnu-parallel
    https://www.msi.umn.edu/support/faq/how-can-i-use-gnu-parallel-run-lot-commands-parallel
  2. מאמין שכפתור התצוגה המקדימה מאפשר לכותב לנסות לראות האם התגיות שרשם יפעלו כמצופה. האם אתה, מייקי, השתמשת בו? עדין סבור שעל הנהלת האתר לנסות לשפר יותר את הענין.

Anonymous - 27/12/2019 - 09:31
נושא ההודעה: Re: מצאתי
מייקי :
מצאתי לבד

תודה בכל זאת.

הולך לבדוק את PARALLEL.

פרוט ודוגמאות כאן וכאן



הפקודה parallel עדיין תקרא פעמיים מדיסק המקור.
Anonymous - 31/12/2019 - 10:52
נושא ההודעה:
כאמור, rsync חוסך הרבה מזמן הקריאה, בהנחה שכמעט כל הקבצים לא משתנים.

כמוכן עם קצת מזל, הריצה המקבילה השניה תקרא נתונים חמים מה־cache (או ליתר דיוק: זו שמתקדמת מהר יותר תקרא ראשונה, ולכן ישירות מהדיסק, ולכן השנייה תקרא בהסתברות גבוהה יותר מה־cache).
כל הזמנים הם GMT + 2 שעות