הדרכה 5 - bmd-lab/tutorials GitHub Wiki

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

SCP

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

העלאה מהמחשב שלך

$ scp file.txt username@to_host:/remote/directory/

הורדה למחשב שלך

$ scp username@from_host:file.txt /local/directory/

דחיסת קבצים

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

gzip

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

$ gzip filename

gzip דוחס קבצים בודדים בלבד ויוצר קובץ דחוס לכל קובץ נתון. המוסכמה היא שסיומת של קובץ שנדחס באמצעות gzip היא .gz או .z אם ברצונך לשמור את הקובץ המקורי, יש להשתמש באפשרות -k:

$ gzip -k filename

tar

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

$ tar -cvf EXAMPLE.tar EXAMPLE/

נשים לב שניתן לציין את שם קובץ ה-tar - הוא לא חייב להיות בעל שם זהה לתיקיה המקורית. האפשרויות cvf מייצגות: c – יוצר קובץ ארכיון .tar חדש. v – מייצג verbose (מילולי). המשמעות היא שהפקודה תדפיס את ההתקדמות על המסך. f – מאפשר לציין את שם הקובץ של הארכיון.

tar ו-zip

tar יכול ליצור ארכיון .tar ולאחר מכן גם לדחוס אותו עם gzip בפקודה אחת. קובץ .tar.gz שנוצר נקרא "tar ball". טארבול משמש לעתים קרובות להפצת תוכנה/מדיה או למטרות גיבוי. לשם כך יש להוסיף את האפשרות 'z' לפקודת ה-tar הקודמת. שלא כמו gzip אשר עובד רק על קבצים, יצירת טארבול יכול להיעשות עם קובץ, ספרייה או ספריות מרובות:

$ tar -zcvf file.tar.gz /path/to/file

$ tar -zcvf file.tar.gz /path/to/dir/

$ tar -zcvf file.tar.gz dir1 dir2 dir3

פתיחת קבצים

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

gunzip

על-מנת לפתוח או לחלץ קובץ gz, יש להשתמש בפקודה הבאה:

$ gunzip filename

vim (תוכנת עריכת הקבצים שהוזכרה בהדרכה 3) מסוגלת לעבוד עם קבצי .gz ללא צורך בפתיחתם לפני.

untar

בשביל לפתוח קובץ .tar או טארבול נשתמש באותה הפקודה לדחיסה, אך עם סימון אפשרות נוספת:

$ tar -xcvf file.tar.gz filename

הפעם האפשרות -x נמצאת בשימוש - היא נותנת פקודה ל-tar לחלץ את הקבצים.

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