##一、 ## 用户账户:
1、超级用户:管理员 root 默认对本机拥有最高权限的账户。在系统中是唯一。
2、普通用户:一般都是有管理员创建的,拥有的权限是受限的。一般只在自己的家目录当中拥有完整的权限。
可以正常的登录系统。
程序用户:
1、在安装软件时,有的应用程序需要创建一些账号来保证程序的正常运行,会创建一个程序账户,程序账户是一些特定的低权限用户的账户,而且这些账户是不能登录到系统的。
2、作用:保证程序的正常运行。
UID:用户的标识号,创建用户的时候可以指定,也可以系统自动分配,但是唯一,不能重复。
GID:组标识,创建用户的时候可以指定,也可以自动分配,也是唯一的,不能重复。
3、根据uid来区分:
**管理员的uid:0
**普通用户的uid:1000
**程序用户的uid:1-999
判定一个用户是否为管理员,以uid为标准,uid=0就是管理员
1、root❌0:0:root:/root:/bin/bash 第一0是uid,第二个是gid
vim:0–1000,0–1000,切换成普通用户
2、dn❌1001:1001::/home/dn:/bin/bash
vim:1000–0,1000-0,切换成管理员
3、saned❌989:983:SANE scanner daemon user:/usr/share/sane:/sbin/nologin
例如:含义:/:–字段之间的分隔符
字段1:root—用户账号的名称
字段2:x–用户密码的占位符
字段3:0—用户的uid号
字段4:0—用户的gid号
字段5:root—用户的全名,一般和字段1一致
字段6:/root—用户的家目录所在的位置
字段7:/bin/bash—用户登录的shell,shell默认的解释器就是bash,是有是/bin/bash/才可以登录系统。/sbi/nologin/bin/false,表示不可以登录系统。一般程序用户的shell都是/sbin/nologin/bin/false。
**普通用户能否设置成/sbin/nologin?
答:可以
/etc/passwd保存的是用户信息
/etc/shadow:用户的密码和账户的有效期。
字段1:用户的账户名称
字段2:用户的密码,MD5加密的方式。*表示不能登录到系统,!!表示密码为空,不是真的空。什么都没有才是真的为空。
字段3:表示上一次修改密码的时间。19864,表示从1970-1-1到2024.5.21过了多少天。
字段4:密码的最短有效天数,0表示不限制。
字段5:密码的最长有效天数 99999表示不限制
字段6:提前多少天告诉用户,密码将要过期,默认7
字段7:密码过期之后多少天会禁用该用户
字段8:账号失效了多久,为空,永不失效
字段9:保留字段,预留字段,无实意。
工作中这两个文件不要动。
2.1、useradd
2.2、用户创建密码passwd:
passwd 用户名
2.3、 修改账户的属性:
2.4、删除用户:
userdel
2.5、 配置文件
1、查询用户身份标识:id 用户名
[root@localhost home]# id ly
uid=1003(ly) gid=1003(ly) 组=1003(ly)
作用:查询uid gid所属组
w—who–查询已经登录的主机的用户信息 users
u:所有者 u+r
g:所在组
o:其他用户
a:所有用户 a+x u+x o+x
八进制算法替换了
421
r red 读权限 4
w write 写权限 2
x 执行 执行权限 1
例子:-rw-r–r–. 1 root root 0 5月 21 13:43 123
rw 6 所有者权限
r 4 所在组权限
r 4 其他用户权限
3.1、chmod:赋权命令
test.sh 所有者读写,所在组执行,其他用户看
chmod 614 test.sh
chmod -R 只有一层目录,目录中所有都会生效,级联目录只有最后一个生效。
[root@localhost home]# chmod -R 641 test1/-----整个目录下包括目录、文件都会变成所有者可读可写,所在组可读,其他用户执行。
3.2、递归赋权
例子:353
chmod 353
所有者 写和执行
所在组 读和执行
其他用户 写和执行
3.3、文件和目录默认权限修改
umask 用来设定文件和目录的默认权限。
文件的默认权限 666
目录的默认权限 777
**(面试题)创建文件,默认就是不给你执行权限。
创建目录,一定要有执行权限,没有执行权限,你不能cd进入这个目录。我要修改一个文件的默认权限,怎么办?
umask,如果是文件,怎么改umask都没有执行权限。
3.4、chown修改所有者和所在组:
chown:前提:用户和组都要存在,要先创建好。
chown dn.dn 文件(.和:一样)
chown id:id 所有者和所在组一起变
chown id 文件名/目录名 只修改所有者
chown :id 文件名/目录名 只修改所在组
chown .id