当前位置: 首页 > news >正文

【Linux进阶】文件和目录的默认权限与隐藏权限

1.文件默认权限:umask

        OK,那么现在我们知道如何建立或是改变一个目录或文件的属性了,不过,你知道当你建立一个新的文件或目录时,它的默认权限会是什么吗?

        呵呵,那就与umask这个玩意儿有关了,那么umask是在做什么?

        基本上,umask就是指定目前用户在建立文件或目录时候的权限默认值,那么如何得知或设置umask?它的指定条件以下面的方式来指定:

查看的方式有两种,

  • 一种可以直接输入umask,就可以看到数字类型的权限设置值,
  • 一种则是加入 -S(Symbolic)这个选项,就会以符号类型的方式来显示出权限了。

奇怪的是,怎么umask 会有四组数字?不是只有三组吗?

是没错,第一组是特殊权限用的,我们先不要理它,所以先看后面三组即可。

        在默认权限的属性上,目录与文件是不一样的,从我们知道X权限对于目录是非常重要的。但是一般文件的建立则不应该有执行的权限,因为一般文件通常是用于数据的记录,当然不需要执行的权限了。

因此,默认的情况如下:

  • 若用户建立为文件则默认没有可执行(x)权限,即只有rw 这两个项目,也就是最大为666,默认权限如下:
-rw-rw-rw-
  • 若用户建立为目录,则由于x与是否可以进入此目录有关,因此默认为所有权限均开放,即777,默认权限如下:
drwxrwxrwx

要注意的是,umask的数字指的是该默认值需要减掉的权限。

因为r、w、x分别是4(二进制:100)、2(二进制:010)、1(二进制:001),所以,当要拿掉能写的权限,就是输入2(二进制:010);

  1. 而如果要拿掉能读的权限,也就是4(二进制:100);
  2. 那么要拿掉读与写的权限,也就是6(二进制:110)
  3. 而要拿掉执行与写入的权限,也就是3(二进制:011)。

这样了解吗?请问你,5(二进制:101)是什么?呵呵,就是读与执行的权限。

如果以上面的例子来说明的话,因为umask为022,所以user并没有被拿掉任何权限,不过group
与others 的权限被拿掉了2(也就是w这个权限),那么当用户:

  • 建立文件时:(-rw-rw-rw-)  -  (-----w--w-) =    -rw-r--r--
  • 建立目录时:(drwxrwxrwx)  -  (d----w--w-) = drwxr-xr-x

不相信吗?我们就来测试看看吧!


呵呵,看见了吧!确定新建文件的权限是没有错的。

1.1.umask 的利用与重要性:课题制作

        想象一个状况,如果你跟你的同学在同一台主机里面工作时,因为你们两个正在进行同一个课题,老师也帮你们两个的账号建立好了相同用户组的状态,并且将 /home/class/目录做为你们两个人的单题目录。

        想象一下,有没有可能你所制作的文件你的同学无法编辑?果真如此的话,那就伤脑筋了。这个问题经常发生。举上面的案例来看,你看一下 test1 的权限数值是什么?644,意思是如辈umask 制定为022,那新建的数据只有用户自己具有w的权限,同用户组的人只有,这个可读的权厚而已,并无法修改。这样要怎么共同制作课题,您说是吧!

        所以,当我们需要新建文件给同用户组的用户共同编辑时,那么 umask 的用户组就不能拿掉2以个w的权限。所以,umask 就得是002之类的才可以。这样新建的文件才能够是 -rw-rw-r--限样式,那么如何设置umask呢?很简单,直接在umask后面输入002就好。

所以说,这个 umask 对于新建文件与目录的默认权限是很有关系的。

        这个概念可以用在任何服务器上面,尤其是未来在你搭建文件服务器(file server ),举例来说,SAMBA 服务器或是 FTP 服务差时,都是很重要的概念,这牵涉到你的用户是否能够将文件进一步利用的问题,不要等闲视之。

        关于umask 与权限的计算方式中,教科书喜欢使用二进制的方式来进行逻辑与和逻辑!否的计算,不过,我还是比较喜欢使用符号方式来计算,联想上面比较容易一点。

        但是,有的书籍或是BBS 上面的朋友,喜欢使用文件默认属性 666 与目录默认属性777来与umask 进行相减的计算,这是不好的。

如果使用默认属性相加减,则文件变成:666-003=663,即-rw-rw--wx,这可是完全不对的。

