如題,普通用戶/home/wlf被別人刪了,而wlf用戶下其實還有進程在跑,如果直接用userdel刪是沒法刪的:
[root@wlf88 ~]# userdel -r wlf userdel: user wlf is currently used by process 1253
它會提示你當前還有個進程1253在跑着呢。現在我的用戶是存在的,但是進去卻沒有任何權限,因為目錄被刪了:
[root@wlf88 ~]# su - wlf Last login: Tue Apr 28 15:36:29 CST 2020 on pts/4 su: warning: cannot change directory to /home/wlf: No such file or directory -bash-4.2$ ll ls: cannot open directory .: Permission denied -bash-4.2$ pwd /root -bash-4.2$ exit logout [root@wlf88 ~]#
我們發現進去一個不存在的目錄,用戶變成了-bash-4.2。新建一個同名目錄wlf:
[root@wlf88 ~]# cd /home [root@wlf88 home]# mkdir wlf -m 700
上面指定了權限為700,還需要指定該目錄的用戶、用戶組:
chown wlf:wlf wlf
接着我們新建一個普通用戶wlf1,目的是為了把wlf1中的環境變量文件復制給wlf目錄:
[root@wlf88 home]# useradd wlf1 -m -d /home/wlf1 -s /bin/bash [root@wlf88 home]# cp wlf1/.bash_logout wlf1/.bash_profile wlf1/.bashrc wlf [root@wlf88 home]# chown wlf:wlf wlf/.bash_logout wlf/.bash_profile wlf/.bashrc [root@wlf88 home]# su - wlf Last login: Tue Apr 28 16:06:21 CST 2020 on pts/4
現在可以登錄wlf了,那么wlf1也就沒有利用價值了,刪掉:
userdel -r wlf1
注意一點:現在僅僅是用戶恢復了,但是原來wlf用戶里面的文件是沒有恢復的。