Linux中的用户管理

这篇博客详细介绍了Linux系统中用户管理的相关文件,如/etc/passwd和/etc/group,以及用户管理的命令,包括添加用户(adduser)、修改用户(usermod)、删除用户(deluser)和管理用户组(addgroup和delgroup)的操作。同时,博主分享了在实际操作中遇到的问题及解决办法,例如修改用户名称时权限不足的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、用户管理相关文件

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
  • 过程:
  1. 编辑passwd和shadow文件(关于密码信息的一个文件),定义用户账号
  2. 设置一个初始口令
  3. 创建用户主目录,用chown和chmod命令改变主目录的属性。
  • 为用户所进行的步骤:
  1. 将默认的启动文件复制到用户主目录中。
  2. 设置用户的邮件主目录,并建立邮件别名。

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
  1. -d 后面跟新的家目录。
  2. -m 如果这个新的家目录不存在,强制性建立。
  3. -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

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值