RHCE8 资料整理(六)

news2024/11/24 5:28:36

RHCE8 资料整理

  • 第 6 篇 软件管理
    • 第 23 章 用rpm管理软件
      • 23.1 rpm查询
      • 23.2 rpm卸载
      • 23.3 软件包升级
      • 23.4 rpm验证
    • 第 24 章 用yum/dnf管理软件包
      • 24.1 yum架构介绍
      • 24.2 用光盘搭建yum源
      • 24.3 创建私有仓库
      • 24.4 yum客户端配置
      • 24.5 yum基本使用
        • 24.5.1 查询
        • 24.5.2 安装与卸载
        • 24.5.3 下载
        • 24.5.4 查询缺失命令
      • 24.6 组的使用
      • 24.7 使用第三方yum源

第 6 篇 软件管理

第 23 章 用rpm管理软件

详细查看 https://blog.csdn.net/u010230019/article/details/130016072

rpm全称是redhat package manager,后来改成rpm package manager,这是根据源码包编译出来的包。以vsftpd-3.0.3-33.el8.x86_64.rpm为例,各字段的含义:

  1. vsftpd 包的名称
  2. 3.0.3 版本,即version
  3. 33.el8 小版本号,即release,el8指适用于RHEL8系统
  4. x86_64 指架构,是32位还是64位

rpm安装命令是rpm -ivh 安装包

rpm安装时已经指定了安装路径,如下:

[root@node-138 docker]# rpm2cpio docker-1.13.1-205.git7d71120.el7.centos.x86_64.rpm |cpio -id	#解压rpm包
130330 blocks
[root@node-138 docker]# tree
.
├── docker-1.13.1-205.git7d71120.el7.centos.x86_64.rpm
├── etc
│   ├── docker
│   │   ├── certs.d
│   │   │   ├── redhat.com
│   │   │   │   └── redhat-ca.crt -> /etc/rhsm/ca/redhat-uep.pem
│   │   │   ├── redhat.io
│   │   │   │   └── redhat-ca.crt -> /etc/rhsm/ca/redhat-uep.pem
│   │   │   └── registry.access.redhat.com
│   │   │       └── redhat-ca.crt -> /etc/rhsm/ca/redhat-uep.pem
│   │   ├── daemon.json
│   │   └── seccomp.json
│   └── sysconfig
│       ├── docker-network
│       └── docker-storage
├── usr
│   ├── bin
│   │   ├── docker-containerd-current
│   │   ├── docker-containerd-shim-current
│   │   ├── docker-ctr-current
│   │   ├── dockerd-current
│   │   └── docker-storage-setup -> /usr/bin/container-storage-setup
│   ├── lib
│   │   ├── systemd
│   │   │   └── system
│   │   │       ├── docker-cleanup.service
│   │   │       ├── docker-cleanup.timer
│   │   │       ├── docker.service
│   │   │       └── docker-storage-setup.service
│   │   └── udev
│   │       └── rules.d
│   │           └── 80-docker.rules
│   ├── libexec
│   │   └── docker
│   │       ├── docker-init-current
│   │       ├── docker-proxy-current
│   │       └── docker-runc-current
│   └── share
│       ├── bash-completion
│       │   └── completions
│       │       └── docker
│       ├── doc
│       │   └── docker-1.13.1
│       │       ├── AUTHORS
│       │       ├── CHANGELOG.md
│       │       ├── CONTRIBUTING.md
│       │       ├── MAINTAINERS
│       │       ├── NOTICE
│       │       ├── README.md
│       │       └── README-vim-syntax.md
│       ├── fish
│       │   └── vendor_completions.d
│       │       └── docker.fish
│       ├── licenses
│       │   └── docker-1.13.1
│       │       ├── LICENSE
│       │       └── LICENSE-vim-syntax
│       ├── man
│       │   ├── man1
...
│       │   │   └── docker-wait.1.gz
│       │   ├── man5
│       │   │   ├── docker-config-json.5.gz
│       │   │   └── Dockerfile.5.gz
│       │   └── man8
│       │       └── dockerd.8.gz
│       ├── vim
│       │   └── vimfiles
│       │       ├── doc
│       │       │   └── dockerfile.txt
│       │       ├── ftdetect
│       │       │   └── dockerfile.vim
│       │       └── syntax
│       │           └── dockerfile.vim
│       └── zsh
│           └── site-functions
│               └── _docker
└── var
    └── lib
        └── docker

