账号和权限管理
一 用户和组账号管理
1 Linux基于用户身份对资源访问进行控制
1)用户帐号:
超级用户root:拥有至高无上的权限
普通用户 有一定的权限限制,只有在自己的宿主目录有完整权限
程序用户 维持某个程序正常运行,权限很低
2)组帐号:
基本组(私有组) 每个账户至少属于一个组,就是它的基本组
附加组(公共组) 这个账号同时包含在其他组,那其他组就这它的附加组
3)UID和GID:
UID(User Identity,用户标识号) 身份标识,其中root账号的标识固定为0
GID(Group Identify,组标识号) 1-499分配给程序组或账户,500到60000给普通用户或组
2 用户账号管理8
1)用于保存用户的帐号基本信息
文件位置:/etc/passwd
每一行对应一个用户的帐号记录
tail -2 /etc/passwd
benet:x:500:500:BENET Student User:/home/benet:/bin/bash
第一字段:用户账户名称
第二字段:密码占位符(经过加密的)
第三字段:用户UID号
第四字段:用户基本组的UID号
第五字段:用户全名
第六字段:宿主目录
第七字段:登录shell的信息
2)用于保存密码字串、密码有效期等信息
文件位置:/etc/shadow
每一行对应一个用户的密码记录
tail -2 /etc/shadow
teacher:$1$BT7teaYX$s2sr6uFUwKhtU.8/8VpzB1:14374:0:99999:7:::
第一字段:用户名
第二字段:MD5加密字串(当为*或!!时表示用户不能登录系统,为空时表示用户密码为空)
第三字段:从1970年1月1日起到最后一次修改密码时间的间隔天数
第四字段:多少天后才能修改密码,默认为0不限制
第五字段:多少天后必须修改密码。默认为99999不限制
第六字段:提前多少天警告用户口令过期,默认为7
第七字段:密码过期后多少天内禁用此用户
第八字段:从1970年1月1日起作废了多少天,默认永不过期
第九字段:保留字段,目前无用
3)添加用户账号
useradd命令
格式:useradd [选项]… 用户名
常用命令选项
-u:指定 UID 标记号
-d:指定宿主目录,缺省为 /home/用户名
-e:指定帐号失效时间
-g:指定用户的基本组名(或UID号)
-G:指定用户的附加组名(或GID号)
-M:不为用户建立并初始化宿主目录
-s:指定用户的登录Shell
useradd -d /ftphome/mike -g mike -G ftpuser -s /sbin/nologin mike 指定mike的基本组为mike,并加入到ftpuser组;指定主目录为/ftphome/mike;不允许mike通过本地登录服务器
4)设置和更改用户密码
passwd命令
格式:passwd [选项]… 用户名
常用命令选项
-d:清空用户的密码,使之无需密码即可登录
-l:锁定用户帐号
-S:查看用户帐号的状态(是否被锁定)
-u:解锁用户帐号
:passwd //修改当前用户密码
:passwed -l lisi 锁定账号
:passwd -S lisi 查看账户锁定状态
:passwd -u lisi 解锁
:passwd -d lisi 清空账户密码
5)修改用户账号的属性
usermod命令
格式:usermod [选项]… 用户名
常用命令选项
-l:更改用户帐号的登录名称
-L:锁定用户账户
-U:解锁用户账户
-u:修改 UID 标记号
-d:修改宿主目录,缺省为 /home/用户名
-e:修改帐号失效时间
-g:修改用户的基本组名(或UID号)
-G:修改用户的附加组名(或GID号)
-s:修改用户的登录Shell
6)删除用户账号
userdel命令
格式:userdel [-r] 用户名
添加 -r 选项时,表示连用户的宿主目录一并删除
- 切换系统用户
:su – lisi
3 组账号管理
- 组账号文件
与用户帐号文件相类似
/etc/group:保存组帐号基本信息
/etc/gshadow:保存组帐号的密码信息
- 添加组账号
groupadd命令
格式:groupadd [-g GID] 组帐号名
groupadd -g 1000 zu
- 添加删除组成员
gpasswd命令
用途:设置组帐号密码(极少用)、添加/删除组成员
格式:gpasswd [选项]… 组帐号名
常用命令选项
-a:向组内添加一个用户
gpassed -a zu u1 添加u1到组
-d:从组内删除一个用户成员
gpasswd -d u1 zu 从组里删除u1
-M:定义组成员列表,以逗号分隔
- 删除组账号
groupdel命令
格式:groupdel 组帐号名
4 查询账号信息
id命令
用途:查询用户身份标识
格式:id [用户名]
groups命令
用途:查询用户所属的组
格式:groups [用户名]
finger命令
用途:查询用户帐号的详细信息
格式:finger [用户名]
users、w 、who命令
用途:查询已登录到主机的用户信息
二 管理目录和文件的属性
1 查看文件和目录的属性
ls -l install.log
-rw-r–r– 1 root root 34298 04-02 00:23 install.log
1)属性介绍
第一个字符:rw-,表示文件类型,可以是d目录、b设备文件|、c字符设备文件、—普通文件、l链接文件
第2-4个字符:r–,属主用户的访问权限
第5-7个字符:r- -,属组用户的访问权限
第8-10个字符:r–,其他用户的访问权限
2) 权限和归属
A)访问权限
读取r(4):允许查看文件内容、显示目录列表
写入w(2):允许修改文件内容,允许在目录中新建、移动、删除文件或子目录
可执行x(1):允许运行程序、切换目录
B)归属(所有权)
属主:拥有该文件或目录的用户帐号
属组:拥有该文件或目录的组帐号
2 设置文件和目录的权限和归属
- 设置更改权限
chmod命令
格式1:chmod [ugoa] [+-=] [rwx] 文件或目录…
u、g、o、a 分别表示属主、属组、其他用户、所有用户
+、-、= 分别表示增加、去除、设置权限
chmod u+r /usr
格式2:chmod nnn 文件或目录…
chmod 777 /usr
常用命令选项
-R:递归修改指定目录下所有子项的全新
2)设置更改属主和属组
chown命令
格式:chown 属主 文件或目录
chown :属组 文件或目录
chown 属主:属组 文件或目录
chown root:root /usr
常用命令选项
-R:递归修改指定目录下所有文件、子目录的归属