想想看,原本文件就已经去除x的默认的属性,怎么可能突然间冒出来了?所以,这个地方要特别小心。

        在默认的情况中,root的umask会拿掉比较多的属性,root 的umask 默认是022,这是基于安全的考虑,至于一般身份用户,通常它们的umask 为002,即保留同用户组的写入权力。其实,关于默认 umask的设置可以参考/etc/bashrc这个文件的内容,不过,不建议修改该文件,你可以参考第10章bash shell提到的环境参数配置文件(~/.bashrc)的说明。

2.文件隐藏属性

 什么?文件还有隐藏属性?光是那9个权限就快要疯掉了,竟然还有隐藏属性,真是要命,但是

没办法,就是有文件的隐藏属性存在。

        不过,这些隐藏的属性确实对于系统有很大的帮助的,尤其是在系统安全(Security)上面,非常的重要。

        不过要先强调的是,下面的chattr 命令只能在ext2、ext3、ext4的Linux传统文件系统上面完整生效,其他的文件系统可能就无法完整的支持这个命令了,例如Xfs 仅支持部分参数而已,下面我们就来谈一谈如何设置与检查这些隐藏的属性。

2.1.chattr(配置文件隐藏属性)

用法:

chattr[+-=][ASacdistu]文件或目录名称

选项与参数:

  • +:增加某一个特殊参数,其他原本存在参数则不动
  • -:删除某一个特殊参数,其他原本存在参数则不动
  • =:直接设置参数、且仅有后面接的参数.
  • A:当设置了A这个属性时,若你在存取此文件(或目录)时,它的存取时间atime将不会被修改,可避免I/O较慢的机器过度的读写磁盘。(目前建议使用文件系统挂载参数处理这个项目)
  • S:一般文件是非同步写入磁盘的(原理请参考前一章sync的说明),如果加上S这个属性时,当你进行任何文件的修改,该修改会【同步】写入磁盘中。
  • a:当设置a之后,这个文件将只能增加数据,而不能删除也不能修改数据,只有root 才能设置这属性。
  • c:这个属性设置之后,将会自动的将此文件【压缩】,在读取的时候将会自动解压缩,但是在存储的时候,将会先进行压缩后再存储(看来对于大文件似乎蛮有用的)。
  • d:当dump程序被执行的时候,设置d属性将可使该文件(或目录)不会被dump备份。
  • i:这个i可就很厉害了。它可以让一个文件【不能被删除、改名、设置链接也无法写入或新增数据。对于系统安全性有相当大的助益,只有root能设置此属性。
  • s:当文件设置了s属性时,如该文件被删除,它将会被完全的从硬盘删除,所以如果误删,完全无法恢复。
  • u:与s相反的,当使用u来配置文件时,如果该文件被删除了,则数据内容其实还存在磁盘中,可以使用来恢复该文件。
  1. 注意1:属性设置常见的是a与i的设置值,而且很多设置值必须要是root才能设置.
  2. 注意2:xfs文件系统仅支持Aadis而已。

范例:请尝试到/tmp下面建立文件,并加入主的参数,尝试删除看看.

加了i属性后就不能删除了!!!!!很震惊啊,不信的话我们举个反例

我嘞个豆,怎么样,明白了吗? 

我们请将该文件的i属性取消看看

去除了i权限,就能把它删除了!!! 

        这个命令是很重要的,尤其是在系统的数据安全上面。由于这些属性是隐藏的性质,所以需要以Isattr 才能看到该属性。

        其中,个人认为最重要的当属+i与+a这个属性了。+i可以让一个文件无法被修改,对于需要强烈的系统安全的人来说,真是相当的重要,里面还有相当多的属性是需要root才能设置的。

        此外,对于logfile 这样的日志文件,就更需要+a这个可以增加但是不能修改旧数据与删除的参数。

怎样?很棒吧!未来提到日志文件的认知时,我们再来聊一聊如何设置它。

2.2.Isattr(显示文件隐藏属性)

用法

 lsattr  [-adR]  文件或目录

选项与参数:

  • -a:将隐藏文件的属性也显示出来;
  • -d:如果接的是目录,仅列出目录本身的属性而非目录内的文件名;
  • -R:连同子目录的数据也一并列出来;

使用chattr设置后,可以利用Isattr 来查看隐藏的属性。

不过,这两个命令在使用上必须要特别小心,否则会造成很大的困扰。

例如:某天你心情好,突然将/etc/shadow 这个重要的密码记录文件设置成为具有i的属性,那么过了若干天之后,你突然要新增用户,却一直无法新增,别怀疑,赶快去将i的属性拿掉。


