LINUX 用户和组操作

news2024/11/18 15:39:17

目录

一、用户和组的分类

1、用户分类

2、组的分类

3、用户和组的配置文件

二、用户管理

1、添加用户

2、修改用户信息

3、修改用户密码

4、用户间切换

5、删除用户账号

6、sudo命令提高普通用户权限

三、用户组管理

1、创建用户组

2、修改用户组的属性

3、添加/删除组成员

4、删除组账号

四、查询用户和用户组信息

1、查看用户信息

2、查看用户组信息

五、文件系统权限

1、文件一般权限

2、文件和目录的特殊权限

1)、SUID

2)、SGID

3)、STICKY

3、ACL权限

1)设置ACL权限

2)查看ACL权限

六、权限掩码umask

1、设置新建文件或目录的默认权限

2、查看、修改用户当前默认的umask值


一、用户和组的分类

1、用户分类

1)超级用户:用户名为root,它具备一切权限,只有进行系统维护情形下才会使用超级用户登录,以避免系统出现安全问题。

2)系统用户(伪用户):是LINUX系统正常工作所必须的用户。主要是为了满足相应的系统进程对文件属主的要求而建立,如:bin、adm等,系统用户不能用来登录。

3)普通用户:是为了让用户能够使用LINUX系统资源而建立的,我们大多数用户都属于此类。

2、组的分类

1)基本组(私有组):建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个就是基本组。

2)附加组(公有组):可以容纳很多用户,组中的用户都具有所拥有的权力。

3、用户和组的配置文件

文件名称文件功能
/etc/passwd用户账号文件
/etc/shadow用户密码文件
/etc/group用户组账号文件
/etc/gshadow用户组密码文件

1)用户账号文件--/etc/passwd是一个文本文件,用于定义系统的用户账号,由于所有用户都对passwd有读的权限,所以该文件只定义用户账号,而不保存密码。

root:x:0:0:root:/root:/bin/bash--该字段由七个部分组成,之间用“ : ”分隔格,格式如下

账号名称:密码:UID:GID:个人资料:主目录:Shell

2)用户密码文件--/etc/shadow

root:$y$j9T$LWZDwBAhVGg23pv037HHT.$7olHQP6h/q3Oendv1MZW9MrbGkZYUrboA9j0vkMF/j6:19608:0:99999:7::: ---该字段也是用" : "分隔,格式如下

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

3)用户组账号文件---/etc/group

root:x:0:---该字段用" : ”分隔,格式如下

组名:组的加密口令:GID:Userlist

二、用户管理

1、添加用户

基本语法

useradd [选项] 用户名

常用选项:

-c :注释信息

-d :设定用户的家目录

-e :设置用户的失效时间,格式YYYY-MM-DD

-f :指定密码到期后多少天账号被禁用,若为0,指定账号到期立即禁用,若为-1,指账号过期后永不禁用。

-g :指定组名,该组名是存在的

-G :为用户指定所属的附加组,若指定多个附加组,可以用逗号分隔

-M :不创建用户家目录

-N :不创建与用户同名的基本组

-p :只等用户的登录密码

-u :设置用户的UID,若不指定默认在最大用户的UID+1,如果同时有-o选项可以重复使用其他用户的标识

-s :指定用户登陆后使用的SHELL,若不指定,默认为bash

如:创建一个用户为zhangsan,密码为123456,账号永不过期,其他默认。

[root@node1 ~]# useradd zhangsan -p 123456 -e -1
[root@node1 ~]# tail -1 /etc/shadow
zhangsan:123456:19611:0:99999:7:::

2、修改用户信息

基本语法

usermod [选项] 用户名

常用选项

可以用创建用户的选项,功能一样

-L :锁定(暂停)用户账户,使其不能登录使用。

-U :解锁用户账户

-l :修改原账户名的名字,必须在该用户未登录的情况下使用

例如:修改用户zhangsan的UID为1010,用户名修改为lisi。

#修改前先进行查看
[root@node1 ~]# tail -1 /etc/passwd
zhangsan:x:1002:1002::/home/zhangsan:/bin/bash
#进行修改
[root@node1 ~]# usermod  zhangsan -u 1010 -l lisi
#修改后进行查看
[root@node1 ~]# tail -1 /etc/passwd
lisi:x:1010:1002::/home/zhangsan:/bin/bash

