למסוף לינוקס יש תכונה "היסטוריה". בעזרת תכונה זו, כל פעולת פקודה שתזין תגבה להמשך. מכיוון שכל פקודות הטרמינל שלך נשמרות ב"היסטוריה ", חיוני לשמור עליהן גיבוי לשמירה.
במדריך זה נראה לך כיצד לגבות את ההיסטוריה של מסוף Linux ואיך לשחזר גם גיבויים. אז, פתחו את אמולטור המסוף האהוב עליכם על Linux ועקבו אחריו!
היכן מאוחסן ההיסטוריה של מסוף לינוקס?
מסוף לינוקס מאחסן את ההיסטוריה שלו בקובץ. קובץ זה נקרא ".bash_history." כל אחד יכול לערוך אותו והוא מאוחסן בספרייה הביתית. מכיוון שקובץ היסטוריית המסוף של לינוקס מאוחסן בספריית משתמשים, לכל משתמש במערכת יש קובץ.
הרשאות מיוחדות אינן מגנות על היסטוריה זוקבצים וכל משתמש במערכת יכול להסתכל על ההיסטוריה של משתמש אחר באמצעות פקודה פשוטה. כך, למשל, אם אני רוצה לבדוק את ההיסטוריה של מסוף / שורת הפקודה של שם המשתמש "משתמש" במערכת לינוקס שלי, הייתי עושה זאת:
cat /home/user/.bash_history
משתמשים יכולים גם להציג את ההיסטוריה של המשתמש הנוכחי שאליו הם מחוברים במעטפת המסוף של לינוקס, פשוט על ידי ביצוע הפקודה "היסטוריה".
history
והכי חשוב, מכיוון ש"היסטוריה "היא רק קובץ, ניתן לחפש אותה כמו קובץ טקסט רגיל באמצעות פונקציית grep. אז, למשל, למצוא מקרים של "שיבוט git" בשם המשתמש עם הפקודה למטה.
cat /home/user/.bash_history | grep "git clone"
זה עובד גם כמשתמש המחובר הנוכחי עם הפקודה "היסטוריה".
history | grep "search term"
שמור את היסטוריית המסוף בגיבוי
בחלק הקודם של מדריך זה דיברתיכיצד "ההיסטוריה" של מסוף לינוקס היא רק קובץ טקסט מוסתר בקפידה שמכיל את כל הפקודות שהוזנו על ידי המשתמש. ובכן, מכיוון שזה רק קובץ, זה אומר שזה קל מאוד לגבות למשמרת.
ליצירת גיבוי, השתמשו ב- חתול פקודה. למה? עם חתול, אתה יכול להציג את כל קובץ הטקסט ממש בטרמינל. אנו יכולים להשתמש בפקודה זו בשילוב עם סמל ">" כדי להפנות את פלט הצפייה לקובץ גיבוי.
אז, למשל, לגיבוי ההיסטוריה הנוכחית שלך, הפעל את חתול פקודה נגד "~ / .bash_history" ושמור אותו בקובץ עם התווית "history_backup."
cat ~/.bash_history > history_backup
אתה יכול גם להפעיל את ה- היסטוריה הפקודה בשילוב עם ">" ושמור אותה ככה.
history > history_backup
לבסוף, ניתן לגבות את היסטוריית שורת הפקודה / מסוף של משתמש אחר שלא מחובר על ידי הפעלת הפקודה למטה.
הערה: הקפד לשנות "שם משתמש" למשתמש ממנו תרצה לשמור את ההיסטוריה.
cat /home/username/.bash_history > history_backup
גבה רק פריטי היסטוריה מסוימים
יתכן שתרצה לגבות פקודות ספציפיות בהיסטוריה של מסוף Linux שלך. הדרך לעשות זאת היא להציג את קובץ ההיסטוריה ולשלב אותו עם ה- grep הפקודה, שתסנן מילות מפתח ספציפיות.
לדוגמה, רק לפקודות גיבוי בהיסטוריה של מסוף Linux שלך המכילות את ה- שיבוט גיט או git פקודות, אתה יכול להפעיל את הפעולה שלהלן.
הערה: בדוגמאות אלה אנו משתמשים ב" >> "ולא">. "הסיבה ל" >>" היא שהיא לא תחליף את תוכן הגיבוי של קובץ ההיסטוריה וניתן להריץ אותו שוב ושוב כדי להוסיף לתוכנית גיבוי.
cat ~/.bash_history | grep "git" >> history_backup
או
cat /home/username/.bash_history | grep "git" >> history_backup
מסנן עם grep ניתן להחיל גם על היסטוריה פקודה, ככה.
history | grep "git" >> history_backup
כדי לגבות מילות מפתח מסוימות מקובץ ההיסטוריה, החלף את "git" בדוגמאות למעלה עם כל הפקודות שתרצה לגבות. אל תהסס להפעיל מחדש פקודה זו ככל שיידרש.
כיצד לשחזר את גיבוי ההיסטוריה
שחזור הגיבוי של ההיסטוריה פשוט כמו מחיקת הקובץ המקורי והצבת הגיבוי במקומו. כדי למחוק את קובץ ההיסטוריה המקורי, השתמש ב - rm פקודה בחלון מסוף למחיקת ".bash_history."
rm ~/.bash_history
לאחר שנמחק קובץ ההיסטוריה המקורי מתיקיית הבית של המשתמש בו ברצונך לשחזר את ההיסטוריה, השתמש ב - mv פקודה לשנות את שם "history_backup" ל ".bash_history."
mv history_backup ~/.bash_history
כעת, לאחר שקובץ ההיסטוריה החדש קיים, הפעל את היסטוריה -רוו פקודה לטעון מחדש את פונקציית ההיסטוריה של הטרמינל.
history -rw
לאחר מכן תוכל לראות את היסטוריית הטרמינל שלך באמצעות:
history
שחזר גיבויים למשתמשים אחרים
צריך לשחזר גיבויים היסטוריים ממשתמשים אחרים במערכת? לשם כך, התחל על ידי כניסה למשתמש שלהם באמצעות su פקודה.
su username
לאחר הכניסה למשתמש, מחק את קובץ ההיסטוריה הנוכחי שנמצא בספריה הביתית של המשתמש (~).
rm ~/.bash_history
משם, שנה את שם קובץ הגיבוי ההיסטורי כקובץ החדש .bash_history בספריית המשתמש.
mv /path/to/backup/file/history-backup ~/.bash_history
כתוב את השינויים באמצעות:
history -rw
בסיום, רוץ היסטוריה לצפייה בפקודות המשוחזרות בחלון המסוף.
הערות