3.文件特殊权限:SUID、SGID、SBIT

        我们前面一直提到关于文件的重要权限,那就是r、w,x这三个读、写、执行的权限。但是,眼尖的朋友们一定注意到了一件事,那就是,怎么我们的/tmp权限怪怪的?还有,那个/usr/bin/passwd也怪怪的?怎么回事?先看看:

不是应该只有r、w、x吗?还有其他的特殊权限(s跟t)?

        头又开始头晕了,因为S与t这两个权限的意义与系统的账号及系统的进程管理较为相关,所以等到学完这些后你才会比较有概念。

下面的说明先看看就好,如果看不懂也没有关系,先知道 s放在那思称为SUID与SGID以及如何设置即可,等系统程序学完后,再回来看看。

3.1. Set UID

        当s这个标志出现在文件拥有者的x权限上时,例如刚刚提到的/usr/bin/passwd这个文件的权限状态:【-rwsr-xr-x】,此时就被称为SetUID,简称为SUID的特殊权限。

那么SUID的权限对于一个文件的特殊功能是什么?基本上SUID有这样的限制与功能:

  • SUID 权限仅对二进制程序(binary program)有效;
  • 执行者对于该程序需要具有x的可执行权限;
  • 本权限仅在执行该程序的过程中有效(run-time);
  • 执行者将具有该程序拥有者(owner)的权限。

讲这么生硬的东西你可能对于 SUID还是没有概念,没关系,我们举个例子来说明好了。

我们的Linux系统中,所有账号的密码都记录在/etc/shadow这个文件里面,这个文件的权限为:【--------- 1 root root 】,意思是这个文件仅有root可读且仅有root 可以强制写入而已。

        既然这个文件仅有root可以修改,那么这个bcq_113一般账号用户能否自行修改自己的密码?你可以使用你自己的账号输入【passwd】这个命令来看看,嘿嘿,一般用户当然可以修改自己的密码。

        唔,有没有冲突,明明/etc/shadow就不能让bcq_113这个一般账户去读写的,为什么bcq_113 还能够修改这个文件内的密码?这就是SUID的功能。

借由上述的功能说明,我们可以知道:

  1. bcq_113对于/usr/bin/passwd 这个程序来说是具有x的权限,表示bcq_113能执行 passwd;
  2. passwd 的拥有者是root这个账号;
  3. bcq_113执行passwd的过程中,会【暂时】获得root 的权限;
  4. /etc/shadow 就可以被bcq_113所执行的passwd所修改。

但如果bcq_113使用cat去读取/etc/shadow时,它能够读取吗?

        因为cat不具有SUID的权限,所以bcq_113执行【cat /etc/shadow】时,是不能读取/etc/shadow的。

我们用一张示意图来说明如下:


另外,SUID仅可用在二进制程序上,不能够用在shell 脚本上面。

这是因为shell脚本只是将很多的二进制执行文件调用执行而已。所以SUID的权限部分,还是要看shell 脚本调用进来的程序的设置,而不是shell脚本本身。

当然,SUID对于目录也是无效的,这点要特别留意。

3.2.Set GID

        当S标志在文件拥有者的x项为SUID,那s在用户组的x时则称为Set GID(SGID),是这样
没错,举例来说,你可以用下面的命令来观察到具有SGID权限的文件:

[root@study ~]#ls -l /usr/bin/locate
-rwx--s--x. 1 root solate 4049 Jun 10 2014 /usr/bin/locate


与SUID不同的是,SGID可以针对文件或目录来设置。

如果是对文件来说,SGID有如下的功能:

  • SGID 对二进制程序有用;
  • 程序执行者对于该程序来说,需具备x的权限;
  • 执行者在执行的过程中将会获得该程序用户组的支持。

举例来说,上面的/usr/bin/locate 这个程序可以去查找/var/ib/mlocate/mlocate.db这个文件的
内容(详细说明会在下节讲述),mlocate.db的权限如下:

[root@study ~] ll /usr/bin/locate /var/1ib/mlocate/mlocate.db
-rwx--s--x. 1 root slocate 40496   Jun 10 2014 /usr/bin/locate
-rw-r-----. 1 root slocate 2349055 Jun 15 03:44 /var/1ib/mlocate/mlocate.db

与SUID非常的类似,若我使用bcq_113 这个账号去执行locate时,那bcq_113 将会取得slocate
用户组的支持,因此就能够去读取mlocate.db,非常有趣吧!