3、修改用户密码

基本语法

passwd [选项] 用户名

常用选项:

-e、-i、-l和上面的一样使用

-d :清空指定用户的密码

-x :指定用户密码的最长使用期限

例如:修改lisi用户的密码为654321

#修改前进行查看
[root@node1 ~]# tail -1 /etc/shadow
lisi:123456:19611:0:99999:7:::
#进行修改
[root@node1 ~]# passwd lisi
Changing password for user lisi.
New password:      #LINUX系统是密文输入,看不见,正常输入即可
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:     #LINUX系统是密文输入,看不见,正常输入即可
passwd: all authentication tokens updated successfully.
#修改后,进行查看你
[root@node1 ~]# tail -1 /etc/shadow
lisi:$y$j9T$3LAdu8d8IoA8bMXdHm11P/$9cRRCnV8M66KYvQqiY1wGEQNsOVvfTMqy0JAjWqpQbC:19611:0:99999:7:::

注:另一种脚本修改密码的方法

echo 密码 | passwd --stdin 用户名

4、用户间切换

基本语法

su 用户名

从root用户切换到任何用户不需要密码验证,而普通用户道root或者到其他用户需要输入密码进行验证后才可以切换。

su和su -命令的区别----加载配置文件不一样

su切换方式加载的文件:~/.bashrc 、/etc/bashrc

su -切换方式加载文件:/etc/bashrc、/etc/profile、~/.bashrc、~/.bash_profile

例如:

[root@node1 ~]# su lisi    ---root用户到普通用户lisi
[lisi@node1 root]$ su root   ---从普通用户到root
Password:                    ---需要输入密码才能切换
[root@node1 ~]# 
#在使用过程中,不要用户套用户,登录一个用户应该退出再切换到其他用户
[root@node1 ~]# exit
exit
[lisi@node1 root]$ exit
exit
[root@node1 ~]# 

5、删除用户账号

基本语法

userdel [-r] 账户名

选项  -r  在删除该用户的同时,一并删除该用户对应的主目录。

例如:删除lisi用户

#删除前进行查看该文件最后一条用户是lisi
[root@node1 ~]# tail -1 /etc/passwd
lisi:x:1010:1002::/home/zhangsan:/bin/bash
#执行删除lisi用户的命令
[root@node1 ~]# userdel -r lisi
#删除后进行查看该文件的最后一条用户不是lisi了,说明已经删除
[root@node1 ~]# tail -1 /etc/passwd
dhcpd:x:177:177:DHCP server:/:/sbin/nologin

6、sudo命令提高普通用户权限

使用该命令,需要通过root用户在用户配置文件/etc/sudoers文件配置才可以使用

sodo的执行流程:

默认只有root才有该权限,当用户执行sudo时,便会让用户输入自己的密码进行确认,root用户不需要输入密码。若想要切换的身份执行相同的权限,也需要输入密码,若密码输入不成功,系统会去系统/etc/sudoers文件中查找该用户是否执行sudo的权限。若用户具有执行sudo的权限,便会开始执行sudo后续接的命令。格式:sudo  + 其他要执行的命令。

配置/etc/sudoers文件

vim /etc/sudoers  找到文件第100行这个位置,都修改为ALL。

 root  ALL=(ALL)   ALL

参数含义:root用户账号,第一个ALL登录者的来源主机,第二个ALL可以切换的身份,第三个ALL可执行的命令。

ALL关键字,代表任何身份、主机、命令。

三、用户组管理

1、创建用户组

基本命令

groupadd [选项] 用户组名

常用选项:

-g :指定用户组名的GID(组ID)

-r :建立一个系统组账号,与-g不能同时使用,则分配一个1~999的GID

例如:创建一个group1组名的新组

[root@node1 ~]# tail -1 /etc/group
group1:x:977:

2、修改用户组的属性

基本语法

groupmod [选项]  用户组名

常用选项:

-g :指定用户组的新GID

-n :将组的名字修改为新名字

