איך למחוק חשבונות משתמש ותיקיות הבית שלהם בלינוקס

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

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

במדריך זה, אני אקח אותך בחלקים שאפשר להשתמש בהם כדי למחוק חשבון משתמש יחד עם ספריית הבית שלו/שלה במערכת Linux.

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

כיצד למחוק/להסיר חשבון משתמש עם ספריית הבית

לצורך הדגמה, קודם כל אתחל שני חשבונות משתמש במערכת שלי שהם המשתמש tecmint והמשתמש linuxsay עם ספריות ביתם /home/tecmint ו-/home/linusay בהתאמה באמצעות הפקודה adduser.

adduser tecmint
passwd tecmint

adduser linuxsay
passwd linuxsay
Create New User Accounts in Linux

מהתמונה שלמעלה, השתמשתי בפקודה adduser כדי ליצור חשבונות משתמש ב-Linux. אפשר גם להשתמש בפקודה useradd, שתיהן אותו דבר אך ההבדל העיקרי בין הפקודות הללו נמצא בשימוש ובממשק המשתמש שלהן.

הפקודה " adduser" היא ממשק בכיר יותר להוספת משתמשים למערכת, מבצעת כל ההגדרות הדרושות ויוצרת ספרייה בית למשתמש באמצעות הגדרות ברירת מחדל.

מצד שני, " useradd" היא כלי בסיסי יותר להוספת משתמשים למערכת ועדכון מידע משתמש. היא אינה יוצרת ספרייה בית למשתמש כברירת מחדל ודורשת מהמנהל המערכת לציין אפשרויות נוספות באופן ידני.

בואו נמשיך כעת לראות כיצד למחוק או להסיר חשבונות משתמש ב-Linux באמצעות הפקודה deluser (ל- Debian וביצועיה) ו-userdel (ל- מערכות מבוססות RedHat) באמצעות הפקודות.

sudo deluser --remove-home username
sudo userdel -r username

הפקודה שלמעלה תמחק את ספריית הבית של המשתמש יחד עם החשבון שלו.

הוראות בקובץ התצורה עבור פקודות deluser ו-userdel קובעות איך היא תתמודד עם כל קבצי המשתמש והמדריכים כשאתה מפעיל את הפקודה.

בואו נסתכל על קובץ התצורה עבור הפקודה deluser שהוא /etc/deluser.conf במשנות Debian כמו Ubuntu, Kali ו-Mint, ועבור משתמשי RHEL/CentOS/Fedora, אפשר לצפות בקבצים /etc/login.defs.

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

vi /etc/deluser.conf         [On Debian and its derivatives]
vi /etc/login.defs           [On RedHat/CentOS based systems]
Del User Configuration

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

כיצד לנעול חשבונות משתמש בלינוקס

כדי לנעול חשבון משתמש בלינוקס, ניתן להשתמש בפקודה passwd בשימוש עם האופציה -l או --lock ושם המשתמש. ניטור חשבון משתמש מונע ממנו להתחבר תוך כדי שמירת החשבון והקבצים המשויכים אליו.

sudo passwd -l username
OR
sudo passwd -lock username
Lock User Account Password in Linux

כדי לפתוח את החשבון, ניתן להשתמש בפקודה passwd שוב עם האופציה -u.

sudo passwd -u username

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

אפשר למצוא ולהרוג תהליכים שמופעלים על ידי משתמש ב-Linux באמצעות הps command כדי למצוא את התהליכים הקשורים למשתמש ספציפי והkill command כדי לסגור אותם.

מציאת תהליכי משתמש

השתמש בps עם התג -u ואחריו שם המשתמש כדי לרשום תהליכים עבור משתמש ספציפי.

ps -u username

אז אפשר לרשום את התהליכים במונחים של שם משתמש, מספרי זיהוי תהליכים (PIDs), מספרי זיהוי תהליכים הורים (PPIDs), המסך שנמצא בשימוש, מצב התהליך ושם הפקודה בפורמט מלא עם העזרת הפקודה הבאה כפי שנראה:

ps -f --pid $(pgrep -u tecmint)
Find All Running Processes of the User

הרג תהליכי משתמש

ברגע שמצאת את כל התהליכים המופעלים של משתמש, אפשר להשתמש בkillall command כדי להרוג את התהליכים המופעלים כפי שנראה.

killall -9 -u tecmint

ה-9 הוא מספר האיתות לאיתור SIGKILL או להשתמש ב-KILL במקום -9 ו-u מגדיר את שם המשתמש.

הערה: במהדורות האחרונות של RedHat/CentOS 7.x ו-Fedora 21+, תקבל הודעת שגיאה:

-bash: killall: command not found

כדי לתקן שגיאה כזו, תצטרך להתקין את החבילה psmisc כפי שנראה:

yum install psmisc       [On RedHat/CentOS 7.x]
dnf install psmisc       [On Fedora 21+ versions]

איך לגבש נתוני משתמש לפני מחיקה

לגבות מידע משתמש לפני מחיקת חשבון משתמש במערכת Linux, תוכלו לעקוב אחרי הפקודות הבאות.

sudo mkdir /backup
sudo cp -r /home/username /backup

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

sudo tar -zcvf /backup/username_backup.tar.gz /backup/username
Backup User Home Directory in Linux

איך למחוק/להסיר קבצים של משתמש ב-Linux

עכשיו תוכלו להסיר בבטחה את המשתמש יחד עם ספריית הבית שלו/שלה, כדי להסיר את כל קבצי המשתמש במערכת, השתמשו באפשרות --remove-all-files בפקודה שלהלן:

deluser --remove-home tecmint      [On Debian and its derivatives]
userdel --remove tecmint           [On RedHat/CentOS based systems]
Delete User Account with Home Directory
סיכום

זה כל מה שקשור להסרת משתמש וספריית הבית שלו ממערכת Linux. אני מאמין שהמדריך קל מספיק לעקיבה, אך אפשר להביע דאגה או להוסיף רעיונות נוספים על ידי השארת תגובה.

Source:
https://www.tecmint.com/delete-remove-a-user-account-with-home-directory-in-linux/