首先了解 每个位置对应的解释
useradd
常用命令
-
-u:指定用户的 UID 号,要求该 UID 号码未被其他用户使用。
-
-d:指定用户的宿主目录位置(当与-M 一起使用时,不生效)。
-
-e:指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-
-g:指定用户的基本组名(或使用 GID 号)。
-
-G:指定用户的附加组名(或使用 GID 号)。
-
-M:不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。
-
-s:指定用户的登录 Shell /sbin/nologin
wheel zhangsan
密码管理
常用命令
- -d:清空指定用户的密码,仅使用用户名即可登录系统。
-
-l:锁定用户账户。
-
-S:查看用户账户的状态(是否被锁定)。
-
-u:解锁用户账户。
修改用户账号的属性
usermod
常用命令
- -l 更改用户账号的登录名称(Login Name)
- -L 锁定用户账户
- -u 修改用户的 UID 号
- -U 解锁锁用户账户
- -d:修改用户的宿主目录位置。
- -e:修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
- -g:修改用户的基本组名(或使用 GID 号)
- -G:修改用户的附加组名(或使用 GID 号)
- -s:指定用户的登录 Shell
删除用户
userdel
常用命令
-r 将宿主目录一起删除
用户账号的初始配置文件
用户宿主目录下的初始配置文件只对当前用户有效
~/ .bash_profile
#此文件中的命令将在该用户每次登录时被执行,他会设置一些环境变量,并且会调用该用户的~/.bashrc文件
~/.bashrc
#此文件中的命令将在该用户每次打开新的bash shell时(包括登录系统)被执行(登录 切换 新的bash环境)
~/.bash_logout
#此文件中的命令将在该用户每次退出时bash shell时使用
/etc/bashrc
组管理
组账号文件
与用户帐号文件相类似
/etc/group:保存组帐号基本信息
/etc/gshadow:保存组帐号的密码信息基本不使用
添加组
groupadd
常用命令
groupadd 文件名
组内管理
gpasswd 命令——添加、设置、删除组成员
常用命令
- -a:向组内添加一个用户
- -d:从组内删除一个用户成员
- -M:定义组成员列表,以逗号分隔
删除组账号
groupdel 组帐号名
查询
- finger命令查询用户帐号的详细信息(finger [用户名])
- w 查询已登录到主机的用户信息
标题 | 含义 |
---|---|
USER | 登录到系统的用户。 |
TTY | 登录终端。 |
FROM | 表示用户从哪里登陆进来,一般显示远程登陆主机的 IP 地址或者主机名。 |
LOGIN@ | 用户登陆的日期和时间。 |
IDLE | 表示某个程序上次从终端开始执行到现在所持续的时间。 |
JCPU | 和该终端连接的所有进程占用的 CPU 运算时间。这个时间里并不包括过去的后台作业时间,但是包括当前正在运行的后台作业所占用的时间。 |
PCPU | 当前进程所占用的 CPU 运算时间。 |
WHAT | 当前用户正在执行的进程名称和选项,换句话说,就是表示用户当前执行的是什么命令。 |
- who
相比较 w 命令,who 命令只能显示当前登陆的用户信息,但无法知晓每个用户正在执行的命令。
需要说明的是,who 命令默认是通过 /var/run/utmp 文件来获取登陆用户信息,但如果通过 file 指定另一个文件,则 who 命令将不再默认读取 /var/run/utmp 文件,而是读取该指定文件来获取信息。
选项 | 含义 |
---|---|
-a | 列出所有信息,相当于所有选项。 |
-b | 列出系统最近启动的时间日期。 |
-l | 列出所有可登陆的终端信息。 |
-m | 仅列出关于当前终端的信息,who -m 命令等同于 who am i 。 |
-q | 列出在本地系统上的用户和用户数的清单。 |
-r | 显示当前系统的运行级别。 |
-s | 仅显示名称、线路和时间字段信息,这是 who 命令的默认选项。 |
-u | 显示当前每个用户的用户名、登陆终端、登陆时间、线路活动和进程标识。 |
-T 或 -w | 显示 tty 终端的状态,“+”表示对任何人可写,“-”表示仅对 root 用户或所有者可 |
文件/目录的权限和归属
程序访问文件时的权限,取决于此程序的发起者
- 进程的发起者,同文件的属主:则应用文件属主权限
- 进程的发起者,属于文件属组;则应用文件属组权限
- 应用文件“其它”权限
例子 root用户和普通用户 是否都可以看 (cat /etc/shadow)
访问人群分为了三类
- 所属主(u)
- 所属组(g)
- 其他人 (o)
权限分为三种
- 读(r,4)
- 写(w,2)
- 执行(x,1程序,脚本)
对文件的权限
- r 可使用文件查看类工具,比如:cat,可以获取其内容
- w 可修改其内容
- x 可以把此文件提请内核启动为一个进程,即可以执行(运行)此文件(此文件的内容必须是可执行)
对目录的权限
-
r 可以使用ls查看此目录中文件列表
-
w 可在此目录中创建文件,也可删除此目录中的文件,而和此被删除的文件的权限无关
-
x 可以cd进入此目录,可以使用ls -l查看此目录中文件元数据(须配合r权限),属于目录的可访问的最小权限
chmod
模式法:
chmod 对谁(所有者,所属组,其他)操作(+ - =)权限 文件
命令如下
chmod [ugia] [±=] [rwx] 文件或目录等
[ugoa]
- u 属主
- g 属组
- i 其他用户
- a 所有用户
常用选项
-R:递归修改指定目录下所有子项的权限
面试题:
文件夹 一定要有执行权限
你去切知道文件夹的名字才能
执行 cp /etc/issue /data/dir/ 所需要的最小权限?
答案
/bin/cp 需要x权限
/etc/ 需要x权限
/etc/issue 需要r权限
/data 需要x权限
/data/dir 需要w,x权限
umask
umask 的值可以用来保留在创建文件权限
实现方式:
新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
新建目录的默认权限: 777-umask
非特权用户umask默认是 002
root的umask 默认是 022
例子
用户的文件设置 -r一–权限,umask 266
666-499=266
目录设的权限为: dr-x—umask 277
777-500=277