3、添加/删除组成员

基本语法

gpasswd [选项] [用户] [组]

只有root用户和组管理员才能使用该命令。

常用选项:

-r :删除组密码

-a :把用户加入组

-d :把用户从组中删除

-M :可以添加多个用户

-A :给组指派管理员

例如:将zhangsan用户添加至group1。

#先创建一个用户zhangsan 
[root@node1 ~]# useradd  zhangsan -p 123456
#将用户zhangsan添加至group1用户组
[root@node1 ~]# gpasswd -a zhangsan group1
Adding user zhangsan to group group1
#添加后进行查看
[root@node1 ~]# tail -2 /etc/group | head -1
group1:x:977:zhangsan

 4、删除组账号

基本语法

groupdel 用户组名

四、查询用户和用户组信息

1、查看用户信息

id 用户名

2、查看用户组信息

groups 用户组名

例如:

#查看zhangsan用户信息
[root@node1 ~]# id zhangsan
uid=1002(zhangsan) gid=1002(zhangsan) groups=1002(zhangsan),977(group1)
#查看zhangsan用户组信息
[root@node1 ~]# groups zhangsan
zhangsan : zhangsan group1

3、查看用户登录情况

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

[root@node1 ~]# users
root root

2)last  -n---查看你最近登录用户情况

[root@node1 ~]# last -10
root     pts/1        192.168.78.1     Mon Sep 11 18:09   still logged in
root     pts/0        192.168.78.1     Mon Sep 11 16:10   still logged in
reboot   system boot  5.14.0-162.6.1.e Mon Sep 11 15:58   still running
root     pts/1        192.168.78.1     Sun Sep 10 15:50 - crash (1+00:08)
root     pts/0        192.168.78.1     Sun Sep 10 15:42 - 18:17  (02:35)
reboot   system boot  5.14.0-162.6.1.e Sun Sep 10 15:40   still running
root     pts/0        192.168.78.1     Sat Sep  9 16:19 - crash  (23:21)
reboot   system boot  5.14.0-162.6.1.e Sat Sep  9 16:17   still running
root     pts/0        192.168.78.1     Fri Sep  8 09:56 - crash (1+06:21)

3)lastlog---查看每个账户最近登录时间

[root@node1 ~]# lastlog
Username         Port     From                                       Latest
root             pts/1    192.168.78.1                              Mon Sep 11 18:09:02 +0800 2023
bin                                                                 **Never logged in**
daemon                                                              **Never logged in**
adm                                                                 **Never logged in**
lp                                                                  **Never logged in**
sync                                                                **Never logged in**
shutdown                                                            **Never logged in**
halt                                                                **Never logged in**
mail                                                                **Never logged in**
operator                                                            **Never logged in**

4)w---显示登录到系统的用户信息

[root@node1 ~]# w
 18:31:55 up  2:33,  2 users,  load average: 0.00, 0.00, 0.00
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0     16:10    1.00s  3.15s  0.02s w
root     pts/1     18:09   22:53   0.02s  0.02s -bash

五、文件系统权限

1、文件一般权限

1)文件权限三类对象:owner所属主,简写u;group所属组,简写g;other其他,简写o。

2)文件的三种主要权限:r----read读;w----writh写;x----execute执行。

注:root用户不受文件权限的的读写限制,执行权限受限制。

3)一般权限说明

4)修改文件或目录权限

基本语法

chmod [选项] [ugoa] [+|-|=] [rwx] 文件或目录名    ---字符型修改方式
chmod [选项] [ugoa] nnn  文件或目录名       ---数值型修改n代表数字

常用选项:-R --- 递归修改该目录下所有的文件或者子目录的权限。

ugoa:针对不同用户的级别选择  a代表所有用户即 a=u+g+o。

=或-或=:表示设置权限的动作,+增加某个权限,-取消某个权限,=赋予某个权限,并覆原来的权限。

rwx:用字符组合设置权限。

nnn:用三个八进制数字来表示的权限。

注:字符和数字不能混合使用添加或取消权限

5)对于文件和目录 rwx有着不同的作用

6)文件和目录可能出现的权限

