گاهی ممکن است مدیر سیستم لینوکس بنابه دلایلی، پس از مدتی حساب کاربری شما را حذف کند، همان طور که می دانید زمانی که حساب های کاربری را در یک سیستم لینوکس حذف می کنید باید دایرکتوری اصلی آن ها را نیز حذف کنید.
زیرا با حذف حساب های کاربری به همراه دایرکتوری اصلی در لینوکس، فضای ذخیره سازی برای کاربران جدید در سیستم یا سایر خدمات آزاد خواهد شد.
بنابراین تصمیم گرفتیم در یک مقاله جدید، نحوه حذف حساب های کاربری به همراه دایرکتوری اصلی در لینوکس را آموزش دهیم، پس برای مراحل حذف حساب های کاربری به همراه دایرکتوری، کنار آذرسیس باشید.
فهرست مطالب
مراحل حذف حساب های کاربری به همراه دایرکتوری در لینوکس
برای شروع حذف حساب های کاربری به همراه دایرکتوری، ابتدا لازم است دو حساب کاربری در سیستم خودتان ایجاد کنید.
برای این کار در این آموزش دو حساب Azarsys و user Linuxsay با دایرکتوری های اصلی آن ها /home/ azarsys و /home/linuxsay را با دستور زیر ایجاد کردیم:
# adduser azarsys # passwd azarsys # adduser linuxsay # passwd linuxsay
نکته: به یاد داشته باشید که می توانید از دستور Useradd نیز برای ایجاد حساب کاربری استفاده کنید.
در این مرحله چگونگی حذف حساب های کاربری به همراه دایرکتوری در لینوکس، با کمک دو دستور Deluser و Userdel بحث خواهد شد.
فایل پیکربندی دستور Deluser برای سیستم های دبیان و مشتقات آن فایل /etc/deluser.conf و فایل پیکربندی دستور Userdel برای سیستم های مبتنی بر RedHat/CentOS فایل /etc/login.defs است.
دایرکتوری های داخل فایل پیکربندی برای دستورات فوق، چگونگی مدیریت همه فایل های کاربر و فهرست را با اجرا دستور تعیین می کنند.
همچنین باید دقت کنید که مقادیر موجود در پیکربندی پیش فرض هستند و می توانید براساس نیاز خود آن را تغییر دهید.
# vi /etc/deluser.conf [On Debian and its derivatives] # vi /etc/login.defs [On RedHat/CentOS based systems]
زمانی که کاربران وارد سرور شده و از خدمات استفاده می کنند، می توانید کاربر را به همراه دایرکتوری اصلی آن حذف کنید، اما دقت کنید که برای حذف موثر کاربران باید وارد سرور نباشند.
نحوه قفل کردن حساب های کاربری در لینوکس
برای اینکه کاربر به سیستم دسترسی نداشته باشد باید حساب کاربری را قفل کنید، با قفل کردن حساب کاربری یک کاربر نمی تواند فرآیندهای روی سیستم را اجرا کند.
و اگر می خواهید این کار ا انجام دهید، دستور زیر را وارد کنید:
# passwd --lock azarsys Locking password for user azarsys. passwd: Success
نحوه یافتن و از بین بردن فرآیندهای در حال اجرا کاربر
اکنون باید تمام فرآیندهای در حال اجرا کاربر را پیدا کرده و سپس برای از بین بردن آن ها تلاش کنید، برای انجام این کار در لینوکس مرحله زیر را پیش ببرید.
PID فرآیندهای متعلق به کاربر را به کمک دستور زیر تعیین می کند:
# pgrep -u azarsys 1947 1959 2091 2094 2095 2168 2175 2179 2183 2188 2190 2202 2207 2212 2214
در این مرحله برای لیست کردن اینترن های نام کاربری مانند PPIDs ،PIDs، ترمینال مورد استفاده، وضعیت فرآیند و مسیر دستور به سبک قالب بندی کامل، دستور زیر را وارد کنید:
# ps -f --pid $(pgrep -u azarsys) UID PID PPID C STIME TTY STAT TIME CMD azarsys 1947 1 0 10:49 ? SLl 0:00 /usr/bin/gnome-keyring-daemon --daemonize --login azarsys 1959 1280 0 10:49 ? Ssl 0:00 mate-session azarsys 2091 1959 0 10:49 ? Ss 0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session azarsys 2094 1 0 10:49 ? S 0:00 /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session azarsys 2095 1 0 10:49 ? Ss 0:00 //bin/dbus-daemon --fork --print-pid 6 --print-address 9 --session azarsys 2168 1 0 10:49 ? Sl 0:00 /usr/lib/dconf/dconf-service azarsys 2175 1959 0 10:49 ? Sl 0:02 /usr/bin/mate-settings-daemon azarsys 2179 1959 0 10:49 ? Sl 0:47 marco azarsys 2183 1 0 10:49 ? Sl 0:00 /usr/lib/gvfs/gvfsd azarsys 2188 1959 0 10:49 ? Sl 0:00 mate-panel azarsys 2190 1 0 10:49 ? Sl 0:00 /usr/lib/gvfs/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes azarsys 2202 1 0 10:49 ? S<l 0:20 /usr/bin/pulseaudio --start --log-target=syslog azarsys 2207 1959 0 10:49 ? S 0:00 /bin/sh /usr/bin/startcaja azarsys 2212 1 0 10:49 ? Sl 0:03 /usr/bin/python /usr/lib/linuxmint/mintMenu/mintMenu.py azarsys 2214 1 0 10:49 ? Sl 0:11 /usr/lib/mate-panel/wnck-applet ....
پس از یافتن تمام فرآیندهای در حال اجرا کاربر می توانید با کمک دستور زیر فرآیندهای در حال اجرا را از بین ببرید:
# killall -9 -u azarsys
-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]
نحوه بکاپ گیری اطلاعات کاربر قبل از حذف حساب های کاربری به همراه دایرکتوری
این مرحله اختیاری است اما ممکن است در آینده به بررسی جزییات حساب کاربری و فایل ها نیاز داشته باشید، با کمک دستور زیر می توانید از دایرکتوری اصلی کاربران یک نسخه پشتیبان ایجاد کنید:
# tar jcvf /user-backups/azarsys-home-directory-backup.tar.bz2 /home/azarsys
نحوه حذف و از بین بردن حساب کاربری و فایل ها
برای از بین بردن و حذف کاربر به همراه دایرکتوری اصلی کافی است دستور زیر را اجرا کنید:
# deluser --remove-home azarsys [On Debian and its derivatives] # userdel --remove azarsys [On RedHat/CentOS based systems]
آذرسیس تنها ارائه دهنده سرور مجازی و سرور اختصاصی از 60 لوکیشن در دنیاست که کانفیگ رایگان بر روی خدمات خود به شما عرضه می کند.
سخن آخر
همان طور که مشاهده کردید موضوع این مقاله از سری وبلاگ های آذرسیس، نحوه حذف حساب های کاربری به همراه دایرکتوری در لینوکس بود.
مراحل این آموزش بسیار آسان است و کافیست موارد گفته شده را دنبال کنید تا بتوانید حساب های کاربری را مدیریت کنید.
امیدوارم مقاله حذف حساب های کاربری به همراه دایرکتوری، برای تان مفید بوده باشد، در صورت داشتن هرگونه سوال یا نظر می توانید از قسمت ارسال نظرات با کارشناسان آذرسیس در ارتباط باشید.
در مقاله حذف حساب های کاربری به همراه دایرکتوری، منظور از Home دایرکتوری چیست؟
حاوی فایل های شخصی یک کاربر و در سیستم لینوکس شامل فایل های پیکربندی است.