除了二进制程序之外,事实上SGID 也能够用在目录中,这也是非常常见的一种用途。

当一个目录设置了SGID的权限后,它将具有如下的功能:

  • 用户若对于此目录具有r与x的权限时,该用户能够进入此目录;
  • 用户在此目录下的有效用户组(effective group)将会变成该目录的用户组;
  • 用途:若用户在此目录下具有 w的权限(可以新建文件),则用户所建立的新文件,该新文件的用户组与此目录的用户组相同。

SGID对于项目开发来说是非常重要的。因为这涉及用户组权限的问题,您可以参考一下本章后
续情境模拟的案例,应该就能够对于 SGID 有一些了解的。

3.3.Sticky Bit

这个Sticky Bit(SBIT)目前只针对目录有效,对于文件已经没有效果了,

SBIT对于目录的作用是:

  • 当用户对于此目录具有w、x权限,即具有写入的权限;
  • 当用户在该目录下建立文件或目录时,仅有自己与root才有权力删除该文件。

换句话说:当甲这个用户对于A目录具有用户组或其他人的身份,并且拥有该目录w的权限,这表示甲用户对该目录内任何人建立的目录或文件均可进行删除、更名、移动等操作。

        不过,如果将A目录加上了SBIT的权限选项时,则甲只能够针对自己建立的文件或目录进行删除、更名、移动等操作,而无法删除它人的文件。

        举例来说,我们的/tmp 本身的权限是【drwxrwxrwt 】,在这样的权限内容下,任何人都可以在/tmp内新增、修改文件,但仅有该文件/目录建立者与root 能够删除自己的目录或文件。这个特性也是挺重要的,你可以这样做个简单的测试:

  • 1.以root登录系统,并且进入/tmp当中;
  • 2. touch test,并且更改 test权限成为777;
  • 3.以一般用户登录,并进入/tmp;
  • 4.尝试删除test这个文件。

由于 SUID、SGID、SBIT 牵涉到程序的概念,因此再次强调,这部分的内容在您关于程序方面的知识后,要再次回来看。


3.4.SUID/SGID/SBIT权限设置

前面介绍过 SUID与SGID的功能,那么如何配置文件使成为具有SUID与SGID的权限?

这需要数字更改权限的方法了。

现在你应该已经知道数字形式更改权限的方式为【三个数字】的组合,那么如果在这三个数字之前再加上一个数字的话,最前面的那个数字就代表这几个权限了

  • 4为SUID
  • 2为SGID
  • 1为SBIT

        假设要将一个文件权限改为【-rwsr-xr-x】时,由于s在用户权限中,所以是SUID,因此,在原先的755之前还要加上4,也就是【chmod 4755 filename】来设置。此外,还有大S与大T的产生,参考下面的范例。

        注意:下面的范例只是练习而已,所以我使用同一个文件来设置,你必须了解SUID不是用在目录上,而 SBIT 不是用在文件上。

加入具有SUID的权限 

加入具有SUID/SGID的权限

加入具有SBIT的功能

具有空的SUID/SGID权限

        最后一个例子就要特别小心。怎么会出现大写的S与T?不都是小写的吗?

        因为s与t都是取代x这个的权限,但是你有没有发现,我们是执行7666。也就是说,user、group以及others都没有x这个可执行的标志(因为666嘛),所以,这个S与T代表的就是空的

        怎么说呢?SUID是表示该文件在执行的时候,具有文件拥有者的权限,但是文件的拥有者都无法执行了,哪里来的权限给其他人使用?当然就是空的。

        而除了数字法之外,你也可以通过符号法来处理。其中 SUID 为U+s,而SGID为 g+s和SBIT则是o+t。来看看如下的范例:

相关文章:

【Linux进阶】文件和目录的默认权限与隐藏权限

1.文件默认权限:umask OK,那么现在我们知道如何建立或是改变一个目录或文件的属性了,不过,你知道当你建立一个新的文件或目录时,它的默认权限会是什么吗? 呵呵,那就与umask这个玩意儿有关了&…...

SQL 查询中 (+) 符号的含义

您已经很好地解释了 SQL 查询中 () 符号的含义,它确实用于表示左外连接(LEFT OUTER JOIN),这是 SQL 中的一种连接操作。以下是对您提供的信息的补充和完善: ### 左外连接(LEFT OUTER JOIN)&…...

基于Vue的MOBA类游戏攻略分享平台

