学Linux的第六天

目录

账户和组管理

工作组管理

创建工作组groupadd

修改工作组groupmod

添加/删除组成员gpasswd

删除工作组groupdel

查看用户登录系统的情况

users查看当前登录系统的用户

last命令

lastlog命令

[w命令 显示登录到系统的用户信息](#w命令 显示登录到系统的用户信息)

who命令

Linux文件系统权限

文件的一般权限

文件详细信息

文件权限构成

[chmod(change mode):修改文件或目录的权限](#chmod(change mode):修改文件或目录的权限)

[chown命令 修改文件或目录的所有者和属组](#chown命令 修改文件或目录的所有者和属组)

特殊权限

SUID权限

[SGID 权限](#SGID 权限)

[Sticky Bit权限](#Sticky Bit权限)

设置特殊权限

[ACL 权限给指定的用户指定目录分配指定的权限。](#ACL 权限给指定的用户指定目录分配指定的权限。)

查看ACL权限getfacl

设定ACL权限setfacl

权限掩码umask

查看默认umask值

修改默认umask


账户和组管理

工作组管理

创建工作组groupadd

groupadd -参数 工作组名
参数
-g GID :指定新工作组的 GID ,默认值是已有的最大的 GID 加 1
-r : 建立一个系统组账号,与 -g 不同时使用时 , 则分配一个 1 ~ 999 的 GID
[root@server ~] # groupadd group2 -g 2000
//添加一个组 ID 为 2000, 组名为 group2 的新组

修改工作组groupmod

groupmod -参数 工作组名
参数
-g GID------ 为用户组指定新的组标识号
-n 新用户组 ------ 将用户组的名字改为新名字修改用户组的名称和用户组的 GID 值
将组 group1 的 GID 修改为 3000, 组名修改为 group11
[root@server ~] # groupmod -g 3000 -n group11 group1

添加**/**删除组成员gpasswd

gpasswd - 参数 账户 工作组
-r : 删除组密码
-a : 把用户加入组
-d : 把用户从组中删除。
-M : 可同时添加多个用户
-A : 给组指派管理员。
只有 root 用户和组管理员才能够使用该命令

删除工作组groupdel

groupdel 工作组名
被删除的组若是基本组,则必须先删除引用该基本组的用户,然后再删除该基本组

查看用户登录系统的情况

users查看当前登录系统的用户

[root@server ~]# users

last****命令

列出目前与过去登入系统的用户相关信息,该命令默认会去读取 /var/log/wtmp 文件,并把该文件
记录的登入系统的用户名单全部显示出来

lastlog****命令

查看每个账号的最近登录时间,该命令会读取 /var/log/lastlog 文件

w****命令显示登录到系统的用户信息

who****命令

显示目前登录到系统的用户,会从/var/run/utmp 文件来获取信息

Linux****文件系统权限

文件的一般权限

文件详细信息

使用命令 ll 或 ls -l 查看

文件权限构成


r ( read ) 可以读取文件的内容
可以列出目录的内容,即目录下的文件的文件名
w ( write ) 可以更改文件的内容
可以创建或者删除目录中的任一文件(只有 w 权限无法创建删除文件,需要和x 权限一起使用)
x (execute ) 可以作为可执行文件,如脚本
可以切换到目录,如 cd 命令

root 账户不受文件权限的读写限制,执行权限受限制

chmod(change mode):修改文件或目录的权限

chmod [ 选项 ] [ugoa][ + - = ][rwx] 文件或目录 ...
chmod [ 选项 ] nnn 文件或目录 ...
-R :递归修改指定目录下所有文件、子目录的权限
ugoa :表示权限设置所针对的用户类别,可以是其中字母中的一个或组合, u(user) 表示文件或目录
的属主 ( 所有者 ) ; g(group) 表示属组内的用户; o(others) 表示其他用户; a(all) 表示所有用户 ( 即
u+g+o)

  • 或 - 或 = :表示设置权限的操作动作, + 代表添加; - 代表取消; = 表示只赋予给定的权限,并取消原
    有的权限。
    rwx :用字符形式表示的所设置的权限,可以是其中一个字母或组合
    nnn :用数字表示的权限

chown****命令修改文件或目录的所有者和属组

chown - 参数 所有者:所属组 文件名或目录名

参数 -R 递归设置

特殊权限

UID(SUID) 、 SET GID(SGID) 、 Sticky Bit( 粘滞位 ) 三种特殊权限,用于对文件或目录进行更加灵活方便的访问控制

SUID****权限

让一般用户在执行某些程序的时候, 在程序的运行期间, 暂时获得该程序文件所属者的权限。

如果这个所有组是root,加s是新建文件所有组还是root,权利提升
如 -rwsr-xr-x 这样

suid 仅对二进制文件有效
在执行过程中,调用者会暂时获得该文件的所有者权限
该权限只在程序执行的过程中有效

SGID****权限

文件: 如果 SGID 设置在二进制文件上, 则不论用户是谁,在执行该程序的时候,程序的所属组将
会变成该程序文件的所属组。
目录:如 果 SGID 是设置在 A 目录上, 则在 A 目录内所建立的文件或目录的所属组, 将会是此 A
目录的所属组

Sticky Bit****权限

是在其他人后面加t,只能被文件里的所有者写,

设置特殊权限

为文件或目录添加三种特殊权限同样可以通过 chmod 命令来实施 , 使用 "u±s" 、 "g±s" 、 "o±t" 的字符权
限模式分别用于添加和移除 SUID 、 GUID 、 sticky 权限。
若使用数字形式的权限模式 , 可采用 "nnnn" 格式的四位八进制数字表示,其中:后面三位是一般权限
的数字表示,前面第一位则是特殊权限的标志数字:
0------ 表示不设置特殊权限
1------ 表示只设置 sticky
2------ 表示只设置 GUID 权限
3------ 表示只设置 SGID 和 sticky 权限
4------ 表示只设置 SUID 权限
5------ 表示只设置 SUID 和 sticky 权限
6------ 表示只设置 SUID 和 SGID
7------ 表示同时设置 SUID 、 GUID 、 sticky3 种权限

ACL 权限给指定的用户指定目录分配指定的权限。

查看ACL权限getfacl

getfacl 文件名

设定ACL权限setfacl

setfacl - 参数 文件名
-m :设定 ACL 权限
给用户设定 ACL 权限: setfacl -m u: 用户名 : 权限 指定文件名
给用户组设定 ACL 权限: setfacl -m g: 组名 : 权限 指定文件名
-x :删除指定的 ACL 权限;
-b :删除所有的 ACL 权限;
-d :设定默认 ACL 权限。只对目录生效,指目录中新建立的文件拥有此默认权限;
-k :删除默认 ACL 权限;
-R :递归设定 ACL 权限。指设定的 ACL 权限会对目录下的所有子文件生效

权限掩码****umask

在 Linux 系统中,当用户创建一个新的文件或目录时,系统都会为新建的文件或目录分配默认的限,该默认权限与umask 值有关
新建文件的默认权限 =0666-umask 值 (减去)
新建目录的默认权限 =0777-umask 值

查看默认umask

[root@server ~] # umask

修改默认****umask

[root@server ~] # umask 000 # 临时修改

相关推荐
丶Darling.1 小时前
vscode在windows和linux如何使用cmake构建项目并make生成可执行文件,两者有什么区别
linux·windows·vscode
ken22321 小时前
distrobox install in ubuntu 22.04 / 在 ubuntu 22.04 上安装 distrobox (***) OK
linux
秃头佛爷1 小时前
linux命令总结
linux·运维·服务器
techzhi2 小时前
为什么TCP(TIME_WAIT)2倍MSL
服务器·网络·tcp/ip
Mr.王8352 小时前
架构学习第四周--高可用与NoSQL数据库
linux·nosql
草明2 小时前
Nginx 做反向代理,一个服务优先被使用,当无法提供服务时才使用其他的备用服务
运维·nginx·github
C++忠实粉丝3 小时前
Linux系统基础-多线程超详细讲解(5)_单例模式与线程池
linux·运维·服务器·c++·算法·单例模式·职场和发展
zhuyan1083 小时前
【VMware】使用笔记
服务器
华纳云IDC服务商3 小时前
CentOS系统中查看内网端口映射的多种方法
linux·运维·centos