一、用户管理相关文件
1、用户管理
- 用户属性:用户名、口令、用户ID(UID)、用户主目录(HOME)、用户shell
2、/etc/passwd文件
- /etc/passwd文件是系统能够识别的用户清单。用户登录时,系统查询这个文件,确定用户的UID并验证用户口令。
- 文件包括信息:登录名、经过加密的口令、UID、默认的GID、个人信息、主目录、登录shell
linux@ubuntu:~$ man 5 passwd
- 打开passwd文件的格式相关信息,可以看到上述文件包括信息:
linux@ubuntu:~$ vi /etc/passwd
- 打开/etc/passwd文件,可以显示linux用户的相关信息。
- x:加密的密码。
- 1000:用户ID。
- 1000:用户所在的组。
- Linux, , ,:用户的个人信息。
- /home/linux:用户的主目录
- /bin/bash:用户命令通过bash解释。
注:passwd文件一般不会被编辑,可以通过一些命令间接修改它。
3、/etc/group文件
- 文件包括:组名、加密的口令、GID号、成员列表(彼此用顿号隔开)
linux@ubuntu:~$ sudo vi /etc/group
- 打开 /etc/group文件可以查看上述内容:
注:linux的组名是1000
二、用户管理相关命令
1、添加用户: adduser命令
- 语法:adduser<username>
linux@ubuntu:~$ sudo adduser testuser1
- 过程:
- 编辑passwd和shadow文件(关于密码信息的一个文件),定义用户账号
- 设置一个初始口令
- 创建用户主目录,用chown和chmod命令改变主目录的属性。
- 为用户所进行的步骤:
- 将默认的启动文件复制到用户主目录中。
- 设置用户的邮件主目录,并建立邮件别名。
1、输入命令
- testuser1是我新建的一个用户名称,700、1994000、10000000均为我输入的内容。
- 我将这个用户密码设置为2,这次没提醒我太过简单不让通过~
2、打开group文件验证
3、打开passwd文件验证
4、显示家目录下文件验证
- 家目录下,有一个新的testuser1文件出现。
- skel目录下和testuser1目录下,内容一致。
5、切换到testuser1用户下
- 注意:这个“-”和"testuser1"之间要有空格。
adduser配置文件
文件:/etc/adduser.conf
- FIRST_UID=1000
- LAST_UID=29999
- USERS_GID=100
- DHOME=/home
- DSHELL=/bin/bash
- SKEL=/etc/skel
注:在Linux中,Everything is a file. 打开该文件可以查看上述内容。
skel模板
- /etc/skel目录是被 /usr/sbin/useradd使用的。
- 系统把希望新用户拥有的配置文件从/etc/skel目录拷贝出来
- 常用文件包括:.bash_profile、.bashrc、.bash_logout、.dircolors、.inputrc、.vimrc
2、修改用户属性:usermod命令
- 语法:usermod [-u uid [-o]] [-g group] [-G group,...] [-d home [-m]] [-s shell] [-c comment] [-l new_name] [-f inactive]
[-e expire] [-p passwd] [-L|-U] name
- 注:在修改用户属性的同时,注意同时更改家目录 user -d /home/newname -m -l newname oldname
- -d 后面跟新的家目录。
- -m 如果这个新的家目录不存在,强制性建立。
- -l 后跟新的用户名。
linux@ubuntu:~$ sudo usermod -d /home/test_user1 -m -l test_user1 testuser1
- 可以更改的属性很多,在此举一个修改用户名称的例子
没有成功,不知道什么原因,望大神指点!
额。。。本来是想等大神来指点的。没想到下面的deluser也跟我报同样的错误,情急之下。我上网搜了一下这个“is not in the sudoers file”。结果。。。还真有发现。
搜索网址如下:
https://www.cnblogs.com/beauty/archive/2010/09/27/1836970.html
https://jingyan.baidu.com/article/2a1383284bb3e8074a134f2d.html
看到第一篇文章的时候,我本打算跟着去做的。后来这篇文章的内容提醒了我,不成功的原因可能是没有获得root权限,再看,果然是testuser1,我这才恍然大悟,原来此刻不是在以往的linux用户(超级用户)下。于是我首先想到回到原来的超级用户下。暂时没有按照那篇文章中的方法操作。但其操作方法依然值得参考。
结果是这样的:
- home下,原来的testuser1已经被改成了test_user1
- /etc/passwd下,也标明了这个用户的更改。
3、删除用户:deluser命令
- 语法:deluser <username>
- 例:deluser --remove-home user1
- 注:删除用户user1的同时应该删除用户的工作目录。
linux@ubuntu:~$ sudo deluser --remove-home test_user1
- 注:如果忘记写 --remove-home ,可以直接使用 sudo rm /home/test_user1
- 打开/etc/group文件,可以发现:组还是存在,但组员已经被删掉了。
4、添加用户组:addgroup命令
- 语法:addgroup groupname
- 例:addgroup group_name1
linux@ubuntu:~$ sudo addgroup group1
5、删除用户组:delgroup命令
- 语法:delgroup groupname
- 例:delgroup group_name1
linux@ubuntu:~$ sudo delgroup group1