例如,修改a.txt文件所属主为可读、可写、可执行,所属者为可读、可写、不可执行,其他用户可读,不可写、不可执行。

#修改前查看权限
[root@node1 test]# ll
total 0
-rw-r--r--. 1 root root 0 Sep 11 19:42 a.txt
#进行修改
[root@node1 test]# chmod 764 a.txt 
#修改后进行查看权限
[root@node1 test]# ll
total 0
-rwxrw-r--. 1 root root 0 Sep 11 19:42 a.txt

7)修改文件或目录的属主和属组

修改文件或目录的所属者

基本语法

chown [选项]  新属主[:[新属组]] 文件或目录

选项-R ----可以递归设置指定目录下的全部文件(包括子目录和子目录中的文件)的所属关系。 

修改文件或者目录的属主

基本语法

chown [选项] :新属组 文件或目录
chgrp [选项] 新属组 文件或目录

2、文件和目录的特殊权限

三种特殊权限:SET UID(SUID)、SET GID(SGID)、StickyBit(粘滞位),用于对文件或目录进行灵活方便的控制。

1)、SUID

授予该权限,表示任何用户执行该可执行程序,生成的进程的所有者不是进程的发起者,而是可执行程序的所有者,标识为 s。

基本语法

chmod u+s 文件或目录名

2)、SGID

对目录授予该权限,则在目录中创建的所有文件的所属组都为该目录的所属组,而不是用户所属组 标识为 s。

基本语法

chmod g+s 文件或目录目录名

3)、STICKY

对目录设置该权限,则该目录中所有的文件只有创建者可以修改删除,标识为 t。

基本语法

chomd o+t 文件或目录名

注:授予特殊权限时,该目录或文件需要有x普通权限才会达到对应的效果。

3、ACL权限

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

1)设置ACL权限

基本语法

setfacl [选项] 文件或目录

常用选项:

-m :设定ACL权限(必选项),例如给一个用户ACL权限,则使用 u:用户名:权限 格式;如果给一个组ACL权限,则使用 g:组名:权限 格式;

-x :删除指定的ACL权限

-b :删除所有的ACL权限

-d :设定默认ACL权限。只对目录生效,指目录中新建的文件拥有此默认权限

-k :删除默认ACL权限

-R :递归设定ACL权限,指设定的ACL权限会对目录下的所有子文件生效

2)查看ACL权限

基本语法

getacl 文件名或目录名

例如:所有者root用户在根目录下创建一个文件目录/file,然后创建一个QQ所属组,所属组里面创建两个用户xiaoming和xiaohong。此文件权限770,然后新加入一个用户xiaoqiang,给他设定/file目录的ACL为r-x。

[root@node1 test]# mkdir /file
[root@node1 test]# useradd xiaohong
[root@node1 test]# useradd xiaoming
[root@node1 test]# groupadd QQ
[root@node1 test]# gpasswd -M xiaohong,xiaoming QQ
[root@node1 test]# chown root:QQ /file/
[root@node1 test]# chown 770 /file/
[root@node1 test]# ll -d /file/
drwxrwxrwx. 2 770 QQ 6 Sep 11 21:57 /file/

目录/file的所有者和所属组其他人权限设定为770,接下来我们创建旁听用户xiaoqiang,并赋予ACL权限r-x。

[root@node1 test]# useradd xiaoqiang
[root@node1 test]# setfacl -m u:xiaoqiang:rx /file/
[root@node1 test]# ll -d /file/
drwxrwxrwx+ 2 770 QQ 6 Sep 11 21:57 /file/
[root@node1 test]# getfacl /file
getfacl: Removing leading '/' from absolute path names
# file: file
# owner: 770
# group: QQ
user::rwx
user:xiaoqiang:r-x
group::rwx
mask::rwx
other::rwx

现在切换到xiaoqiang用户对于/file目录没有写权限,进入/file目录,在此目录创建文件看能否成功。

[root@node1 test]# su xiaoqiang
[xiaoqiang@node1 test]$ cd /file/
[xiaoqiang@node1 file]$ touch a.txt
touch: cannot touch 'a.txt': Permission denied

六、权限掩码umask

1、设置新建文件或目录的默认权限

