Linux
是一个多用户、多任务的操作系统,系统设计之初就是为了满足多个用户同时操作的需求。用户是Linux系统工作中一个重要的环节,用户管理主要是包括用户和组的管理。本文主要包括:
- 用户身份和权限
- 组管理
- 修改权限
用户身份
-
管理员的
UID
为0
:系统的管理员用户,一般情况是root
。 -
系统用户
UID
为1-999
:Linux系统中默认服务程序会有独立的系统用户负责运行。 -
普通用户
UID
为1000
开始:由管理员创建的用于日常工作的用户。 -
为了方便管理属于同一组的用户,
Linux
系统中引入用户组的概念,通过GID
将多个用户加到同一用户组中。 -
创建每个用户时,自动为其分配一个与其同名的基本用户组,而且这个基本用户只有该用户一个人。
-
若用户被分配到另一个组,则“另一个组”称为扩展用户组。
-
一个用户只属于一个基本用户组,但可以属于多个扩展用户组。
useradd
命令
-
创建新的用户,默认的用户家目录会被存放在
/home
目录中。 -
默认的
shell
解释是/bin/bash
,同时创建同名的基本用户组。
参数 | 作用 |
---|---|
d | 指定用户的家目录 |
u | 指定用户默认的UID |
g | 指定一个初始的用户基本组 |
s | 指定用户默认的bash 解释器 |
G | 指定一个或者多个扩展用户组 |
groupadd
命令
groupadd
命令用于创建用户组- 将几个用户加入到同一个组里面,针对同一类用户统一安排权限
1
groupadd ronny # 添加ronny组
1 | groupadd ronny # 添加ronny组 |
usermod
命令
usermod
命令用于改变用户的属性- 用户的信息保存在
/etc/passwd
文件中,可以在文件中直接修改用户参数的相关信息 - 命令的参数
参数 | 作用 |
---|---|
c | 填写用户组的备注信息 |
g | 变更所属用户组 |
G | 变更扩展用户组 |
U | 解锁用户,允许其登录系统 |
s | 变更默认终端 |
u | 修改用户的UID |
1 | root@peter:~# id ubuntu # 查看用户信息 |
passwd
命令
-
passwd
命令用于修改用户密码、过期时间、认证信息等 -
普通用户只能使用
passwd
命令来修改自身的系统密码sudo passwd root
-
root
账户有权限修改其他用户的密码
参数 | 作用 |
---|---|
l | 锁定用户,禁止其登录 |
u | 接触用户,允许登录 |
–stdin | 允许通过标准输入修改用户密码,echo “12345” |
e | 强制用户在下次登录时修改密码 |
S | 显示用户密码是否被锁定,及密码采用的加密算法名称 |
passwd
文件
/etc/passwd 文件用于存放用户的信息,由6个分号组成的7个信息
- 用户名
- 密码
- UID 用户标识
- GID 组标识符
- 用户全名或者本地账号
- 家目录
- 登录使用的shell,默认是bash
1
2
root@peter:~# cat -n /etc/passwd|grep ubuntu # 显示ubuntu用户
41 ubuntu:x:1000:1000:ubuntu,,,:/home/ubuntu:/bin/bash
1 | root@peter:~# cat -n /etc/passwd|grep ubuntu # 显示ubuntu用户 |
userdel
命令
命令用于删除用户,在执行操作的时候,该用户的家目录默认被保存,参数-r可以强制删除
参数 | 作用 |
---|---|
-f | 强制删除用户 |
-r | 同时删除用户及用户家目录 |
查看用户信息
序号 | 命令 | 作用 |
---|---|---|
01 | id 用户名 | 查看用户的UID和GID信息 |
02 | who | 查看当前所有登录的用户列表 |
03 | whoami | 查看当前登录用户的账户名 |
1
2
3
4
root@peter:~# who
ubuntu :0 2019-05-26 19:54 (:0) # 当前只有ubuntu用户登录
root@peter:~# whoami
root
1 | root@peter:~# who |
切换用户
- su - 用户名:切换用户,并且切换目录
- su :直接切换到
root
账户,不建议,不安全 - exit :退出当前用户
权限
Linux
中一切皆是文件。每个文件的类型不同,Linux
采用不同的符号加以区分。
- -普通文件
- d 目录文件
- l 链接文件
- b 块设备文件
- c 字符设备文件
- p 管道文件
- Linux系统中,每个文件都有所属的所有者和所有组
- 规定了文件的所有者、所有组以及其他人对文件的读/写/执行的权限,它们对文件/目录的权限包括:
- 可读:能够读取文件的实际内容
- 可写:表示对文件进行编辑、新增、修改、删除等操作
- 可执行:能够执行一个脚本程序
序号 | 权限 | 英文 | 缩写 | 数字代号 |
---|---|---|---|---|
01 | 读 | read | r | 4 |
02 | 写 | write | w | 2 |
03 | 执行 | excute | x | 1 |
修改权限
序号 | 命令 | 作用 |
---|---|---|
01 | chown | 修改拥有者 |
02 | chgrp | 修改组 |
03 | chmod | 修改权限 |
- 命令格式
1 | chown 用户名 文件名|目录名 |
chmod
命令在设置权限时,可以直接使用三个数字对应 拥有者/组/其他用户 的权限。- 简单示例:
755 ---->rwxr-xr-x
643 ---->rw-r—wx
136 ---->–x-wxrw-
总结:每3位一组,根据二进制进行计算