39 directories, 87 files

可以看到,我们安装rpm包时,它会把包中的内容安装这个结构拷贝到系统,所以安装的路径都是安排好的。

23.1 rpm查询

如果需要查询已经安装过的软件包的信息,rpm第一个选项需要使用-q,表示查询的意思,查询所有安装使用rpm -qa

查询已安装的某个软件版本,如下:

[root@node-138 docker]# rpm -qa  vsftpd
vsftpd-3.0.2-29.el7_9.x86_64
#或
[root@node-138 docker]# rpm -qa|grep vsftpd
vsftpd-3.0.2-29.el7_9.x86_64

查询安装某个软件之后所生成的文件rpm -ql 包名,如下

[root@node-138 docker]# rpm -ql vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
/etc/vsftpd/vsftpd_conf_migrate.sh
/usr/lib/systemd/system-generators/vsftpd-generator
/usr/lib/systemd/system/vsftpd.service
/usr/lib/systemd/system/vsftpd.target
/usr/lib/systemd/system/vsftpd@.service
/usr/sbin/vsftpd
...

这样就可以看到软件安装位置。

查询软件包生成的配置文件rpm -qc 包名,如下:

[root@node-138 docker]# rpm -qc vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf

查询包的信息用rpm -qi 包名,如下:

[root@node-138 docker]# rpm -qi vsftpd
Name        : vsftpd
Version     : 3.0.2
Release     : 29.el7_9
Architecture: x86_64
Install Date: Thu 17 Aug 2023 09:10:25 AM CST
Group       : System Environment/Daemons
Size        : 361349
License     : GPLv2 with exceptions
Signature   : RSA/SHA256, Fri 11 Jun 2021 11:06:15 PM CST, Key ID 24c6a8a7f4a80eb5
Source RPM  : vsftpd-3.0.2-29.el7_9.src.rpm
Build Date  : Thu 10 Jun 2021 12:15:50 AM CST
Build Host  : x86-02.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Vendor      : CentOS
URL         : https://security.appspot.com/vsftpd.html
Summary     : Very Secure Ftp Daemon
Description :
vsftpd is a Very Secure FTP daemon. It was written completely from
scratch.

查询某个文件由哪个软件包生成的用rpm -qf /path/file,如下

[root@node-138 docker]# rpm -qf /usr/sbin/vsftpd
vsftpd-3.0.2-29.el7_9.x86_64
[root@node-138 docker]# rpm -qf /etc/shadow
setup-2.8.71-11.el7.noarch

可以看到shadow使用setup这个包生成的

以上是对已安装的软件包进行查询,如果要查询未安装的软件包,则需要加上-p,如下:

[root@node-138 docker]# rpm -qcp docker-1.13.1-205.git7d71120.el7.centos.x86_64.rpm
/etc/docker/daemon.json
/etc/docker/seccomp.json
/etc/sysconfig/docker-network
/etc/sysconfig/docker-storage

23.2 rpm卸载

卸载软件包用rpm -e 软件名,如下

[root@node-138 docker]# rpm -e vsftpd
warning: /etc/pam.d/vsftpd saved as /etc/pam.d/vsftpd.rpmsave
[root@node-138 docker]# rpm -qa vsftpd

强制安装,场景:如果提示软件已经安装过了,无法再次安装,或者某个配置文件被误删,此时可以加上--force选项强制安装

rpm -ivh docker-1.13.1-205.git7d71120.el7.centos.x86_64.rpm --force

此时会重新生成被误删的文件,但其他文件即使做了修改也不会被覆盖替换

23.3 软件包升级

所谓升级或更新,即卸载旧版本软件,然后安装新版本软件包。如果安装路径不同,则可以共存,如果相同则会冲突,此时可以使用rpm -Uvh 软件包进行更新,如:

rpm -Uvh docker-1.13.1-205.git7d71120.el7.centos.x86_64.rpm 

对于内核来说,不同的版本安装路径是不一样的,所以可同时安装多个版本而不会产生冲突。所以更新内核建议使用rpm -ivh而不是rpm -Uvh。因为rpm -Uvh会卸载旧版本内核,如果新版本内核有问题则无法进入系统。