在LINUX系统中,当用户创建一个新的文件或者目录时,系统都会为新建的目录或文件分配默认的权限,该默认的权限与UMASK值有关,具体关系如下

新建文件的默认权限=0666-umask值

新建目录的默认权限=0777-umask值

2、查看、修改用户当前默认的umask值

查看当前用户的umask权限
[root@node1 test]# umask
0022

#修改umask值
#1、临时修改
[root@node1 test]# umask 000
[root@node1 test]# umask
0000
[root@node1 test]# touch b.txt
[root@node1 test]# mkdir file
[root@node1 test]# ll
total 0
-rwxrw-r--. 1 root root 0 Sep 11 19:42 a.txt
-rw-rw-rw-. 1 root root 0 Sep 11 21:24 b.txt
drwxrwxrwx. 2 root root 6 Sep 11 21:24 file

#2、永久修改
[root@node1 test]# vim /etc/profile
if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
    umask 002
else
    umask 022
fi
[root@node1 test]# source /etc/profile //立即在当前shell中生效

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1001540.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OpenCV基础(二):绘制直线、绘制几何图形、绘制文字、创建窗口

前言 在Android音视频开发中,网上知识点过于零碎,自学起来难度非常大,不过音视频大牛Jhuster提出了《Android 音视频从入门到提高 - 任务列表》,结合我自己的工作学习经历,我准备写一个音视频系列blog。本文是音视频系…

折半查找(二分查找)

