删除用户命令userdel不加-r参数会怎样

都知道删除用户用userdel -r USERNAME,-r代表把用户相对应的目录一并删除,那么,假如疏忽了忘记加参数,会有什么结果,今天我尝试了一下。

#首先创建用户user2,删除后再重新添加:

[[email protected] ~]# useradd user2
[[email protected] ~]# userdel user2
[[email protected] ~]# useradd user2
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
Creating mailbox file: File exists

#没错,显示家目录已存在,并且,mailbox文件存在。因为删除用户时候没加-r选项,查看/home里面是否真存在该目录:
[[email protected] ~]# ll /home
total 60
drwx------. 2 ab1       ab1     4096 Aug 16 02:13 ab1
drwx------. 2 ab2       ab2     4096 Aug 16 02:13 ab2
drwx------. 2 ab3       ab3     4096 Aug 16 02:14 ab3
drwx------. 2 mageia    mageia  4096 Aug 20 21:38 linux
drwx------. 2 root      root   16384 Aug  6 07:18 lost+found
drwx------. 2 tom       tom     4096 Aug 17 01:51 tom
drwx------. 2 tom1      tom1    4096 Aug 17 01:51 tom1
drwx------. 4 user      user    4096 Aug 20 04:21 user
drwx------. 2 user2     user2   4096 Aug 21 14:10 user2

#是否删除/home/user2即可?我们尝试一下:
[[email protected] ~]# rm -rf /home/user2
[[email protected] ~]# useradd user2
useradd: user ‘user2‘ already exists
[[email protected] ~]# userdel user2
[[email protected] ~]# useradd user2
Creating mailbox file: File exists

#这个就是一开始我们只删除home目录下对应的文件,并没有删除mailbox里的文件,该文件会存放在哪里?
我们查看一下userdel的帮助手册,其中-r命令里有这样的描述显示该命令作用区域:
home directory itself and the user′s mail spool:

[[email protected] ~]# man userdel
-r, --remove
           Files in the user′s home directory will be removed along with the home
           directory itself and the user′s mail spool. Files located in other
           file systems will have to be searched for and deleted manually.

           The mail spool is defined by the MAIL_DIR variable in the login.defs
           file.
[[email protected] ~]# ls /var/spool/mail
ab1  ab2  ab3  mageia  mandriva  openstack  slackware  tom  tom1  user
  user2
  
[[email protected] ~]# rm /var/spool/mail/user2

删除该文件并重新创建user2,成功。

由此可知,删除用户userdel 加参数-r是多么重要。

那么问题来了,创建用户会生成什么文件?

目前得知的是/etc/passwd, /etc/shadow, 但这两个都只是添加记录,

创建文件夹的有/home/USERNAME,/var/spool/mail/USERNAME  至于其他地方有没有,等待后续深入学习吧。

时间: 2024-10-07 07:11:01

删除用户命令userdel不加-r参数会怎样的相关文章

删除用户时候没有加上-r 参数 导致无法在此创建

模拟环境[[email protected] home]# useradd ceshi[[email protected] home]# userdel ceshi[[email protected] home]# useradd ceshiuseradd: warning: the home directory already exists.Not copying any file from skel directory into it.Creating mailbox file: File

windows系统添加删除用户命令!

参考:net   help   usernet   help   group Net   user添加或修改用户帐户或者显示用户帐户信息. 语法net   user   [UserName   [Password   |   *]   [options]   [/domain]net   user   [UserName   {Password   |   *}   /add   [options]   [/domain]net   user   [UserName   [/delete]   

Linux下创建和删除用户

在Linux下创建用户和删除用户,必须在root用户下,如果你当前不是用根用户登录,你可以打开终端,输入"su root"命令,再输入根口令,就可以进入root用户模式下,如下所示: 创建用户(useradd): (1)用useradd命令创建用户创建用户: 语法: useradd [所要创建的用户名] ,回车 (2)用passwd命令为该用户创建密码: 语法: passwd [用户名]  ,回车 (3)输入密码:一般密码至少要有六个字符,这里输入的密码是看不见的,所以看到屏幕没显示,

Shell 脚本添加或删除用户及命令使用方法

Shell 要求:写一个脚本 一.添加10个用户user1到user10,密码同用户名,,若用户存在,但要求只有用户不存在的情况下才能添加,格式为/useradd.sh 解答思路:1.使用for 循环语句添加用户 user1 到user 10 2.判断用户是否存在,若存在,则echo 用户已存在 ,若不存在,添加用户 ,并设置密码与用户名相同 . 脚本: vim useradd.sh  并赋予+x权限. #!/bin/bash # for I in{1..10};do      if id us

mysql-管理命令【创建用户、授权、修改密码、删除用户和授权、忘记root密码】

一.创建用户 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 关键参数说明: username - 创建登录用户名, host - 指定该用户在哪个主机上可以登陆,本地用户可用localhost, 想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器. 例子:  CREATE USER 'code'@'localhost' IDE

Ubuntu建立和删除用户

添加用户: sudo adduser xxx 这样的命令会在home目录下添加一个帐号 sudo useradd xxx 仅仅是添加用户, 不会在home目录添加帐号 删除用户: 在普通用户下:sudo userdel -r xxx  因为你需要彻底删除用户,所以加上-r的选项,在删除用户的同时一起把这个用户的宿主目录和邮件目录删除.

centos添加和删除用户及 xxx is not in the sudoers file.This incident will be reported.的解决方法

1.添加用户,首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户 #passwd tommy   //修改密码 Changing password for user tommy. New UNIX password:     //在这里输入新密码 Retype new UNIX password:  //再次输入新密码 passwd: all authentication tokens updated successfully.

添加用户与删除用户

注意:添加用户和删除用户需要root来执行. 添加用户 用useradd命令,例如: # useradd -d/home/tom -s/bin/bash -u1000 tom 这样就添加了新用户tom,但这时候无密码,密码重设置一下即可.主目录如果没有,可以创建一个,不影响命令执行. 删除用户 用userdel命令,例如: # userdel tom 这样就删除了用户tom,同事删除了tom的档案(不清楚档案具体指什么).主目录和信箱不删除的话,下次同名同名用户不在重建信箱而是直接使用. 添加用

mysql 创建用户命令-grant

我们在使用mysql的过程中,经常需要对用户授权(添加,修改,删除),在mysql当中有三种方式实现 分别是 INSERT USER表的方法.CREATE USER的方法.GRANT的方法.今天主要看一下grant方法是如何实现的 分两种情况,第一种先使用create user命令创建用户,然后grant授权:第二种直接使用grant创建并授权:我们先看第一种如何实现 查看用户权限 show grants for 你的用户 比如:show grants for [email protected]