23.4 rpm验证

当我们安装一个软件包之后会产生许多文件,想要判断这些文件是否被修改过,可以使用rpm -V命令,如

[root@node-138 docker]# rpm -V docker
S.5....T.  c /etc/sysconfig/docker-storage
[root@node-138 docker]# rpm -V openssh
[root@node-138 docker]# rpm -qc openssh
/etc/ssh/moduli

可以看到/etc/sysconfig/docker-storage被修改过

  • S 指size大小
  • 5 指MD5值
  • T 指时间
  • c 指此文件是docker的配置文件

可以看到/etc/sysconfig/docker-storage被修改过,我们再修改openssh的配置文件,例如

[root@node-138 docker]# touch /etc/ssh/moduli
[root@node-138 docker]# rpm -V openssh
.......T.  c /etc/ssh/moduli

可以看到/etc/ssh/moduli的时间发生了变化

红帽发行的每一个数据包都对他做了数字签名,以证明该包是红帽官方的,需要再本机用红帽密钥来验证。首先检查本机是否安装了红帽的密钥,命令如下:

[root@node-138 docker]# rpm -qa |grep pubkey
gpg-pubkey-dc6315a3-6091b7b3
gpg-pubkey-621e9f35-58adea78
gpg-pubkey-3e1ba8d5-558ab6a8
gpg-pubkey-352c64e5-52ae6884
gpg-pubkey-b6792c39-53c4fbdd
gpg-pubkey-f4a80eb5-53a7ff4b
gpg-pubkey-a621e701-63bdbc3d

如果没有安装,则需要手动导入,如:

[root@server opt]# rpm -qa |grep pubkey
[root@server opt]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[root@server opt]# rpm -qa |grep pubkey
gpg-pubkey-fd431d51-4ae0493b
gpg-pubkey-5a6340b3-6229229e

验证是否为红帽发布的包,即是否是红帽的数字签名,如下:

[root@server opt]# rpm -K dnf-4.14.0-2.fc38.noarch.rpm
dnf-4.14.0-2.fc38.noarch.rpm: digests SIGNATURES NOT OK

第 24 章 用yum/dnf管理软件包

使用rpm安装软件包时经常会遇到一个问题就是 包依赖,所谓的包依赖就是在安装A时必须把B和C安装上去,如果用rpm一个个安装是非常困难的,这里就可以使用yum或dnf来解决。yum其实是软连接到dnf命令上的,所以输入dnf或yum都可以。

[root@server opt]# ll /usr/bin/yum
lrwxrwxrwx. 1 root root 5 Jan 19  2023 /usr/bin/yum -> dnf-3

REHL8/Centos8以前版本,yum是单独的命令

[root@node-138 docker]# uname -r
3.10.0-1160.92.1.el7.x86_64
[root@node-138 docker]# ll /usr/bin/yum
-rwxr-xr-x. 1 root root 801 Oct  2  2020 /usr/bin/yum

24.1 yum架构介绍

在这里插入图片描述
在yum服务器上的某个目录中存储了大量的软件包,然后通过ftp或http把这些目录进行共享,使得客户端可以通过ftp或http能够访问到这些目录。

如果按照软A,而A依赖B、C、X,而指定的yum服务器只有B、C,则需要额外指定X的源,否则会按照失败

24.2 用光盘搭建yum源

假设光盘中已经包含了最常用的软件包,就需要把关盘的内容作为源,使用vsftpd将光盘内容共享。

修改vsftp的配置文件/etc/vsftpd/vsftpd.conf中的annoymous_enable选项,如下

annoymous_enable=YES
...
pasv_min_port=10010
pasv_max_port=10020

vsftp的被动模式端口区间

启动vsftpd,并设置防火墙

firewall-cmd --add-port=20-21/tcp --permanent
firewall-cmd --add-port=10010-10020/tcp --permanent
firewall-cmd --reload

设置SELinux相关的布尔值,命令如下

setsebool -P ftpd_full_access 1

创建挂载目录

mkdir /var/ftp/dvd
mount /dev/cdrom /var/ftp/dvd

可修改/etc/fstab进行持久化和自动挂载

