Linux学习之账户、权限管理
权限:
Linux权限主要分为三类属主、属组和其他,分别有r、w、x三种属性
对于文件来说:
r:可读,可以使用类似cat的命令查看
w:可写,可以编辑或删除此文件
x:可执行,可以在命令提示符下当做命令提交给内核运行
对于目录来说:
r:可以对此目录执行ls以列出内部的文件
w:可以在此目录下创建文件
x:可以使用cd切换,也可以使用ls -l查看内部文件的详细属性信息
权限用二进制和8进制表示不同的类型
rwx 111 7
rw- 110 6
r-x 101 5
r-- 100 4
-wx 011 3
-w- 010 2
--x 001 1
--- 000 0
用户由UID表示,用户的信息存放在/etc/passwd,密码信息则记录在/etc/shadow
UID是系统识别用户的凭证,一般系统管理员的UID为0,1~499为系统用户(1~100为系统创建用户,101~499为用户手动建立),500~60000为普通用户
组也有GID,组信息存放在/etc/gpasswd中,密码则存放在/etc/gshadow中(组密码是为了用户临时切换基本组而需要的)
用户组类别:
私有组:创建用户时,如果没有为用户指定所属的组,系统会自动为用户创建一个与用户名相同的组
基本组:用户的默认组
附加组:默认组以外的其他组
/etc/passwd信息
1、用户名
2、密码:记录在/etc/shadow
3、UID
4、GID(基本组)
5、注释信息
6、家目录路径
7、用户的默认shell
/etc/shadow信息:
1、用户名
2、加密后的密码
对称加密:加密和解密是用同一个密码
公钥加密:每个密码都成对出现,一个公钥,一个私钥
单项加密:提取数据特征码,常用于数据完整性校验
蝴蝶效应(雪崩效应)
定长输出 MD5 128位SHA1 160位
3、最近一次修改密码的时间,从1970年1月1日到修改时间所经过的天数
4、密码最短使用期限,0代表无限制
5、密码最长使用期限 9999代表用户过期
6、提醒时间,离过期还有多长时间进行提醒
7、非活动时间,密码过期后多长时间内还可登录系统
8、过期时间
用户管理命令:
1、useradd:添加账户
-c 账号passwd的说明栏信息
-d 指定家目录
-e 账号过期日期 格式mm/dd/yy
-f 账号过期几天后永久停权 当为0时则立即停权,为-1时则关闭此功能,预设关闭
-g 指定默认组,此组必须存在
-G 指定附加组,
-m 如果不存在家目录则创建同-k使用,会复制/etc/skel内的数据到新建的用户家目录
-M 不创建用户家目录
-r 建立系统账号
-s 指定默认shell
-u 指定UID
2、userdel:删除用户
-r 同时删除用户家目录
3、id 查看用户账号属性信息
-Z 仅显示当前用户的安全环境
-g 仅显示有效的用户组ID
-G 显示所有组的ID
-n 显示组名而非数字,不与-ugG一起使用
-u 显示有效用户UID
-r 显示真实ID,与-ugG一起使用
4、usermod:修改用户信息
-c 更新使用者账号的注释信息
-d 更改家目录,可以使用-m,可以将就目录中的数据迁移过去
-e 修改账号过期日期 mm/dd/yy
-f 账号过期几日后永久停权
-g 更改新的基本组
-G 更改附加组,会替换所有以前的附加组,同-a一起使用,追加新的附加组,并非删除
-l 更改登录名
-s 更改默认shell
-u 更改UID,除在home中的文件UID会自动更改,其他文件不会自动更改,慎用
usermod不允许更改正在线上使用的账号,必须确认此user没在电脑上执行任何程序
5、finger:用户信息查看
-s
-l
6、chsh:更该用户shell
-s 指定shell
-l 显示/etc/shells中的shell列表
-u 显示帮助
-v 显示版本
7、chfn 更改finger信息
-f 真实姓名
-h 家庭电话
-o 办公室电话
-p 办公室号码
-u help
-v version
8、passwd;修改用户密码相关信息
-d 删除用户密码
-u 解锁账户
-l 锁定账户
--stdin 从一个输入读取密码
-e 设置密码过期时间
-n 设置密码最小使用期限
-x 设置密码最长使用期限
-w 设置警告天数
-i 设置过期几日永久停权
9、chage:更改密码相关信息
-m 密码可更改的最小天数,为0可随时更改
-M 密码保持最大的有效天数,
-W 用户密码到期前,提醒的天数
-E 账号过期日,过了这天将不能使用
-d 上一次更改的日期
-I 停滞时期,过了将不能使用
-l 列出当前的设置
10、chown:修改文件属主
chown USERNAME file
chown USERNAME:GROUPNAME file 同时更改属主和属组
chown USERNAME. GROUPNAME file 同上
-h 会影响符号链接本身,并非符号链接所指示的目的文件
-R 递归,将更改目录以及目录内部的所有文件属主
-v 为处理的所有文件显示诊断信息
--reference=/path/somefile file 将文件的所有者和群组设置和参考文件相同
11、chgrp:更改文件属组
-c 详细描述每个动作,实际上改变了那个组
-f 不列出错误信息
-R 递归修改
-v 详细描述
--reference=/path/somefile file 将文件的群组设置和参考文件相同
12、chmod:修改文件属性
-R递归修改
--reference=/path/somefile file 将文件的所有者和群组设置和参考文件相同
操作对象:
u、g、o、a
权限设定:
+:增加权限
-:取消权限
=:唯一设定权限
权限类别:
r=4:读w=2:写x=1:执行
X:表示只有当该档案是个子目录或者改档案已经被设定过为可执行
l:给文件加锁,是其他用户无法访问
使用方法:
chmod 777 file
chmod u=rwx,go=rw file
chmod a=rw file
chmod u+x,g-x file
13、umask:设置新文件权限的掩码,当新文件被创建时,其最初的权限由文件创建掩码决定,用户每次进入系统时,umask命令会被执行,并自动设置掩码来改变默认值,
新的权限会将旧的覆盖
-S 以字符的形式显示当前掩码
-p 带umask开头,以数字的形式显示当前掩码
管理员umask为022,普通用户为002;使用的是反掩码
默认创建文件时将x权限拿掉,默认是666,目录则为777
管理员022默认创建文件时权限为644,目录为755
普通用户002创建文件默认属性为664,目录为775
使用umask 000可以修改默认权限,重启失效
umask是将权限拿走的相应位,且文件创建时不能赋予执行权限
14、SHELL的类型:
登录式shell
正常通过某终端登录
su -
su -l
非登陆式shell
su
图形终端下打开命令窗口
自动执行的shell脚本
15、bash的配置文件
全局配置
/etc/profile/etc/profile.d/*.sh/etc/bashrc
个人配置
~/.bash_profile~/.bashrc
profile类的文件:
设定环境变量
运行命令或脚本
bashrc类文件:
设定本地变量
定义命令别名
登陆式shell读取文件顺序
/etc/profile --> /etc/profile.d/*sh --> ~/.bash.profile --> ~/.bashrc --> /etc/bashrc
非登录式shell
~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh
本文出自 “杆儿男” 博客,请务必保留此出处http://wtime.blog.51cto.com/8829658/1530367
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。