账号和权限管理

目录

一、用户账户和组账户

1.用户账户

1.1超级用户

1.2普通用户

1.3程序用户

2.组账户

2.1基本组:用户加入的第一个组

2.2附加组:用户额外加入的除了基本组以外的组

2.3.UID和GID

3.用户账户文件

3.1用户账号文件/etc/passwd

3.2用户密码文件/etc/shadow

二、用户管理操作

1.useradd命令(创建用户)

2.passwd命令(设置/更改用户密码)

3.usermod命令(修改用户账号的属性)

4.userdel命令(删除用户账号)

三、用户账号的初始配置文件

1.文件来源

2.主要的用户初始配置文件

2.1~/.bash_profile        

2.2~/.bashrc            

2.3~/.bash_logout        

3.全局配置文件

3.1/etc/profile        

3.2/etc/profile.d/

3.3/etc/bashrc            

4.组账号文件

5.groupadd命令(添加组账号)

6.gpasswd命令(添加删除组成员)

7.groupdel命令(删除组账号)

四、查询账号信息

1.groups命令(查询用户所属组)

2.id命令(查询用户身份标识)

3.finger命令(查询用户的登录属性)

4.w、who、users命令(查询已登录到主机的用户信息)

五、查看文件/目录的权限和归属

1.chmod命令(设置文件和目录的权限)

2.chown命令(设置文件和目录的归属)

3.umask命令(设置目录和文件的默认权限)


一、用户账户和组账户

1.用户账户

1.1超级用户

登录后显示“#”,拥有本机至高无上的权限,root是操作系统默认的超级用户账号

1.2普通用户

登录后显示“$”,账号权限受限制,一般只有在用户自己的家目录中有完整权限;普通用户无法修改网卡配置

1.3程序用户

在安装Linux操作系统及部分应用程序时,会添加一些特定的低权限用户账号,这些用户一般不允许登录到系统,仅用于维持系统或某个程序的正常运行,如 bin、daemon、ftp、mail 等。
 

2.组账户

2.1基本组:用户加入的第一个组

2.2附加组:用户额外加入的除了基本组以外的组

2.3.UID和GID

UID:用户账户ID
GID:组账户ID 

UID/GIDUID/GID

root

0

centos7以前

centos7开始
程序用户   1~4991~999
普通用户500~600001000~60000

3.用户账户文件

3.1用户账号文件/etc/passwd

作用:保存用户名称、宿主目录、登录Shell等基本信息
文件位置:/etc/passwd/,有七个字段;每一行对应一个用户的帐号记录

第一个字段:用户名称
第二个字段:密码占位符
第三个字段:uid
第四个字段:gid
第五个字段:用户全名
第六个字段:用户家目录
第七个字段:登录Shell信息(/bin/bash为可登陆系统,/sbin/nologin和/bin/false为禁止用户登陆系统)

3.2用户密码文件/etc/shadow

作用:保存用户的密码、账号有效期等信息;默认只有 root 用户能够读取 shadow 文件中的内容,且不允许直接编辑该文件中的内容。
文件位置: /etc/shadow,有九个自段;每一行对应一个用户的密码记录
示列:
root : $1$55HB4pbx$acHqk4IZiHTZ9cw0ZJe8f0 : 14374 : 0 : 99999 : 7 : : :
字段1:用户帐号的名称
字段2:密码字符串
字段3:上次修改密码的时间,表示从1970.1.1算起到最近一次修改密码时间隔的天数
字段4:密码的最短有效天数,默认为0不限制
字段5:密码的最长有效天数,默认为99999永久不过期
字段6:提前多少天警告用户密码将过期,默认值为7
字段7:在密码过期之后多少天禁用此用户
字段8:帐号失效时间,从1970.1.1开始算起
字段9:保留字段(未使用)

二、用户管理操作

1.useradd命令(创建用户)

作用:创建用户
命令行格式:useradd 选项 用户名


id命令
查看用户UID/GID/组信息

useradd命令常用选项
-u:指定用户的 UID 号,要求该 UID 号码未被其他用户使用。
-d:指定用户的宿主目录位置(当与-M 一起使用时,不生效)。只能用绝对路径指定目录,且不需要事先创建目录
-e:指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-g:指定用户的基本组名(或使用 GID 号),对应的组名必须已存在。
-G:指定用户的附加组名(或使用 GID 号),对应的组名必须已存在。
-M:不建立宿主目录。
-s:指定用户的登录Shell,(比如/bin/bash为可登陆系统,/sbin/nologin和/bin/false为禁止用户登陆系统)。

示例1
创建scj用户,指定UID为9527,不建立家目录,且禁止用户登录系统 


        -u指定UID号                                            -s指定用户登录shell为/sbin/nologin

