一、Linux 七大文件类型
d 目录文件
l 链接文件
b 块设备文件
c 字符设备文件
p管道文件
s套接字文件
-一般文件
二、用户和组
linux的特性:多任务 ,多用户(同一时间,多个 用户登录同一个系统执行不同的任务互相不影响),通过不同的权限来划分和管理来实现多用户,多任务的机制
1.用户:
超级管理员用户 :具备系统的所有用户(root UID为0)
普通用户:只能对自己目录下的文件进行操作,可以登录系统(大于1000为普通用户)
系统用户:“伪用户”,无法登录系统,一般系统默认可以登录 如bin,nobody等,其主要作 用是支撑系统运行,方便系统管理,UID为1-999
每个进程都是为特定的用户运行的
每个文件都有一个特定的用户拥有
访问文件和目录受到用户的限制
与运行的进程有关的用户可以确定进程的访问权限
1.1创建用户
语法格式 useradd 用户名
cat /etc/passwd(查看存放用户的全部信息)
查出来的内容表示:第一列是用户名 第二列是 密码占位符 第三列是UID(用户标识) 第四列是GID(组标识) 第五列是用户的描述 第六列是用户的家目录第七列是 登录shell(如果是/bin/bash /bin/sh 就是可以登录 是/sbin/nologin 就不能登录)
id 加用户名 查看用户的UID GID group(可以判断用户是否存在)
在使用useradd创建用户时,除了创建用户本身,还创建了家目录和名字,用户名相同的组,邮件文件
提供服务的用户不能登录对服务器来说安全性相对高一点
-s 指定登录shell 在创建用户时设置用户是否登录,普通用户默认登录,不想让他登录就
useradd -s /sbin/nologin 用户名
-u 指定UID 在创建用户时,需要单独指定UID时需要(UID不许重复)
1.2.登录命令 su - 用户名
退出登录 exit
注意:超级管理员切换用户不需要密码,普通用户需要密码
1.3创建系统用户
useradd -r 用户名
useradd -r -s /sbin/nologin 用户名(创建了一个系统用户,且不许登录)
1.4不创建家目录
useradd-M 用户名
默认情况下的普通用户有家目录,系统用户没有家目录
-d 指定家目录 (正常情况下指定的家目录是不存在的)
1.5修改用户
usermod -l 新名字 旧名字(用户名)
-u修改UID
-s修改登录shell
-G 修改用户 附加组(前提是有附加组)
例子:usermod -G 附加组 主组
-aG:用户添加附加组
-g修改gid (vim /etc/passwd也可以改)
1.6删除用户
userdel -r 用户名(加r就是将用户全部删除)
注意:如果用户在使用,跟这个用户关联的主组在使用,该组无法删除
修改密码 passwd
超级管理员切换用户不需要密码,普通用户需要密码
交互式
passwd 用户名
非交互式
echo "123" |passwd --stdin xingdian (打印123给passswd 以非交互式的方式)
cat /etc /shadow 用户的密码信息
- 用户名。
- 密码密文,如果为空表示不能使用密码登录系统。
- 上次修改密码的天数(从1970年1月1日开始计算,到修改密码时的天数)
- 修改密码时间间隔的最短天数,在这段时间内不允许修改密码,如果是0,表示可以随时修改密码。
- 修改密码时间间隔的最长天数,超过这个天数后密码失效,系统将强制用户修改密码。例如,99999表示最长可以99999天不修改密码。
- 密码失效前多少天提示用户需要修改密码,上面例子中7表示密码失效前7天开始提示用户需要修改密码。
- 密码过期后多少天帐户将会被禁用。
- 帐户失效的日期,从1970年1月1日开始计算,超过这个日期,帐户将无法使用。
- 最后一项为保留字段,还没有被使用。
二、组
2.1创建组
groupadd 组名
-g 将GID用于新组
cat /etc/group (查看组的全部信息 )
第一列组名 第二列密码占位符 第三列GID 第四列组的用户
2.2修改组
groupmod
-n 修改组名
-g 修改GID
2.3组管理
gpasswd
给组添加用户
gpasswd -a 用户名 组名(给组内添加用户)等价于
usermod -aG 组名 用户名 (给用户添加附加组)
同时添加多个用户到组
-M 用户名,用户名 ,用户名 组名
从组里面删除
-d 用户名 组名
groupdel 组名(删除组,可以删除附加组,不能删除主组除非删除用户)
whoami 获取当前的用户名
2.3用户提权
方案一:轮子组(wheel)
gpasswd -a 用户名 wheel
usermod -G 普通用户 wheel
用户加入这个组就可以执行管理员的权限
方案二:visudo
检索root 进入插入模式(i)在root下输入用户名 ALL= (ALL) (NOPASSWD:不用输入密码)ALL后面按:wq 后退出