此时客户端不能直接把此目录作为源使用,因为服务器需要配置每个包和其他包之间的依赖关系,系统会把某个目录中的rpm包的元数据信息放在repodata目录中。但是在/var/ftp/dvd中并没有repodata目录,一般dvd光盘中都会有AppStreamBaseOS目录,其内包含了repodata各自的rpm信息。

所以当前服务器的源,分别是/var/ftp/dvd/AppStream/var/ftp/dvd/BaseOS,客户端可以通过ftp://192.168.20.101/dvd/AppStreamftp://192.168.20.101/dvd/BaseOS进行访问

24.3 创建私有仓库

我们把光盘源挂载到/mnt目录上,并设置自动挂载,这样访问访问/mnt就是访问光盘了,创建/etc/yum.repos.d/aa.repo,内容如下:

cat /etc/yum.repos.d/aa.repo
[aa]
name=aa
baseurl=file:///mnt/AppStream
enabled=1
gpgcheck=0

这里的file:///包含3个/,其中前两个类似于http://这样的通用写法,而第三个/表示绝对路径

可以通过createrepo工具生成repodata,例如

createrepo -v /var/ftp/myrepo/

就会在myrepo目录中生成repodata,里面包含了myrepo中所有的rpm包的信息,那么/var/ftp/myrepo也可作为一个源使用

24.4 yum客户端配置

客户端要安装软件包必须指定使用哪些源,指定源的方法是在目录/etc/yum.repos.d/创建后缀为repo的文件[必须为repo为后缀],本地配置格式如下:

[名称] --- 用于标注不同的源
name=  --- 注释信息
baseurl= ---指定源的URL地址
enabled= --用于指定是否启用这个源,值为0或1 enabled也可写为enable
					0---不使用此源
					1---使用
gpgcheck= --用于指定安装的软件是否进行数字签名验证,值为0或1
					0---不验证
					1---验证
gpgkey=/path/ 如果上面设置gpgcheck=1,则需要使用此选项的公钥

例如:

[centos-kernel]
name=CentOS LTS Kernels for $basearch
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=kernel&infra=$infra
#baseurl=http://mirror.centos.org/altarch/7/kernel/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

24.5 yum基本使用

查询当前使用的源,使用yum repolist

[root@server opt]# yum repolist
Updating Subscription Management repositories.
...
repo id                                          repo name
AppStream                                        CentOS-8.5.2111 - AppStream - mirrors.aliyun.com
BaseOS                                           BaseOS
aa                                               aa
base                                             CentOS-8.5.2111 - Base - mirrors.aliyun.com
extras                                           CentOS-8.5.2111 - Extras - mirrors.aliyun.com

当源内容发生变化,使用yum clean all清空缓存

yum clean all

重建缓存,使用yum makecache

yum makecache
24.5.1 查询

查询yum源是否存在某个包,可以使用yum search 或 yum list,例如

[root@node-138 docker]# yum search lrzsz
...
========================================================== N/S matched: lrzsz ==========================================================
lrzsz-debuginfo.x86_64 : Debug information for package lrzsz
lrzsz.x86_64 : The lrz and lsz modem communications programs

  Name and summary matches only, use "search all" for everything.
[root@node-138 docker]# yum list lrzsz
...
Available Packages
lrzsz.x86_64                                                     0.12.20-36.el7                                                     base

yum search是通过包名查找是否包含lrzsz,如果输入yum search lrzs也可以找到,也就是后面可以是不完整的包名,但yum list不可以,必须是完整的包名,否则查询不到

[root@node-138 docker]# yum list lrzs
...
Error: No matching Packages to list

yum search无法判断包是否已安装,但是通过yum list则可以,如下:

[root@node-138 docker]# yum list lrzsz
Loaded plugins: auto-update-debuginfo, fastestmirror, product-id, search-disabled-repos
Loading mirror speeds from cached hostfile
 * base: mirrors.jlu.edu.cn
 * epel: mirrors.bfsu.edu.cn
 * epel-debuginfo: mirrors.bfsu.edu.cn
 * extras: mirrors.jlu.edu.cn
 * updates: mirrors.bfsu.edu.cn
Installed Packages
lrzsz.x86_64                                                    0.12.20-36.el7                                                     @base

