אנדרואיד

כיצד להעביר קבצים עם rsync over ssh

Linux/Mac Terminal Tutorial: How To Use The rsync Command - Sync Files Locally and Remotely

Linux/Mac Terminal Tutorial: How To Use The rsync Command - Sync Files Locally and Remotely

תוכן עניינים:

Anonim

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

הפרוטוקולים הפופולריים ביותר להעברת נתונים הם SSH ו- FTP. בעוד ש- FTP פופולרי מאוד, העדיף תמיד להשתמש ב- SSH מכיוון שזו הדרך הבטוחה ביותר להעביר את הקבצים שלך.

ישנם כלים ייעודיים להעברת קבצים באמצעות SSH כמו scp ו- sftp אך לאף אחד מהם אין את כל התכונות ש rsync מספק. ניתן להשתמש ב- rsync לשיקוף נתונים, גיבויים מצטברים, העתקת קבצים בין מערכות וכן הלאה.

במדריך זה נסביר כיצד להעתיק קבצים עם rsync באמצעות SSH.

דרישות

  • יש להתקין את כלי ה- rsync הן ביעד והן במערכות המקור. אם הוא לא מותקן אתה יכול להתקין אותו באמצעות מנהל החבילות של ההפצה שלך:

    אובונטו ודביאן:

    sudo apt install rsync

    CentOS ופדורה:

    sudo yum install rsync

    גישת SSH למחשב המרוחק.

    על המשתמש המריץ את הפקודה rsync ומשתמש ה- SSH המרוחק להיות בעל הרשאות מתאימות לקריאה וכתיבה של קבצים.

באמצעות rsync להעברת קבצים באמצעות SSH

באמצעות rsync , אתה יכול להעביר קבצים וספריות דרך SSH משרתים מרוחקים וממנה.

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

Local to Remote: rsync… -e ssh… HOST:DEST Remote to Local: rsync… -e ssh HOST:SRC…

כאשר SRC הוא ספריית המקור, DEST היא ספריית היעד. USER הוא שם המשתמש של SSH המרוחק ו- HOST הוא מארח ה- SSH המרוחק או כתובת ה- IP.

הגרסאות החדשות יותר של rsync מוגדרות לשימוש ב- SSH כקונכיית ברירת מחדל ברירת מחדל, כך שתוכל להשמיט את אפשרות ה- -e ssh .

לדוגמה, כדי להעביר קובץ יחיד /opt/file.zip מהמערכת המקומית /opt/file.zip /var/www/ במערכת המרוחקת עם IP 12.12.12.12 תפעיל:

rsync -a /opt/file.zip [email protected]:/var/www/

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

אם הקובץ קיים בשרת המרוחק הוא יוחלף. אם ברצונך לשמור את הקובץ בשם אחר, ציין את השם החדש:

rsync -a /opt/file.zip [email protected]:/var/www/file2.zip

כדי להעביר נתונים מרחוק למחשב מקומי, השתמש במיקום המרוחק כמקור ובמיקום המקומי כיעד:

rsync -a [email protected]:/var/www/file.zip /opt/

העברת ספריות עם rsync דרך SSH זהה להעברת קבצים.

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

לדוגמה להעברת הספרייה המקומית /opt/website/images/ directory /var/www/images/ במחשב מרוחק שתקלידו:

rsync -a /home/linuxize/images/ [email protected]:/var/www/images/

השתמש באפשרות - --delete אם ברצונך לסנכרן את הספרייה המקומית והמרוחקת. הקפד להשתמש באפשרות זו מכיוון שהיא תמחק קבצים בספריית היעד אם הם לא קיימים בספריית המקור.

rsync -a --delete /home/linuxize/images/ [email protected]:/var/www/images/

אם SSH במארח המרוחק מאזין ביציאה שאינה ברירת המחדל של 22 , ציין את היציאה באמצעות האפשרות -e . לדוגמה, אם SSH מאזין ביציאה 3322 היית משתמש ב:

rsync -a -e "ssh -p 3322" /home/linuxize/images/ [email protected]:/var/www/images/

בעת העברת כמויות גדולות של נתונים מומלץ להפעיל את הפקודה rsync בתוך הפעלת מסך או להשתמש באפשרות -P rsync ל- rsync להציג סרגל התקדמות במהלך ההעברה ולשמור על הקבצים שהועברו חלקית:

rsync -a -P /home/linuxize/images/ [email protected]:/var/www/images/

סיכום

הראינו לכם כיצד להשתמש ב- rsync באמצעות SSH בכדי להעתיק ולסנכרן קבצים וספריות.

יתכן שתרצה לקרוא כיצד לכלול קבצים או ספריות עם rsync .

אל תהסס להשאיר תגובה אם יש לך שאלות.

מסוף rsync