1.算法思想 折半查找,又称“二分查找”,仅适用于有序的顺序表。 1.适用范围 顺序表拥有随机访问的特性,链表没有。 图解:(low代表左区间边界,high代表右区间边界,mid代表中间元素&#xff0…

Nginx安装与常见命令

一、Nginx简介 官方文档:https://www.nginx.com/ Nginx中文文档:https://nginx.cn/doc/index.html Nginx由俄罗斯人(Igor Sysoev)编写的轻量级Web服务器,它的发音为 [ˈendʒɪnks] 。 Nginx 不仅是一款高性能的 HTTP服…

基于YOLOv8模型的烟头目标检测系统(PyTorch+Pyside6+YOLOv8模型)

摘要:基于YOLOv8模型的烟头目标检测系统可用于日常生活中检测与定位车辆目标,利用深度学习算法可实现图片、视频、摄像头等方式的目标检测,另外本系统还支持图片、视频等格式的结果可视化与结果导出。本系统采用YOLOv8目标检测算法训练数据集…

字符串的创建及常用方法大全

字符串 1.索引思维 值类型:不会改变原来的数 var arr 100//值类型function fn(a) {a 200}fn(arr)console.log(arr);//100引用类型:会改变原来的数组 // var arr [11, 22, 33, 44]// var arr1 arr;//arr1引用了arr的地址// arr1[0] "AA"// console.log(arr1);//…

js中运算规则

法: 有对象,对象是根据object.valueof().toString()返回的值 //toString的对象 var obj2 {toString:function(){return a} } console.log(2obj2) //输出结果2a//常规对象 var obj1 {a:1,b:2 } console.log(2obj1); //输出结果 2[object…

具体型号的CPU与GPU/CUDA计算能力实测记录

测试结果仅供参考,不一定做到非常严谨。 另外京东上查看,目前(2023年9月)i7-10700的价格好像在2000元左右;Quadro RTX 6000显卡,约2万元左右。 CUDA适合大批量的并行计算,CPU更加擅长分支预测以…

医院安全不良事件报告系统源码 PHP+ vue2+element+ laravel8+ mysql5.7+ vscode开发

不良事件上报系统通过 “事前的人员知识培训管理和制度落地促进”、“事中的事件上报和跟进处理”、 以及 “事后的原因分析和工作持续优化”,结合预存上百套已正在使用的模板,帮助医院从对护理事件、药品事件、医疗器械事件、医院感染事件、输血事件、意…

华为云云耀云服务器L实例使用教学:安装jdk和配置环境变量

最近各个平台都被华为mate60的消息霸屏了,5g麒麟,库克来了都不行 华为除了做手机,在云计算领域也有很多年的深耕,华为作为全球领先的信息和通信技术(ICT)解决方案提供商,一直以其创新的产品和服…

如何管理敏捷开发迭代,Sprint Backlog管理?

​什么是Sprint Backlog? Sprint Backlog是Scrum的主要工件之一。在Scrum中,团队按照迭代的方式工作,每个迭代称为一个Sprint。在Sprint开始之前,PO会准备好产品Backlog,准备好的产品Backlog应该是经过梳理、估算和优…

《C++ primer》练习3.17:改写单词为大写

最近看《C primer》&#xff0c;有这样一个题目 从cin读入一组词并把它们存入一个vector 对象&#xff0c;然后设法把所有词都改写为大写形式。输出改变后的结果&#xff0c;每个词占一行。 考察 怎么输入字符串怎么存入vector对象怎么对字符串字符处理 代码 #include <i…

什么是lockbit勒索病毒,中了勒索病毒怎么办?勒索病毒解密,数据恢复

lockbit是一种勒索病毒&#xff0c;是一种极具破坏性的电脑病毒&#xff0c;它利用加密技术来锁定用户文件&#xff0c;并以此为条件向用户勒索钱财。lockbit病毒的传播方式有通过电子邮件附件、恶意网站、点对点网络等多种途径进行传播。这种病毒一旦侵入电脑系统&#xff0c;…

Redis——zset类型详解

概要 zset是有序集合&#xff0c;将zset中的members引入一个属性score&#xff0c;根据这个属性值来进行排序&#xff0c;其中members不可以重复&#xff0c;score可以重复&#xff08;按照字典序排序&#xff09;&#xff0c;默认按照升序排序 有序集合中提供指定分数和元素…

使用POI实现操作Excel文件。

1、添加依赖 <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>4.1.2</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-o…

Keras入门与残差网络的搭建

发现草稿箱里还有一篇很早之前的学习笔记&#xff0c;希望可以帮助到有需要的童鞋~ 目录 1、keras入门 2、残差网络 &#xff08;ResNet&#xff09; 2.1、恒等块 2.2、卷积块 搭建一个50层的残差网络 自己的测试数据 1、keras入门 本文参考参考 Keras模型大纲&#xff…

SSM SpringBoot vue快递柜管理系统

SSM SpringBoot vue快递柜管理系统 系统功能 登录 注册 个人中心 快递员管理 用户信息管理 用户寄件管理 配送信息管理 寄存信息管理 开发环境和技术 开发语言&#xff1a;Java 使用框架: SSM(Spring SpringMVC Mybaits)或SpringBoot 前端: vue 数据库&#xff1a;Mys…

《VulnHub》DarkHole:1

VulnHub 1&#xff1a;靶场信息2&#xff1a;打靶2.1&#xff1a;情报收集&威胁建模2.2&#xff1a;漏洞分析&渗透攻击 3&#xff1a;总结3.1&#xff1a;命令&工具3.1.1&#xff1a;Nmap 3.2&#xff1a;关键技术 VulnHub 打靶记录。官网&#xff1a;https://www.…

C++零碎记录(十)

17. 继承对象内存 17.1 查询继承对象所占内存 #include <iostream> using namespace std; #include<string>//继承中的对象模型class Base { public:int m_A; protected:int m_B; private:int m_C; };//公共继承 class Son:public Base {int m_D; };//利用开发人…

在Creo 6.0中画图模板问题

在Creo 6.0中&#xff0c;文件的默认模板是英制模板“inlbs_part_solid”,此文件模板中尺寸的单位是inch。我们建模中需要的单位是mm&#xff0c;改变Creo文件默认的单位有两种方法。 1 【新建】对话框取消勾选【使用默认模板】对话框 &#xff08;1&#xff09;单击主页选项…

从板凳围观到玩转行家:Moonbeam投票委托如何让普通用户一同参与

今年5月&#xff0c;Moonbeam发起了一项社区链上治理中投票委托反馈的调查。187位社区成员参与了这项调查&#xff0c;调查发现受访者对治理感兴趣&#xff0c;增加参与度只需要进行一些调整&#xff0c;即更简化的投票流程。 治理和去中心化是Web3的核心&#xff0c;随着Moon…