当我们安装完该软件后,再使用yum list查询的时候,提示信息从Available Packages变成了Installed Packages

24.5.2 安装与卸载

安装软件使用yum install [-y] 包名-y表示在安装过程中确定信息yes

卸载软件包用yum remove [-y] 包名

更新软件包,使用yum update [-y] 包名

yum install -y lrzsz
yum update -y lrzsz
yum remove -y lrzsz
24.5.3 下载

使用yum安装软件时,可以只下载包到本地缓存而不安装,格式

[root@node-138 docker]# yum install -y httpd --downloadonly --downloaddir ./
...
Total                                                                                                   5.7 MB/s | 2.7 MB  00:00:00
exiting because "Download Only" specified
[root@node-138 docker]# ll
...
-rw-r--r-- 1 root root  2849200 May 30 23:15 httpd-2.4.6-99.el7.centos.1.x86_64.rpm

该命令会把httpd及其依赖包全部下载

24.5.4 查询缺失命令

命令不同于包名,当我们执行某个命令却发现没有时,可以通过yum whatprovides */conmand进行查询,如

yum whatprovides */smbclient
samba-client-4.14.5-2.el8.x86_64 : Samba client programs
Repo        : base
Matched from:
Filename    : /usr/bin/smbclient

这里*/是路径通配符,即不管smbclient在哪个目录

24.6 组的使用

前面安装软件都是一个个安装的,假设现在想在服务器上实现某个“功能”,这个功能需要很多个包,但不清楚需要安装哪些包,该怎么办?
可以利用yum中的group功能,例如:

[root@node-138 docker]# yum grouplist
Available Environment Groups:
   Minimal Install
   Compute Node
   Infrastructure Server
   File and Print Server
   Cinnamon Desktop
   MATE Desktop
   Basic Web Server
   Virtualization Host
   Server with GUI
   GNOME Desktop
   KDE Plasma Workspaces
   Development and Creative Workstation
Available Groups:
   Cinnamon
   Compatibility Libraries
   Console Internet Tools
   Development Tools
   Educational Software
   Electronic Lab
   Fedora Packager
   General Purpose Desktop
   Graphical Administration Tools
   Haskell
   LXQt Desktop
   Legacy UNIX Compatibility
   MATE
   Milkymist
   Scientific Support
   Security Tools
   Smart Card Support
   System Administration Tools
   System Management
   TurboGears application framework
   Xfce
Done

这里显示的可用组是系统没有安装或者组中的包没有安装完全,已安装组说明这个组已经安装完整了。

如果要查询某个组的信息,可以使用yum groupinfo 组名,例如:

[root@node-138 docker]# yum groupinfo "Minimal Install"
Loaded plugins: auto-update-debuginfo, fastestmirror, product-id, search-disabled-repos
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
 * base: mirrors.jlu.edu.cn
 * epel: mirrors.tuna.tsinghua.edu.cn
 * epel-debuginfo: mirrors.tuna.tsinghua.edu.cn
 * extras: mirrors.aliyun.com
 * updates: mirrors.huaweicloud.com

Environment Group: Minimal Install
 Environment-Id: minimal
 Description: Basic functionality.
 Mandatory Groups:
   +core
 Optional Groups:
   +debugging

可以使用yum groupinstall 组名安装某个组,例如:

yum groupinstall "Minimal Install" -y

通过yum groupremove 组名卸载某个组

yum groupremove "Minimal Install"

24.7 使用第三方yum源

添加第三方的yum源,对于CentOS或者REHL来说,最常用的源就是epel了,如下

[root@node-138 yum.repos.d]# yum list ansible
Loaded plugins: auto-update-debuginfo, fastestmirror, product-id, search-disabled-repos
Loading mirror speeds from cached hostfile
 * base: mirrors.jlu.edu.cn
 * extras: mirrors.aliyun.com
 * updates: mirrors.huaweicloud.com
Error: No matching Packages to list
[root@node-138 yum.repos.d]# yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm
[root@node-138 yum.repos.d]# sed -i 's|^#baseurl=http://download.example/pub|baseurl=https://mirrors.aliyun.com|' /etc/yum.repos.d/epel.repo
[root@node-138 yum.repos.d]# yum list ansible
Loaded plugins: auto-update-debuginfo, fastestmirror, product-id, search-disabled-repos
...
Available Packages
ansible.noarch                                                     2.9.27-1.el7                                                     epel

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

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

