bashrc配置文件、用户组管理、组账户管理、cron计划任务
在Linux系统中,基于账号的访问控制(Account-based Access Control, ABAC)是通过用户和组的管理来实现的。Linux使用用户ID(UID)和组ID(GID)来标识和管理用户及其权限。以下是Linux中基于账号的访问控制的关键概念和实现方式:
- 账户类别:用户账户、组账户
- 识别方式:UID、GID
1)用户账户
唯一标识:UID(默认编号顺序:0~60000)
作用:可以登录操作系统对资源进行访问控制,不同的用户具备不同的权限
用户账户类型:超级用户root、系统用户、普通用户
UID默认范围:
- 管理员root的UID:0
- 系统用户的UID:1~999
- 普通用户的UID:默认1000开始
补充:/etc/login.defs 可修改默认UID MAX
2)组账户
组账户标识:GID
作用:方便管理众多的用户
组账户类型:
① 基本组(私有组):系统创建与用户同名;
② 附加组(从属组):由管理员创建,由管理员进行加入;
注意:Linux一个用户必须至少属于一个组
1)账户数据的存放
存储在本地磁盘中(本地账户)
2)本地账户的数据文件
- /etc/passwd 保存用户账户的基本信息
- /etc/shadow 保存密码字串/有效期等信息
- /etc/group 保存组账号的基本信息
- /etc/gshadow 保存组账号的管理信息
/etc/passwd,保存用户账户的基本信息(每个用户记录一行,已:分割为7个字段)
/etc/shadow,保存密码字串/有效期等信息(每一个用户记录一行,以:分割为9个字段)
1)配置文件来源
新建用户时,系统将根据/ etc/skel 模板目录复制到新建用户家目录;
2)主要的初始配置文件
- ~/.bash_profile 每次登录系统时执行,定义初始化变量值(每次开机登录执行)
- ~/.bashrc 每次进入新的bash环境时执行(开启新的终端)注意:影响当前~的用户
- /etc/bashrc 全局配置文件(开启新的终端)注意:影响全体用户
格式:useradd [选项]... 用户名
- [-u] 指定UID标记号
- [-d] 指定宿主目录(家目录),缺省为/home/用户名
- [-G] 指定所属的附加组
- [-s] 指定用户的登录解释器(shell解释器)
例如1:添加一个名为nsd01的用户账号
例如2:添加用户并指定用户的UID为1500
例如3:添加用户并指的用户家目录为/opt/anj
常见报错1:在已指定给其它用户的家目录下添加其它用户
注意:Linux系统能添加,但不建议两个用户共用一个组
常见报错2:在创建的目录下指定家目录
注意:若提前创建用户的家目录,将无法把/etc/sekl的模板文件拷贝到创建的目录中
常见报错3:删除了指定的家目录,对用户登录存在影响
注意:删除用户指定的家目录后,登录账户会存在问题;
例如4:添加用户并指定附加组为stugrp
例如5:添加用户并指定解释器为/sbin/nologin/
补充:/sbin/nologin/ 禁止用户登录操作系统
例如6:添加用户,选项组合使用
格式:usermod [选项]... 用户名
- [-l] 更改用户账号的登录名称 //格式:usermod -l New用户名 被改用户名
- [-u] 用户id
- [-d] 家目录路径 (修改/etc/passwd内容,不会创建新目录)
- [-s] 登录解释器
- [-G] 附加组 //重置附加组(没有附加组时则添加,有或着有许多附加组时则重置)
例如2:
例如3:
例如4:
注意:usermod只能修改/etc/passwd内容,不会创建新用户家目录
例如5:
注意:第一次修改用户的附加组,若该用户没有附加组则修改时自动创建,第二次进行附加组修改时,则将先前的附加组重置;
格式:passwd [选项]... 用户名
[--stdin] 从标准输入(比如管道)取密码,免除交互过程(只有root才能使用)
命令su临时切换用户
格式:su - 用户
注意:root用户切换为普通用户不用密码,普通用户切换普通用户需要使用密码;
例如2:非交互式设置密码
常见错误:新建用户时,默认没有密码,需要在root下通过echo方式给新用户密码
1)配置文件来源:
新建用户时,系统将根据/etc/skel模板目录复制到新建用户家目录;
例如:新建用户时,系统将根据/etc/skel模板目录复制
2)主要的初始配置文件:
- ~/.bash_profile 每次登录系统时执行,定义初始化变量值(每次开机登录执行)
- ~/.bashrc 每次进入新的bash环境时执行(开启新的终端)
案例1:定义永久别名(指定用户)
案例2:定义永久别名(全局用户)
格式:userdel [-r] 用户名
[-r] 宿主目录/用户邮件也一并删除
例如:
格式:id [选项]... 用户名或UID
/etc/group,保存组账号的基本信息(每个组记录一行,以:分割为4个字段)
/etc/gshadow,保存组账号的管理信息(每个组记录一行,以:分割为4个字段)
格式:groupadd [-g GID] 组名
格式:gpasswd [选项]... 组名
常用命令选项:
- [-a] 添加组成员,每次只能加一个
- [-d] 删除组成员,每次只能删一个
- [-M] 定义组成员用户列表,可设置多个(覆盖)
- [-A] 定义组管理员列表(覆盖)
注意:[-A][-M]只有root用户下才能使用,即使分配组管理员也无权限
例如2:
常见报错:普通用户即使添加了组管理员,但依旧无法使用[-M]和[-A]选项
1、groupdel命令
格式:groupdel 组名
注意:删除的目标组不能是用户的基本组
常见报错:
用途:按照设置的时间间隔为用户反复执行某一项固定的系统任务;
软件包:cronie、crontabs
系统服务:crond
日志文件:/var/log/cron
1)使用crontab命令
- 编辑:crontab -e [-u 用户名]
- 查看:crontab -l [-u 用户名]
- 清除:crontab -r [-u 用户名]
2)配置格式可参考/etc/crontab文件
分 时 日 月 周 任务命令行(绝对路径)
例如:每分钟记录当前的系统时间,写入/opt/time.txt
1)获取命令帮助
命令:--help
命令:man
注意:数字5表示帮助的类型,表示配置文件类型
2)历史命令
用途:管理/调用曾经执行过的命令
命令:history //查看历史命令列表
- [-c] //清空历史命令
- [ !n ] //执行命令历史中的第n条命令
- [ !str ] //执行最近一次以str开头的历史命令
3)du,统计文件的占用空间
格式:du [选项]... [目录或文件]...
常用选项:
- [-s] 只统计每个参数所占用的总空间大小
- [-h] 提供易读容量单位(K、M等)
4)date,查看/调整系统日期时间
常用搭配:
- date +%F
- date +%R
- date +"%Y-%m-%d %H:%M:%S"
- date -s "yyyy-mm-dd HH:MM:SS"
5)制作连接(链接)文件(制作快捷方式)(开机依然保留)
— 软链接
- 软链接优势:可以针对目录与文件制作快捷方式,支持跨分区
- 软链接缺点:源数据消失,快捷方式失效
格式:ln -s /路径/源数据 /路径/快捷方式的名称 #软连接
— 硬链接
- 硬链接优势:源数据消失,快捷方式仍然有效
- 硬链接缺点:只能针对文件制作快捷方式,不支持支持跨分区
格式:ln /路径/源数据 /路径/快捷方式的名称 #硬链接
6)zip归档工具,跨平台
— 归档+压缩操作
格式:zip [-r] 备份文件.zip 被归档的文档...
[-r] 被归档的数据有目录,必须加上此选项
— 释放归档+解压操作
- 格式:unzip 备份文件.zip [-d 目标文件夹]
[-d] 释放归档到指定目录
本文地址:http://lianchengexpo.xrbh.cn/quote/7239.html 迅博思语资讯 http://lianchengexpo.xrbh.cn/ , 查看更多