linux系统 用户身份与文件权限(一)
0.了解文件的所有者、所属组以及其他人可对文件进行的读(r)、写(w)、执行(x)等操作,以及如何在Linux系统中添加、删除、修改用户账户信息。在Linux系统中创建每个用户时,将自动创建一个与其同名的基本用户组(私有组),而且这个基本用户组只有该用户一个人。如果该用户以后被归纳入其他用户组,则这个其他用户组称之为扩展用户组(标准组)。一个用户只有一个基本用户组,但是可以有多个扩展用户组,从而满足日常的工作需要。
1.useradd
useradd命令用于创建新的用户,格式为“useradd [选项] 用户名”。
可以使用useradd命令创建用户账户。使用该命令创建用户账户时,默认的用户家目录会被存放在/home目录中,默认的Shell解释器为/bin/bash,而且默认会创建一个与该用户同名的基本用户组。这些默认设置可以根据下表中的useradd命令参数自行修改。
参数 | 作用 |
-d | 指定用户的家目录(默认为/home/username) |
-e | 账户的到期时间,格式为YYYY-MM-DD. |
-u | 指定该用户的默认UID |
-g | 指定一个初始的用户基本组(必须已存在) |
-G | 指定一个或多个扩展用户组 |
-N | 不创建与用户同名的基本用户组 |
-s | 指定该用户的默认Shell解释器 |
下面我们创建一个普通用户并指定家目录的路径、用户的UID以及Shell解释器。在下面的命令中,请注意/sbin/nologin,它是终端解释器中的一员,与Bash解释器有着天壤之别。一旦用户的解释器被设置为nologin,则代表该用户不能登录到系统中:
useradd -d /home/linux -u 8888 -s /sbin/nologin user1
id user1
2.groupadd
groupadd命令用于创建用户组,格式为“groupadd [选项] 群组名”。
为了能够更加高效地指派系统中各个用户的权限,在工作中常常会把几个用户加入到同一个组里面,这样便可以针对一类用户统一安排权限。创建用户组的步骤非常简单,例如使用如下命令创建一个用户组zaq:
groupadd zaq
3.usermod
usermod命令用于修改用户的属性,格式为“usermod [选项] 用户名”。
Linux系统中的一切都是文件,因此在系统中创建用户也就是修改配置文件的过程。用户的信息保存在/etc/passwd文件中,可以直接用文本编辑器来修改其中的用户参数项目,也可以用usermod命令修改已经创建的用户信息,诸如用户的UID、基本/扩展用户组、默认终端等。usermod命令的参数以及作用如下表所示。
参数 | 作用 |
-c | 填写用户账户的备注信息 |
-d -m | 参数-m与参数-d连用,可重新指定用户的家目录并自动把旧的数据转移过去 |
-e | 账户的到期时间,格式为YYYY-MM-DD |
-g | 变更所属用户组 |
-G | 变更扩展用户组 |
-L | 锁定用户禁止其登录系统 |
-U | 解锁用户,允许其登录系统 |
-s | 变更默认终端 |
-u | 修改用户的UID |
将用户user1加入到root用户组中,这样扩展组列表中则会出现root用户组的字样,而基本组不会受到影响:
usermod -G root user1
用-u参数修改user1用户的UID号码值。除此之外,我们还可以用-g参数修改用户的基本组ID,用-G参数修改用户扩展组ID。
usermod -u 6666 user1
4.passwd
passwd命令用于修改用户密码、过期时间、认证信息等,格式为“passwd [选项] [用户名]”。
普通用户只能使用passwd命令修改自身的系统密码,而root管理员则有权限修改其他所有人的密码。更酷的是,root管理员在Linux系统中修改自己或他人的密码时不需要验证旧密码,这一点特别方便。既然root管理员可以修改其他用户的密码,就表示完全拥有该用户的管理权限。passwd命令中可用的参数以及作用如下表所示。
参数 | 作用 |
-l | 锁定用户,禁止其登录 |
-u | 解除锁定,允许用户登录 |
--stdin | 允许通过标准输入修改用户密码,如echo "NewPassWord" | passwd --stdin Username |
-d | 使该用户可用空密码登录系统 |
-e | 强制用户在下次登录时修改密码 |
-S | 显示用户的密码是否被锁定,以及密码所采用的加密算法名称 |
如何修改用户自己的密码,以及如何修改其他人的密码(修改他人密码时,需要具有root管理员权限):
锁定用户,解锁用户,查看锁定状态:
5.userdel
userdel命令用于删除用户,格式为“userdel [选项] 用户名”。
如果我们确认某位用户后续不再会登录到系统中,则可以通过userdel命令删除该用户的所有信息。在执行删除操作时,该用户的家目录默认会保留下来,此时可以使用-r参数将其删除。userdel命令的参数以及作用如下表所示。
参数 | 作用 |
-f | 强制删除用户 |
-r | 同时删除用户及用户家目录 |
userdel user1
后续见《linux系统 用户身份与文件权限(二)》(详细学习,请见)
上一篇: 原生js设置属性值和获取属性值
下一篇: 平日你是从哪里获取前端知识?
推荐阅读
-
Linux磁盘与文件系统管理(一)
-
linux系统与windows系统文件权限有什么区别?
-
Linux系统学习 十九、VSFTP服务—虚拟用户访问—为每个虚拟用户建立自己的配置文件,单独定义权限
-
linux系统 用户身份与文件权限(三)
-
【linux系统(ubuntu16.04)】新用户授权sudo权限时修改/etc/sudoers文件权限 chmod 777 /etc/sudoers
-
LINUX安全运维之:文件系统的权限修改与安全设置
-
【Linux学习笔记】之【文件目录权限与文件系统属性管理命令】
-
关于Linux文件访问权限与设置用户id位
-
Django用户认证系统组与权限(一)
-
linux系统 用户身份与文件权限(一)