相关文章

ETL数据转换工具类型与适用场景

ETL数据转换工具在企业数据管理中扮演着重要的角色&#xff0c;能够帮助企业从多个数据源中提取、转换和加载数据&#xff0c;实现数据整合和分析。以下是针对Kettle、DataX和ETLCloud这几个工具的详细介绍及其适用场景。 Kettle&#xff08;Pentaho Data Integration&#xf…

提高生存能力的7个关键技巧!

作为一款备受热议和玩家喜爱的多人在线射击游戏&#xff0c;《绝地求生》中生存能力的提高是取得胜利的关键。在这篇实用干货分享中&#xff0c;我们将详细说明7个关键技巧&#xff0c;帮助你在游戏中提高生存能力&#xff0c;获得更多胜利。 1.选择降落点&#xff1a;选择适合…

【Azure 架构师学习笔记】-Azure Storage Account(6)- File Layer

本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Storage Account】系列。 接上文 【Azure 架构师学习笔记】-Azure Storage Account&#xff08;5&#xff09;- Data Lake layers 前言 上一文介绍了存储帐户的概述&#xff0c;还有container的一些配置&#xff0c;在…

【C++】深拷贝与浅拷贝

1、深拷贝与浅拷贝 当我们对复杂类型(结构体或者类)的对象进行初始化时&#xff0c;如果将同类型的对象A赋值给同类型的对象B&#xff0c;此时就涉及深拷贝和浅拷贝的问题。 浅拷贝&#xff1a;简单的赋值拷贝操作。把类/结构体的对象的属性原封不动的赋值给另一个同类型的对…

数据库进阶教学——索引

目录 一、索引概述 1、介绍 2、演示 3、优缺点 二、索引结构 1、B树 2、Hash 三、索引分类 四、索引语法 1、语法 2、示例 五、SQL性能分析 1、SQL执行频率 2、慢查询日志 3、profile详情 4、explain执行计划 六、索引使用 七、索引设计原则 一、索引概述 …

【android】install android NDK

目录 1 下载NDK 2 解压 3 android-ndk的配置 1 下载NDK 下载网址&#xff1a;NDK 下载 | Android NDK | Android Developers 如果没有所需要的版本&#xff0c;则点击页面下面 不受支持的 NDK 下载需要的版本。 2 解压 将压缩文件&#xff08;例如 android-ndk-r25c-…

Hoppscotch:开源 API 开发工具,快捷实用 | 开源日报 No.77

hoppscotch/hoppscotch Stars: 56.1k License: MIT Hoppscotch 是一个开源的 API 开发生态系统&#xff0c;主要功能包括发送请求和获取实时响应。该项目具有以下核心优势&#xff1a; 轻量级&#xff1a;采用简约的 UI 设计。快速&#xff1a;实时发送请求并获得响应。支持多…

【机器学习基础】多元线性回归(适合初学者的保姆级文章)

&#x1f680;个人主页&#xff1a;为梦而生~ 关注我一起学习吧&#xff01; &#x1f4a1;专栏&#xff1a;机器学习 欢迎订阅&#xff01;后面的内容会越来越有意思~ &#x1f4a1;往期推荐&#xff1a; 【机器学习基础】机器学习入门&#xff08;1&#xff09; 【机器学习基…

知虾数据分析软件:了解知虾数据分析软件提升Shopee店铺运营效果

在如今电商竞争激烈的市场中&#xff0c;了解市场趋势和产品数据是成功经营一家Shopee店铺的重要因素之一。而知虾——Shopee生意参谋作为一款功能强大的数据分析软件&#xff0c;可以帮助店主深入了解行业概况、产品潜力以及市场趋势&#xff0c;从而制定最优的运营策略。本文…

大型语言模型与知识图谱融合方法概述

背景意义 大型语言模型&#xff08;LLM&#xff09;已经很强了&#xff0c;但还可以更强。通过结合知识图谱&#xff0c;LLM 有望解决缺乏事实知识、幻觉和可解释性等诸多问题&#xff1b;而反过来 LLM 也能助益知识图谱&#xff0c;让其具备强大的文本和语言理解能力。而如果…