示例2
创建qwery用户,指定家目录/opt/qw且指定GID为用户scj的GID



                 指定GID为scj用户GID;家目录为/opt/qw

示例3
创建用户zxc,并指定附加组
创建用户xcv,且指定用户失效时间为2025.1.1

2.passwd命令(设置/更改用户密码)

作用:设置/更改用户密码 
命令行格式:passwd 选项 用户名

-d:清空指定用户的密码,仅使用用户名即可登录系统。

-l:锁定用户账户,锁定的用户账号将无法再登录系统。
-S:查看用户账户的状态(是否被锁定)。
-u:解锁用户账户。

设置密码方法2
echo 新密码 | passwd --stdin 用户

设置密码方法3
echo 用户名:新密码 | chpasswd

3.usermod命令(修改用户账号的属性)

作用:修改用户账号的属性
命令行格式:usermood 用户名称 选项 
常用命令:
-u:修改用户的 UID 号。
-d:修改用户的宿主目录位置。
-e:修改用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
-g:修改用户的基本组名(或使用 GID 号)。
-G:修改用户的附加组名(或使用 GID 号)。
-s:指定用户的登录 Shell。
-l:更改用户账号的登录名称。
-L:锁定用户账户。
-U:解锁用户账户。
其中-u -d -e -g -G -s 选项与useradd命令中相同
-l:更改用户账号的登录名称。
命令行格式:usermood 原用户名称 -l 新用户名称
示例:
修改用户xcv名称为xc



-L:锁定用户账户。
-U:解锁用户账户。
命令行格式:命令 选项 用户名

4.userdel命令(删除用户账号)

作用:删除用户账号
-r:连带家目录一并删除

三、用户账号的初始配置文件

1.文件来源

新建用户账号时,从/etc/skel目录中复制而来

2.主要的用户初始配置文件

只对当前用户有效

2.1~/.bash_profile        

此文件中的命令将在该用户每次登录时被执行,它会设置一些环境变量,并且会调用该用户的~/.bashrc文件

2.2~/.bashrc            

此文件中的命令会在每次打开新的bash shell时(也包括登录系统)被执行,并且会调用/etc/bashrc文件

2.3~/.bash_logout        

此文件中的命令将在用户每次退出登录或退出bash shell时执行

3.全局配置文件

对所有用户有效

3.1/etc/profile        

这个文件是为系统全局变量配置文件,可通过重启系统或者执行source /etc/profile 命令使profile文件被读取

3.2/etc/profile.d/

这个文件实际上是/etc/profile的子目录,存放的是一些应用程序所需的启动脚本

3.3/etc/bashrc            

每一个运行bash shell的用户都会执行此文件,可通过执行bash 命令打开一个新的bash shell时,使 bashrc文件被读取

4.组账号文件

与用户文件相类似
/etc/group 保存组账号基本信息
/etc/gshadow 保存组账号的密码信息
grep "^root" /etc/group ### 检索root 组包括那些用户
grep "root" /etc/group ### 检索那些组包括root用户
查询组账号文件  vi /etc/group      
有4个字段:组账号名:x占位符:GID号:组账号成员    

5.groupadd命令(添加组账号)

作用:添加组账号
命令行格式:groupadd -g GID 组账号名;指定组账号的GID号

6.gpasswd命令(添加删除组成员)

作用:添加删除组成员
命令行格式:gpasswd 组名 选项 用户
选项:
-a:向组内添加一个用户
-d:从组内删除一个用户成员
-M:重新定义组成员列表,以逗号分隔




同时将两个用户添加到一个组当中

7.groupdel命令(删除组账号)

作用:删除组账号
命令行格式:groupdel 组账号名称
示例:删除组账号cc
groupdel cc

四、查询账号信息

1.groups命令(查询用户所属组)

作用:查询用户所属组
命令行格式:groups 用户名

2.id命令(查询用户身份标识)

作用:查询用户身份标识
命令行格式:id 用户名

3.finger命令(查询用户的登录属性)

作用:查询用户的登录属性(需提前安装finger软件)
命令行格式:finger 用户名

4.w、who、users命令(查询已登录到主机的用户信息)

作用:查询已登录到主机的用户信息

五、查看文件/目录的权限和归属

1.chmod命令(设置文件和目录的权限)

作用:设置文件和目录的权限
命令行格式:chmod 三位八进制数字 文件或目录
设置文件local.repo所有者权限可读可写可执行,属组可读可写,其他用户可执行

常用选项-R
递归修改指定目录下所有子项的权限

2.chown命令(设置文件和目录的归属)

作用:设置文件和目录的归属

3.umask命令(设置目录和文件的默认权限)

作用:设置目录和文件的默认权限
文件的最大默认权限为 6;目录的最大默认为 7
设置默认权限:umask  nnn;查询umask的值:umask


 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值