linux 第六章 账号和权限管理
享受生活热爱挑战
明远分享
每章一段话:
每一个优秀的人,都有一段沉默的时光。人总会有困难丶会被别人不理睬丶这个时候就是你最关键的时候,我们需要相信生活,不放弃,命运不会抛弃你,苦过方可甜。
今天我们要学习在linux中的用户和组的各种配置和管理,其实不要想命令多难记,其实多敲几遍就记住了,想它越简单你就越容易达成你的目标。
理论:
Linux基于用户身份对资源访问进行控制 我们先来看下linux用户帐号和组的分类:
①超级用户root ②普通用户 ③程序用户 组帐号: ①基本组(私有组) ②附加组(公共组)
我们的系统有跟windows一样的区分用户和组的ID分别是
UID和GID:
UID(User Identity,用户标识号) GID(Group Identify,组标识号)我们知道linux中一切皆文件所以:
用于保存用户的帐号基本信息 文件位置:/etc/passwd
每一行对应一个用户的帐号记录我们可以通过tail查看(因为新用户默认在后面)
用于保存密码字串、密码有效期等信息
文件位置:/etc/shadow 每一行对应一个用户的密码记录(自己去看看吧)useradd命令
格式:useradd [选项]... 用户名 常用命令选项 -u:指定 UID 标记号 -d:指定宿主目录,缺省为 /home/用户名 -e:指定帐号失效时间 -g:指定用户的基本组名(或UID号) -G:指定用户的附加组名(或GID号) -M:不为用户建立并初始化宿主目录 -s:指定用户的登录Shell
passwd命令设置密码等
格式:passwd [选项]... 用户名
常用命令选项 -d:清空用户的密码,使之无需密码即可登录 -l:锁定用户帐号 -S:查看用户帐号的状态(是否被锁定) -u:解锁用户帐号(密码不会显示的哦)
在不加用户名的情况下直接passwd 会修改你当前用户的密码哦
修改用户账号的属性——usermod
usermod命令
格式:usermod [选项]... 用户名 常用命令选项 -l:更改用户帐号的登录名称 -L:锁定用户账户 -U:解锁用户账户 以下选项与useradd命令中的含义相同 -u、-d、-e、-g、-G、-s
userdel 删除用户账号
userdel命令
格式:userdel [-r] 用户名 添加 -r 选项时,表示连用户的宿主目录一并删除
一起跟着做吧
一,建立用户目录:
创建目录/tech/benet和/tech/accp,分别用于存放各项目组中用户账户的宿主文件。
步骤:如图所示:
二,添加组账号:
为两个项目添加组账号benet、accp,GID号分别设置为1001 、1002
为技术部添加组账号tech,GID号设置为200
步骤:如图所示:
添加、删除、修改组账号:
groupadd命令添加组账号
gpasswd命令添加、设置、删除组成员
; 添加成员时,使用-a选项
; 删除成员时,使用-d选项
; 如果需要同时指定组账号的所有成员用户时,可以使用“-M”选项。(注意:只能对一个组使用一次,如果使用第二次,就会覆盖第一次添加的成员。)
groupdel命令删除组账号
三,添加用户账号:
1, benet组包括三个用户,分别为kylin、tsengia、obama,宿主目录均命使用/tech/benet/目录中与账号同名的文件夹。其中kylin用户账号设为2011年12月31日后失效
步骤:如图所示:
2, accp组包括两个用户,分别为handy、cucci,宿主目录均使用/tech/accp/目录中与账号同名的文件夹。其中cucci用户的登录Shell设为/bin/ksh
步骤:如图所示:
添加、删除、修改用户账号:
useradd命令添加用户账号
基本命令格式:
useradd [ 选项 ] 用户名
; -u:指定用户的UID号,要求该UID号码未被其他用户使用
; -d:指定用户的宿主目录位置
; -e:指定用户的账户失效时间,可使用YYYY-MM-DD的日期格式
; -g:指定用户的基本组名(或使用GID号)
; -G:指定用户的附加组名(或使用GID号)
; -M:不建立宿主目录,即使/etc/login.defs系统配置中已设定要建立宿主目录
; -s:指定用户的登录Shell
passwd命令为用户账号设置密码
; -d:清空指定用户的密码,仅使用用户名即可登录系统
; -l:锁定用户账户
; -S:查看用户账号的状态(是否被锁定)
; -u:解锁用户账户
useradd命令修改用户账号属性
; -u:修改用户的UID号
; -d:修改用户的宿主目录位置
; -e:修改用户的账户失效时间,可使用YYYY-MM-DD的日期格式
; -g:修改用户的基本组名(或使用GID号)
; -G:修改用户的附加组名(或使用GID号)
; -M:不为用户建立并初始化宿主目录
; -s:指定用户的登录Shell
; -l:更改用户账号的登录名称(Login Name)
; -L:锁定用户账号
; -U:解锁用户账号
Userdel命令—删除用户账号
Ø -r:可同时删除宿主目录
用户账号的初始配置文件:
Ø .bashrc_profile文件:此文件中的命令将在该用户每次登录时被执行
Ø .bashrc文件:此文件中的命令会在每次加载“/bin/Bash”程序时(当然也包括登录系统)执行
Ø .bash_logout文件:此文件中的命令将在用户每次退出登录时执行
四,将上述所有的用户账号均要求加入到tech组内,已经将它们加入组了,然后查看一下。
步骤:如图所示:
查询账号信息:
用户账号文件:
主要是:/etc/passwd、/etc/shadow
组账号文件:
主要是:/etc/group、/etc/gshadow
groups命令—查询用户账号所属的组
id命令—查询用户账号的身份标识
finger命令—查询用户账号的登录属性
w命令—查询当前主机的用户登录情况(users、who)
五,为kylin、tsengia、handy这三个用户账号设置初始密码为“123456”,其他用户暂时不设密码
步骤:如图所示:
六,设置目录权限及归属
1, 将/tech目录的属组设置为tech,去除其他用户的所有权限
步骤:如图所示:
2, 将/tech/benet目录的属组设置为benet,去除其他用户的所有权限
步骤:如图所示:
3, 将/tech/accp目录的属组设置为accp,去除其他用户的所有权限
步骤:如图所示:
设置目录和文件的权限:
需要设置文件或目录的权限时,主要通过chmod命令进行。
n 字符形式:
r 读取 查看文件内容 查看目录内容(显示子目录、文件列表)
w 写入 修改文件内容 修改目录内容(在目录中创建、移动、删除文件或目录)
x 可执行 执行该文件(程序或脚本) 执行cd命令进入或退出该目录
数字形式:
r、w、x权限字符可分别表示为八进制数字4、2、1,表示一个权限组合时需要将数字进行累加。
基本使用格式:
chmod [ ugoa…] [ +-= ] [ rwx ] 文件或目录…
或者
chmod nnn文件或目录…
“ugoa”表示该权限设置所针对的用户类别。“u”代表文件属主,“g”代表文件属 组,“o”代表其他任何用户,“a”代表所有用户(u、g、o的总和)
“+-=”表示设置权限的操作动作。“+”代表增加相应权限,“-”代表减少相应权限,“=”代表仅设置对应的权限
“rwx”是权限的字符组合形式,也可以拆分使用
“nnn”为需要设置的具体权限值,如“770”、“644”等
-R:将一个目录中的所有子目录及文件的权限都设置为相同的值。
设置目录和文件的归属:
需要设置文件或者目录的归属时,主要通过chown命令进行。
基本使用格式:
chown 属主 [ : [属组] ] 文件或目录…
同时设置属主、属组时,用户名和组名之间用分号“;”进行分隔。如果只设置属组时,需使用“: 组名”的形式。
-R:递归修改目录归属
七,建立公共数据存储目录
创建/public目录,允许所有技术组内的用户读取、写入、执行文件,非技术组的用户禁止访问此目录
步骤:如图所示:
在这里只能简单的给大家介绍下,还需多加练习方可掌握。