你好呀,我是计算机学姐码农小野!如果有相关需求,可以私信联系我。 开发语言:Java 数据库:MySQL 技术:Java技术、SpringBoot框架、B/S模式、Vue.js 工具:MyEclipse、MySQL 系统展示 首页 用…...

如何在PhpStorm中运行SQL文件?

如何在PhpStorm中运行SQL文件? 提问:如何在PhpStorm中运行SQL文件? 解答:本文将详细介绍如何在PhpStorm中运行SQL文件的步骤,包括如何配置数据库连接和执行SQL脚本,并附带示例SQL代码。 1. 配置数据库连…...

Qt实现检测软件是否多开

Qt实现检测软件是否多开 在桌面软件开发中,软件通常要设置只允许存在一个进程,像一些熟知的音乐软件,QQ音乐这种。而这些软件在限制只有一个进程的同时,通常还会有双击桌面图标唤醒已运行的后台进程的功能。关于双击桌面唤醒已运…...

spring security + vue,登录功能

前端代码:https://gitee.com/forgot940629/vuelogin 后端代码:https://gitee.com/forgot940629/springbootloginv2 参考代码:https://github.com/PuZhiweizuishuai/SpringSecurity-JWT-Vue-Deom 基于前后端分离实现登录功能。登录成功后后端向…...

64.函数参数和指针变量

目录 一.函数参数 二.函数参数和指针变量 三.视频教程 一.函数参数 函数定义格式: 类型名 函数名(函数参数1,函数参数2...) {代码段 } 如: int sum(int x,int y) {return xy; } 函数参数的类型可以是普通类型,也可以是指针类…...

原创作品 —(金融行业)年金系统交互和视觉设计

金融行业软件交互设计要点:“简化操作流程,确保流畅易用,同时注重交易环境的安全可靠,通过个性化体验提升用户满意度,并及时收集反馈以持续优化。” 2.UI设计要点:“注重视觉效果与用户体验的平衡&#xff…...

3D slicer

...

面试题--SpringCloud

SpringCloud SOA 和微服务的区别?(必会) 谈到 SOA 和微服务的区别, 那咱们先谈谈架构的演变 1. 集中式架构 项目功能简单, 一个项目只需一个应用, 将所有功能部署在一起, 这样的架构好处是减 少了部署节点和成本. 缺点: 代码耦合,开发维护困难 2. 垂直拆分架构 …...

Qt windeployqt 打包的Qt动态库介绍

前言 在 Windows 平台,通常使用 Qt 的工具 windeployqt 将可执行文件的相关 Qt 依赖项部署到当前路径下。 Windows windeployqt 部署工具 Windows 部署工具 windeployqt 旨在自动化创建一个可部署文件夹的过程,该文件夹包含运行应用程序所需的 Qt 相关…...

WordPress付费进群V2主题,多种引流方法,引私域二次变现

全新前端UI界面,多种前端交互特效让页面不再单调,进群页面群成员数,群成员头像名称,每次刷新页面随机更新不重复,最下面评论和点赞也是如此随机刷新不重复 进群页面简介,群聊名称,群内展示&…...

【Linux】性能分析器 perf 详解(三):kmem、mem

上一篇:【Linux】性能分析器 perf 详解(二) 1、perf kmem 1.1 简介 kmem 用于跟踪/测量内核内存属性的工具,如分配、释放、碎片率等。可以帮助开发者和系统管理员理解内核内存的分配和释放模式,从而诊断内存泄漏、过度分配等问题。 功能: 跟踪内存分配和释放:监控内…...

微信小程序怎样跳转页面?

在微信小程序中,页面跳转通常使用 wx.navigateTo、wx.redirectTo、wx.switchTab、wx.navigateBack 以及 wx.reLaunch 等API。这些API提供了不同的页面跳转方式,适用于不同的场景。 以下是这些API的详细代码示例和说明: 1.wx.navigateTo&…...

针对SVN、GIT版本管理工具进行源代码加密保护

针对SVN、GIT版本管理工具进行源代码加密保护 在软件开发过程中,版本管理工具如SVN和GIT是不可或缺的组成部分,它们帮助团队管理源代码的变更和版本。然而,这些工具也面临着源代码泄露的安全风险。如果不针对数据进行加密保护,很…...

js条件引用

在JavaScript中,条件引用模块通常涉及到在运行时根据条件判断来决定是否加载某个模块。这在某些情况下非常有用,比如在不同环境下使用不同的模块,或者在某些特定条件下才需要某个模块的功能。 以下是几种在JavaScript中实现条件引用的方法&a…...

