前言:
在linux中一切都是文件(文件夹和硬件设备是特殊的文件),如果有可能尽量使用文本文件。文本文件是人和机器能理解的文件,也成为人和机器进行交流的最好途径。由于所有的配置文件都是文本,所以你只需要一个最简单的编辑器就可以修改。由于修改文本文件如此简单,所以Linux系统本身肯定要加以规范。这就引出了用户(组)和权限这2个概念。而这2个概念的引入,完美的保证了Linux的安全性,同时没有添加复杂性。由于一切皆为文件。所以Linux引入了3个文件来管理用户(组), /etc/passwd存放用户信息,/etc/shadow存放用户密码信息,/etc/group存放组信息,然后在文件系统中的每个文件的文件头里面添加了用户和文件之间的关系信息
用户账号和组账号概述
Linux基于用户身份对资源访问进行控制
用户账号
超级用户 root
普通用户 自定义
程序用户 无法登录
匿名用户 bobody
组账号
基本组(私有组)
附加组(公共组)
私有组:伴随着用户的创建而建立 与用户同名
公有组:附加组 直接创建空组,可以添加已有的用户,给组设置权限,改组中的所有用户都具备此权限
UID和GID
UID:用户标识号
GID:组标识号
UID是0 root 1~999程序用户 100~60000普通用户
保存用户名称、宿主目录、登录shell等基本信息
文件位置:/etc/passwd
每一行对应一个用户的账号记录
root:x:0:0: root:/ root: /bin/bash
root 用户账号
x 只表示有密码
0 用户账号id
0 组账号id
root 用户说明
root 宿主目录
bin/bash 登录shell
添加用户账号
useradd命令
常用选项
-u:指定uid
-d:指定家目录
-e:指定失效时间
-g:指定基本组
-G:指定附加组
-M:指定不创建家目录
-s:指定是否允许从shell脚本登录
userdel 【-r】用户名
表示连用户宿主目录一并删除
设置/更改用户口令
passwd命令
常用选项
-d:清除密码
-S:查看账户状态
-l:锁定账户
-u:解锁账号
usermod命令
常用选项
-L
-U
用户账号的初始配置文件
文件来源
新建用户账号时,从/etc/skel目录中复制而来
重要的用户初始配置文件
ls -a 可以查看这三个目录
~/.bash-profile 环境变量 每次登录shell就会加载其中的参数
~/.bashrc 被登录时就会被加载
~/.bash-logout 注销时候就会起作用
组账号文件
与用户帐号文件相类似
/etc/group:保存组账号基本信息
/etc/gshadow:保持账号的密码信息
添加组账号
groupadd命令
删除组账号
groupdel命令
添加删除组成员
gpasswd命令
常用选项
-a:向组内添加一个用户
-d:从组内删除一个用户成员
-M:定义组成员列表,以逗号分隔
删除组账号
groupdel命令
先rm -rf删除用户目录
在vipw进去找到文件按dd删除就可以删除组主
查询账号信息
groups命令
id命令
查看文件/目录的权限和归属
文件夹目录最高权限777
数据文件最高权限666
设置文件和目录的权限
chmod命令
常用选项
-R 递归修改指定目录下所有子项的权限