一加手机全球摄影展深圳开展 历年获奖作品齐登场

11 月 18 日至 12 月 3 日&#xff0c;一加手机将携手国际摄影奖&#xff08;International Photography Awards&#xff0c;以下简称IPA&#xff09;&#xff0c;在深圳市南山区海岸城购物中心举办一加手机全球摄影展&#xff08;OnePlus Global Photography Exhibition&#…

【Vue】内置指令真的很常用!

内置指令 v-text v-text用于将一个变量的值渲染为元素的文本内容 注意v-text只能接受字符串类型的值,对于对象类型,会调用toString()方法 与插值表达式区别就是它会替换标签中的值&#xff0c;只显示它绑定的&#xff08;还是插值语法用的多~&#xff09; 语法 <元素 …

荧光量子效率积分球检测薄膜需要注意什么

荧光量子效率积分球是一种特殊的积分球&#xff0c;它可以用于测量荧光材料在特定波长下的荧光量子效率。它由一个具有高朗伯特性的漫反射材料制成&#xff0c;具有高达99%的反射率和朗伯特性。荧光量子效率积分球的使用方法包括将样品放置在积分球的样品口中&#xff0c;调整激…

Postman的Cookie鉴权

近期在复习Postman的基础知识&#xff0c;在小破站上跟着百里老师系统复习了一遍&#xff0c;也做了一些笔记&#xff0c;希望可以给大家一点点启发。 一&#xff09;什么是Cookie 定义&#xff1a;存储在客户端的一小段文本信息&#xff0c;格式为键值对的形式. 二&#xff09…

Adobe Illustrator——原创设计的宝藏软件

今天&#xff0c;我们来谈谈一款在Adobe系列中曾经多次给大家都提到的原创性极强的设计理念丰富的矢量图形编辑软件——Adobe Illustrator。 Adobe Illustrator&#xff0c;其定位是一款与Photoshop相类似对矢量图形进行编辑的软件。 Adobe Illustrator&#xff0c;作为全球最著…

postman导入请求到jmeter进行简单压测,开发同学一学就会

背景# 这个事情也是最近做的&#xff0c;因为线上nginx被我换成了openresty&#xff0c;然后接入层服务也做了较大改动&#xff0c;虽然我们这个app&#xff08;内部办公类&#xff09;并发不算高&#xff0c;但好歹还是压测一下&#xff0c;上线时心里也稳一点。 于是用jmet…

js添加dom到指定div之后,并给添加的dom类名,然后设置其样式,以及el-popover层级z-index过高问题解决。

遇到一个需求,Vue项目做一个表格,要求表头与表格内容分开,如下效果所示,表头与表格有个高度间隔边距(箭头所示),因为默认我们的el-table的表头与内容是一起的: 思路:通过querySelector获取el-table__header-wrapper元素,通过createElement创建一个div,通过 newElem…

pg_bouncer在使用中的坑勿踩

目录 简介 环境信息 问题配置 问题配置 启动pgbouncer 链接逻辑图 测试存在问题 pgadmin4 Idea JAVA调用 ​编辑 dbeaver 建议&#xff1a; 简介 前面文章说过关于pg_bouncer的安装讲解&#xff0c;这里讲一下在使用中的坑&#xff0c;在进行配置的时候需要注意。 …

YOLOv7独家原创改进:最新原创WIoU_NMS改进点,改进有效可以直接当做自己的原创改进点来写,提升网络模型性能精度

💡该教程为属于《芒果书》📚系列,包含大量的原创首发改进方式, 所有文章都是全网首发原创改进内容🚀 💡本篇文章为YOLOv7独家原创改进:独家首发最新原创WIoU_NMS改进点,改进有效可以直接当做自己的原创改进点来写,提升网络模型性能精度。 💡对自己数据集改进有效…

Android Glide照片宫格RecyclerView,点击SharedElement共享元素动画查看大图,Kotlin(1)

Android Glide照片宫格RecyclerView&#xff0c;点击SharedElement共享元素动画查看大图&#xff0c;Kotlin&#xff08;1&#xff09; <uses-permission android:name"android.permission.READ_EXTERNAL_STORAGE" /><uses-permission android:name"an…