userdel- پاک کردن حساب کاربری و فایل های مربوطه

دستور userdel این امکان رو به ما می دهد که حساب کاربری یک کاربر رو پاک کنیم که این کار با پاک شدن خط مربوط به کاربر مد نظرمون از دو فایل etc/passwd/ و etc/shadow/ انجام میشود . همچنین این دستور امکان حذف کردن فایل های داخل home directory و خود آن رو به ما می دهد .

اگر دستور userdel رو فقط به همراه نام کاربری بزنیم , فقط حساب کاربر رو از سیستم پاک میکند و home directory و فایل های دیگه که به کاربر مربوط هستن دست نخورده می ماند .

root@aliabry:/# cat /etc/passwd | grep aliabry
aliabry:x:1002:1003:aliabry,,,:/home/aliabry:/bin/bash
root@aliabry:/# userdel aliabry
root@aliabry:/# cat /etc/passwd | grep aliabry

همون طور که در خروجی میبینیم دیگه کاربری با نام aliabry در فایل passwd وجود ندارد

r-: با کمک این اپشن میتونیم home directory و فایل های داخل اون رو پاک کنیم . این رو باید در نظر داشته باشین که ممکن هستش که فایلی در home direcoty وجود داشته باشد که مال کار بر دیگری باشد که با استفاده از این اپشن اون فایل ها هم حتی پاک میشوند و همچنین ممکن هست که در قسمت های دیگه سیستم یا پارتیشن ها فایلی وجود داشته باشد که مالکیتش مربوط به کاربری که داریم حسابش رو پاک میکنیم باشد که با استفاده از اپشن r- اون فایل ها دست نخورده باقی می مانند که با دستور find و با کمک اپشن های uid- و user-- می تونین اون فایل هارو پیدا کنین .

root@aliabry:/# ls /home
aliabry  aliali  boot.tar.gz  lili
root@aliabry:/# userdel -r aliabry
root@aliabry:/# ls /home
aliali  boot.tar.gz  lili
root@aliabry:/#

همون طور که در خروجی میبینین دایرکتوری aliabry که home direcotory کاربر aliabry بود پاک شد .

f-: اگر قتی که میخاین اکانت یک کاربر رو پاک کنین اون کاربر مربوطه در سیستم login باشد اروری مثل زیر میگیرین :

root@aliabry:/# userdel aliabry
userdel: user aliabry is currently logged in

حالا اگر با وجود این که این کاربر login هستش و باز هم میخاین حساب کاربریش رو پاک کنین از اپشن f- می تونین استفاده کنین .

اگر این اپشن رو به همراه r- استفاده کنین پوشه home directory کاربر حتی اگر با کاربر دیگری مشترک باشه باز هم پاک می شود.

استفاده از اپشن f- مقداری خطرناکه , بهتره که در استفاده ازش یک مقداری محتاتانه عمل کنین .

root@aliabry:/# userdel aliabry
userdel: user aliabry is currently logged in
root@aliabry:/# cat /etc/passwd | grep aliabry
aliabry:x:1002:1003::/home/aliabry:/bin/sh
root@aliabry:/# userdel -f aliabry
userdel: user aliabry is currently logged in
root@aliabry:/# cat /etc/passwd | grep aliabry
root@aliabry:/#

 

h-: با کمک این اپشن help دستور رو میتونین ببینین که خروجی شبیه زیر دارد :

root@aliabry:/# userdel -h
Usage: userdel [options] LOGIN

Options:
  -f, --force                   force removal of files,
                                even if not owned by user
  -h, --help                    display this help message and exit
  -r, --remove                  remove home directory and mail spool