帝国CMS(EmpireCMS)漏洞复现

简介 《帝国网站管理系统》英文译为Empire CMS,简称Ecms,它是基于B/S结构,且功能强大而帝国CMS-logo易用的网站管理系统。 帝国CMS官网:http://www.phome.net/ 参考相关漏洞分析文章,加上更详细的渗透测试过程。 参考…...

DP:解决路径问题

文章目录 二维DP模型如何解决路径问题有关路径问题的几个问题1.不同路径2.不同路径Ⅱ3.下降路径最小和4.珠宝的最高价值5.地下城游戏 总结 二维DP模型 二维动态规划(DP)模型是一种通过引入两个维度的状态和转移方程来解决复杂问题的技术。它在许多优化和…...

Halcon OCR字符识别(极坐标转换,字符识别)

Halcon OCR字符识别(极坐标转换,字符识别) 代码 * 1.加载图片 *************************************************** dev_close_window () read_image (Image, ./img) get_image_size (Image, Width, Height) dev_get_window (WindowHandle…...

【管理咨询宝藏139】某大型快消集团公司多渠道销售管理体系方案

本报告首发于公号“管理咨询宝藏”,如需阅读完整版报告内容,请查阅公号“管理咨询宝藏”。 【管理咨询宝藏139】某大型快消集团公司多渠道销售管理体系方案 【格式】PDF版本 【关键词】罗兰贝格、营销咨询、战略规划 【核心观点】 - 销售体系建设主要需…...

大模型提问中包括时间的实战方案

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…...

【算法】(C语言):堆排序

堆(二叉树的应用): 完全二叉树。最大堆:每个节点比子树所有节点的数值都大,根节点是最大值。父子索引号关系(根节点为0):(向上)子节点x,父节点(x…...

ffmpeg下载/配置环境/测试

一、下载 1、访问FFmpeg官方网站下载页面:FFmpeg Download Page; 2、选择适合Windows的版本(将鼠标移动到windows端)。通常,你会找到“Windows builds from gyan.dev”或者“BtbN GitHub Releases”等选项&#xff0…...

C# 异步编程详解(Task,async/await)

文章目录 1.什么是异步2.Task 产生背景3.Thread(线程) 和 Task(异步)的区别3.1 几个名词3.2 Thread 与 Task 的区别 4.Task API4.1 创建和启动任务4.2 Task 等待、延续和组合4.3 task.Result4.4 Task.Delay() 和 Thread.Sleep() 区别 5.CancellationToken 和 CancellationToken…...

qt结合vs2022安装

进入清华大学开源软件: 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 下载完成后,双击进行安装: 进入邮箱进行验证: 可能是因为网络问题,无法安装。 重新安装5.12.12版本。 安装后启动失败,重新…...

Kafka集群部署(手把手部署图文详细版)

1.1.1 部署zookpeer 在node02下载并解压zookeeper软件包 cd /usr/local wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz 或者:scp cat192.168.28.100:/home/cat/zookeeper-3.4.6.tar.gz /tmp(注意目录&#xf…...

阿里Qwen2-72B大模型已是开源榜的王者,为什么还要推出其他参数模型,被其他模型打榜?

6 月 27 日,全球知名的开源平台 Hugging Face 的联合创始人兼首席执行官 Clem 在社交平台激动宣布,阿里 Qwen2-72B 成为了开源模型排行榜的王者。 这是一件大好事,说明了我们在大模型领域从先前的追赶,逐渐走向了领导,…...

7.基于SpringBoot的SSMP整合案例-表现层开发

目录 1.基于Restfu1进行表现层接口开发 1.1创建功能类 1.2基于Restful制作表现层接口 2.接收参数 2使用Apifox测试表现层接口功能 保存接口: 分页接口: 3.表现层一致性处理 3.1先创建一个工具类,用作后端返回格式统一类:…...

【server】3、注册中心与配置中心

1、服务注册与发现 1.1、consul 1.1.1 是什么 官网: Consul by HashiCorp spring-cloud-consul: Spring Cloud Consul :: Spring Cloud Consul gitHub 官网 :GitHub - hashicorp/consul: Consul is a distributed, highly available, and data cent…...

【大数据】—量化交易实战案例(海龟交易策略)

声明:股市有风险,投资需谨慎!本人没有系统学过金融知识,对股票有敬畏之心没有踏入其大门,今天用另外一种方法模拟炒股,后面的模拟的实战全部用同样的数据,最后比较哪种方法赚的钱多。 海龟交易…...