2020-10-16 Linux第六课

it2025-03-27  5

第六节课 用户身份与文件权限

计划任务服务程序

一次性计划任务

at 时间:创建一次性计划任务,按下 Ctrl+d 来结束编写计划任务at -l :查看已创建但未执行的任务atrm 任务编号: 删除已创建的计划任务

长期性计划任务

crontab -e :创建、编辑计划任务crontab -l :查看计划任务crontab -r :删除计划任务crontab -u 用户名 :root 用户编辑其他用户名的计划任务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AqFK132N-1603283767426)(cron计划任务的参数.png)]

字段说明分钟取值为 0 ~ 59 的整数小时取值为 0 ~ 23 的任意整数日期取值为 1 ~ 31 的任意整数月份取值为 1 ~ 12 的任意整数星期取值为 0 ~ 7 的任意整数,其中 0 与 7 均为星期日命令要执行的命令或程序脚本,命令使用绝对路径(whereis 命令:查找绝以路径)

用户身份与能力

UID(User IDentification,root 的 UID 是 0):具有唯一性系统用户 UID 为 1 ~ 999: Linux 系统为了避免因某个服务程序出现漏洞而被黑客提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围。普通用户 UID 从 1000 开始:是由管理员创建的用于日常工作的用户。

useradd

useradd [选项] 用户名

参数作用-d指定用户的家目录(默认为/home/username)-e账户的到期时间,格式为 YYYY-MM-DD.-u指定该用户的默认 UID-g指定一个初始的用户基本组(必须已存在)-G指定一个或多个扩展用户组-N不创建与用户同名的基本用户组-s指定该用户的默认 Shell 解释器

groupadd

groupadd [选项] 群组名

usermod

usermod [选项] 用户名 参数作用-c填写用户账户的备注信息-d -m参数-m 与参数-d 连用,可重新指定用户的家目录并自动把旧的数据转移过去-e账户的到期时间,格式为 YYYY-MM-DD-g变更所属用户组-G变更扩展用户组-L锁定用户禁止其登录系统-U解锁用户,允许其登录系统-s变更默认终端-u修改用户的 ID

passwd

passwd [选项] [用户名] 参数作用-l锁定用户,禁止其登录-u解除锁定,允许用户登录–stdin允许通过标准输入修改用户密码,如 echo “NewPassWord” | passwd --stdin | Username-d使该用户可用空密码登录系统-e强制用户在下次登录时修改密码-S显示用户的密码是否被锁定,以及密码所采用的加密算法名称

userdel

userdel [选项] 用户名 参数作用-f强制删除用户-r同时删除用户及用户家目录

文件权限与归属

文件类型

参数作用-普通文件d目录文件l链接文件b块设备文件c字符设备文件p管道文件

文件权限的字符与数字表示

文件特殊权限

SUID

SUID 是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有属主的权限(仅对拥有执行权限的二进制程序有效)。所有者位上如果有执行权限,原来的 x 将改写成 s(小写 s);如果没有执行权限,则改成 S(大写 S)。

SGID

让执行者临时拥有属组的权限(对拥有执行权限的二进制程序进行设置);在某个目录中创建的文件自动继承该目录的用户组(只可以对目录进行设置)。

chmod

chmod [参数] 权限 文件或目录名称

chown

chown [参数] 所有者:所属组 文件或目录名称

SBIT

SBIT(Sticky Bit)特殊权限位了(也可以称之为特殊权限位之粘滞位)。SBIT 特殊权限位可确保用户只能删除自己的文件,而不能删除其他用户的文件。chmod -R o+t 文件名或目当

文件的隐藏属性

chattr [参数] 文件 参数作用i无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件a仅允许补充(追加)内容,无法覆盖/删除内容(Append Only)S文件内容在变更后立即同步到硬盘(sync)s彻底从硬盘中删除,不可恢复(用 0 填充原文件所在硬盘区域)A不再修改这个文件或目录的最后访问时间(atime)b不再修改文件或目录的存取时间D检查压缩文件中的错误d使用 dump 命令备份时忽略本文件/目录c默认将文件或目录进行压缩u当删除该文件后依然保留其在硬盘中的数据,方便日后恢复t让文件系统支持尾部合并(tail-merging)x可以直接访问压缩文件中的内容 lsattr [参数] 文件 lsattr 命令用于显示文件的隐藏权限,在 Linux 系统中,文件的隐藏权限必须使用 lsattr 命令来查看,平时使用的 ls 之类的命令则看不出端倪。

文件访问控制列表

基于普通文件或目录设置 ACL 其实就是针对指定的用户或用户组设置文件或目录的操作权限。如果针对某个目录设置了 ACL,则目录中的文件会继承其 ACL;若针对文件设置了 ACL,则文件不再继承其所在目录的 ACL。

setfacl

setfacl [参数] 文件名称ls 命令是看不到 ACL 表信息的,但是却可以看到文件的权限最后一个点(.)变成了加号(+),这就意味着该文件已经设置了 ACL 了。 参数作用-m–modify-acl 更改文件的访问控制列表-M–modify-file=file 从文件读取访问控制列表条目更改-x–remove=acl 根据文件中访问控制列表移除条目-X–remove-file=file 从文件读取访问控制列表条目并删除-b–remove-all 删除所有扩展访问控制列表条目-k–remove-default 移除默认访问控制列表-d–default 应用到默认访问控制列表的操作-P–physical 依照自然逻辑,不跟随符号链接-v–version 显示版本并退出-R–recursive 递归操作子目录

getfacl

getfacl [参数] 文件名称 参数作用-a显示文件的 ACL-d显示默认的 ACL-c不显示注释标题-e显示所有的有效权限-E显示没有的有效权限-s跳过文件,只具有基本条目-R递归到子目录-t使用表格输出格式-n显示用户的 UID 和组群的 GID

su 与 sudo

su

解决切换用户身份的需求,使得当前用户在不退出登录的情况下,顺畅地切换到其他用户su 命令与用户名之间有一个减号(-),这意味着完全切换到新的用户,即把环境变量信息也变更为新用户的相应信息,而不是保留原始的信息。建议在切换用户身份时添加这个减号(-)。

sudo

sudo [参数] 命令名称限制用户执行指定的命令:记录用户执行的每一条命令;配置文件(/etc/sudoers)提供集中的用户管理、权限与主机等参数;验证密码的后 5 分钟内(默认值)无须再让用户再次验证密码只有 root 管理员才可以使用 visudo 命令编辑 sudo 服务的配置文件添加 NOPASSWD 参数,使得用户执行 sudo 命令时不再需要密码验证 谁可以使用 允许使用的主机=(以谁的身份) 可执行命令的列表 ## Allow root to run any commands anywhere root ALL=(ALL) ALL linuxprobe ALL=(ALL) ALL ## ALL要大写,命令要写绝对路径 参数作用-h列出帮助信息-l列出当前用户可执行的命令-u用户名或 UID 值 以指定的用户身份执行命令-k清空密码的有效时间,下次执行 sudo 时需要再次进行密码验证-b在后台执行指定的命令-p更改询问密码的提示语

拍照

最新回复(0)