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

基础运维(一)YUM仓库

一  自定义YUM仓库

1  Yum仓库特点

作为yum源需要准备的内容

  • 大量的rpm 软件安装包文件
  • 针对这些软件包的 repodata/ 仓库档案

repodata/ 仓库档案数据

  • filelists.xml.gz    // 软件包的文件安装清单
  • primary.xml.gz   // 软件包的基本/主要信息
  • other.xml.gz       // 软件包的其他信息
  • repomd.xml       // 提供. xml.gz下载和校验信息

2  使用第三方RPM包建库

需要额外创建 repodata/档案,将搜集的.rpm 包文件集中到指定目录

[student@server1 ~]$ ls  /linux-soft/s1# 准备从互联网下载的软件包传递到虚拟机中
[student@server1 ~]$ scp /linux-soft/s1/tools.tar.gz   root@192.168.88.240:/root# 虚拟机A进行tar解包
[root@server ~]# tar  -xf    /root/tools.tar.gz   -C  
[root@server ~]# ls    /tools       
[root@server ~]# ls    /tools/other# 生成仓库数据文件
[root@server ~]# createrepo   /tools/other 
[root@server ~]# ls /tools/other/   
[root@server ~]# vim /etc/yum.repos.d/mydvd.repo 
……此处省略一万字
[myrpm]                       # 唯一标识    
baseurl=file:///tools/other   # 指定Yum仓库的路径
gpgcheck=0                                                           
[root@server ~]# yum   repoinfo# 测试软件安装         
[root@server ~]# yum  -y  install  sl       
[root@server ~]# yum  -y  install  cmatrix

3 自定义Yum仓库的更新:更新的顺序不能颠倒

  • 仓库数据文件的更新
  • Yum仓库缓存的更新
[root@server ~]# mv  /tools/other/sl-5.02-1.el7.x86_64.rpm   /root
[root@server ~]# ls  /tools/other/# 更新仓库数据文件
[root@server ~]# createrepo  --update  /tools/other # 更新缓存数据
[root@server ~]# yum  makecache   
[root@server ~]# yum   repoinfo

二  网络Yum仓库

1  FTP服务方式

虚拟机A:提供仓库内容(FTP服务)1.构建FTP服务                                                
[root@server ~]# yum  -y   install   vsftpd
[root@server ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES                         # 开启无需密码验证功能
[root@server ~]# systemctl  restart  vsftpd  # 重启服务
[root@server ~]# systemctl  enable   vsftpd  # 设置开机自启
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
2.通过FTP提供仓库内容
[root@server ~]# cp  -r   /tools/other    /var/ftp/rpms虚拟机B:进行访问仓库内容[root@pc2 ~]# vim  /etc/yum.repos.d/mydvd.repo
……此处省略一万字
[haha]
baseurl=ftp://192.168.88.240/rpms
gpgcheck=0
[root@pc2 ~]# yum  clean  all         # 清空Yum的缓存
[root@pc2 ~]# yum  repoinfo   
虚拟机A:提供仓库内容(FTP服务)[root@server ~]# mkdir    /var/ftp/dvd
[root@server ~]# mount   /dev/cdrom    /var/ftp/dvd
[root@server ~]# curl    ftp://192.168.88.240/dvd/
[root@server /]# vim   /etc/fstab     # 修改配置
/dev/cdrom   /var/ftp/dvd   iso9660   defaults  0  0
[root@server /]# umount    /var/ftp/dvd
[root@server /]# ls     /var/ftp/dvd
[root@server /]# mount    -a
mount: /dev/sr0 写保护,将以只读方式挂载
[root@server /]# ls    /var/ftp/dvd 
........
[root@server /]# vim   /etc/yum.repos.d/mydvd.repo
[aa]
baseurl=ftp://192.168.88.240/dvd/AppStream
gpgcheck=0
[bb]
baseurl=ftp://192.168.88.240/dvd/BaseOS
gpgcheck=0
[myrpm]
baseurl=ftp://192.168.88.240/rpms
gpgcheck=0
[root@server ~]# yum  clean  all    # 清空Yum的缓存
[root@server ~]# yum  repoinfo
虚拟机B:进行访问仓库内容[root@pc2 ~]# vim   /etc/yum.repos.d/mydvd.repo
[aa]
baseurl=ftp://192.168.88.240/dvd/AppStream
gpgcheck=0
[bb]
baseurl=ftp://192.168.88.240/dvd/BaseOS
gpgcheck=0
[myrpm]
baseurl=ftp://192.168.88.240/rpms
gpgcheck=0
[root@pc2 ~]# yum  clean  all       # 清空Yum的缓存
[root@pc2 ~]# yum  repoinfo  

2  Web服务方式

虚拟机A:提供仓库内容(Web服务)1.构建Web服务
[root@server ~]# yum  -y   install   httpd
[root@server ~]# systemctl  restart  httpd
[root@server ~]# systemctl  enable   httpd2.通过Web提供仓库内容
[root@server ~]# mkdir    /var/www/html/dvd
[root@server ~]# mount  /dev/cdrom   /var/www/html/dvd虚拟机B:进行访问仓库内容[root@pc2 ~]# vim /etc/yum.repos.d/mydvd.repo
[aa]
baseurl=http://192.168.88.240/dvd/AppStream
gpgcheck=0
[bb]
baseurl=http://192.168.88.240/dvd/BaseOS
gpgcheck=0
[root@pc2 ~]# yum   repoinfo虚拟Web主机:[root@server ~]# vim   /etc/httpd/conf.d/nsd01.conf
<VirtualHost  *:80>ServerName  www.qq.comDocumentRoot  /var/www/qq
</VirtualHost>
<VirtualHost  *:80>ServerName  www.baidu.comDocumentRoot  /var/www/baidu
</VirtualHost>
<Directory   "/var/www/qq">Options Indexes FollowSymLinks    #显示目录内容
</Directory>
[root@server ~]# mkdir /var/www/qq  /var/www/baidu
[root@server ~]# echo wo shi QQ >  /var/www/qq/index.html
[root@server ~]# echo wo shi baidu >  /var/www/baidu/index.html
[root@server ~]# systemctl restart httpd
[root@server ~]# mkdir  /var/www/qq/dvd
[root@server ~]# mount  /dev/cdrom   /var/www/qq/dvd

三  DNS服务器基础

1  DNS工作原理

DNS解析的作用

为什么需要DNS系统

www.baidu.com 与 119.75.217.56,哪个更好记?

互联网中的114查号台/导航员

DNS服务器的功能

  • 正向解析:根据注册的域名查找其对应的IP地址
  • 反向解析:根据IP地址查找对应的注册域名,不常用

DNS的分布式结构

常见的顶级/一级域名

  • 国家/地区域:.cn、.us、.kr、.hk、.tw、……
  • 组织域: .com、.net、.edu、.org、.gov、.mil、……

DNS域名管理

IANA,互联网数字分配机构

Internet Assigned Numbers Authority

整个域名系统的最高权威机构

CNNIC,中国互联网络信息中心

China Internet Network Information Center

主管国家顶级域 .cn

域名注册/购买服务商

阿里云,https://www.aliyun.com/

华为云,https://www.huaweicloud.com/

腾讯云,https://cloud.tencent.com/

2  BIND服务分析

BIND (Berkeley Internet Name Daemon

伯克利Internet 域名服务

官方站点:https://www.isc.org/

[root@server ~]# yum  -y  install   bind    bind-chroot
bind(主程序)               // 域名服务包
bind-chroot(提供牢笼政策)   // 提供虚拟根支持

BIND服务器端程序

主要执行程序:/usr/sbin/named

系统服务:named

默认端口:TCP/UDP 53

运行时的虚拟根环境:/var/named/chroot/

主配置文件:/etc/named.conf

地址库文件:/var/named/

named,conf 配置文件

全局配置部分

设置监听地址/端口、地址库存放位置等

options (listen-on port 53[192.168.88.1;   // 监听地址和端口directory"/var/named";            // 地址文件的默认位置allow-query {any;l};              // 允许任何客户机查询……//listen-on-v6 port 53 [ ::1; };//Include"/etc/named.rfc1912.zones";   //可载入其他配置清理元余配置,三种注释方法:
#     注释一整行或行内的部分文字
//    注释一整行或行内的部分文字
/* */ 可注释连续的多行文字

 区域配置部分

定义DNS区域、类型、地址文件路径等

关键词IN 表示Internet,可省略

zone "baidu.cn" IN {        // 定义正向区域type master;              // 区域类型为主DNSfile "baidu.cn.zone";     // 地址库文件
};

检查配置语法

格式:named-checkconf[配置文件]

[root@svr1~]# named-checkconf /etc/named.conf
etc/named.conf:3: expected quoted string near[root@svr1 ~]# vim etc/named.conf  // 如果有错,则修正错误
[root@svr1 ~]# named-checkconf /etc/named.conf  
[root@svr1~]#                      // 无错误,无输出

地址库文件

全局TTL配置项及SOA记录

$TTL (Time To Live,生存时间)

SOA (Start of Authority,授权信息开始)

分号“;”开始的部分表示注释

# 在当前文件内,本区域名可简写为 @
IN SOA 区域名,区域管理邮箱.(
……
)

NS,域名服务器 (Name Server) 记录

A,地址 (Address) 记录,仅用于正向解析区域

NS   server                    # 声明DNS服务器为server
server   A   192.168.88.240    # server解析结果为192.168.88.240
www      A   1.1.1.1
ftp      A   2.2.2.2

案列

虚拟机A:构建DNS服务器

1.安装软件包

2.修改主配置文件

[root@server ~]# cp -p /etc/named.conf  /root  # 备份数据
[root@server ~]# ls  -l    /root/named.conf
[root@server ~]# vim  /etc/named.conf          # 大致浏览内容
[root@server ~]# vim   /etc/named.conf
options  {                  directory     "/var/named";            # 定义地址库文件存放路径
};
zone "tedu.cn"  IN {                           # 定义负责的解析tedu.cn域名type  master;                          # 权威主DNS服务器file   "tedu.cn.zone";                 # 地址库文件名称
};

3.建立地址库文件

保证named用户对地址库文件有读取权限

如果没有以点作为结尾,那么默认补全本地库文件负责的域名

[root@server ~]# cd    /var/named/      
[root@server ~]# cp  -p  named.localhost  tedu.cn.zone   # 保持权限不变
[root@server ~]# ls   -l   tedu.cn.zone   
[root@server ~]# vim     tedu.cn.zone 
……此处省略一万字
NS   server                    # 声明DNS服务器为server
server   A   192.168.88.240    # server解析结果为192.168.88.240
www      A   1.1.1.1
ftp      A   2.2.2.2
[root@server named]# systemctl   restart    named

虚拟机B:测试DNS服务器

1.指定DNS服务器地址

[root@server ~]# echo nameserver  192.168.88.240  >  /etc/resolv.conf
[root@server ~]# cat  /etc/resolv.conf

2.命令测试域名解析

[root@server ~]# nslookup    www.tedu.cn  
[root@server ~]# host    ftp.tedu.cn  

/etc/hosts文件与/etc/resolv.conf文件

1./etc/hosts文件域名解析最高优先级
2./etc/resolv.conf文件指定DNS服务器地址

3  特殊解析

DNS的泛域名解析

虚拟机A:

[root@server /]# vim   /var/named/tedu.cn.zone
……此处省略一万字NS    server                       
server            A      192.168.88.240
www               A      1.1.1.1
ftp               A      2.2.2.2
*                 A      6.6.6.6
tedu.cn.          A      7.7.7.7
[root@server /]# systemctl   restart    named

虚拟机B测试:

[root@pc2 /]#  nslookup    wwwwww.tedu.cn
[root@pc2 /]#  nslookup     tedu.cn

•DNS有规律的泛域名解析

stu1.tedu.cn-------->192.168.1.1

stu2.tedu.cn-------->192.168.1.2

stu3.tedu.cn-------->192.168.1.3

stu4.tedu.cn-------->192.168.1.4

.........

stu50.tedu.cn-------->192.168.1.50

内置函数:$GENERATE 制造连续的数字

虚拟机A:

[root@server /]# vim   /var/named/tedu.cn.zone
……此处省略一万字NS    server                       
server           A      192.168.88.240
www              A      1.1.1.1
$GENERATE  1-50   stu$    A      192.168.1.$
[root@server /]# systemctl   restart    named

虚拟机B测试:

[root@pc2 /]#  nslookup    stu1.tedu.cn
[root@pc2 /]#  nslookup     stu23.tedu.cn

DNS的解析记录的别名

虚拟机A:

[root@server /]# vim    /var/named/tedu.cn.zone
……此处省略一万字NS     server
server    A      192.168.88.240
www          A      192.168.4.20
ftp       A      2.2.2.2
vip       CNAME    ftp      #vip解析结果与ftp解析结果一致
[root@server /]# systemctl   restart    named

虚拟机B:测试

[root@pc2 ~]# nslookup    vip.tedu.cn

DNS服务器资源解析记录的类型:

NS:DNS服务器声明记录

A:正向解析记录

CNAME:解析记录的别名

4  递归查询(递归解析)与迭代查询(迭代解析)

递归查询:客户端发送请求给首选DNS服务器,首选DNS服务器与其他的DNS服务器交流,最终将解析结果带回来过程

迭代查询:客户端发送请求给首选DNS服务器,首选DNS服务器告知下一个DNS服务器地址

四  邮件服务器

电子邮件服务器的基本功能

为用户提供电子邮箱存储空间(用户名@邮件域名)

处理用户发出的邮件 —— 传递给收件服务器

处理用户收到的邮件 —— 投递到邮箱

[root@server /]# yum -y  install  postfix
[root@server /]# rpm  -q  postfix  #提供邮件功能的软件
postfix-2.10.1-9.el7.x86_64
[root@server /]# systemctl status postfix 
[root@server /]# useradd   yg
[root@server /]# useradd   xln

mail 发信操作: mail -s '邮件标题' -r 发件人 收件人

[root@server /]# yum  -y   install  mailx #提供mail命令软件
[root@server /]# mail   -s  'test01'   -r   yg    xln
hahaxixiehehelele
.                #一行只有一个点表示提交   
EOT   

mail 收信操作: mail [-u 用户名]

[root@server /]# mail   -u    xln
>N  1  yg@server.tedu.cn    Fri Sep 18 17:24  18/510
&  1            #输入邮件编号
&  quit       #退出   

非交互式发邮件:

[root@server ~]# echo 123456  |  mail  -s  'test02'   -r   yg  xln
[root@server ~]# mail  -u  xln  

五 NTP时间服务器

作用:提供标准时间

Network Time Protocol(网络时间协议)

它用来同步网络中各个计算机的时间的协议

210.72.145.39 (国家授时中心服务器IP地址)

Stratum(分层设计)

Stratum层的总数限制在15以内(包括15)

虚拟机A:时间服务器

1.安装软件包chrony

[root@server /]# yum  -y  install   chrony
[root@server /]# rpm  -q  chrony

2.修改配置文件

[root@server /]# vim  /etc/chrony.conf      
#pool 2.pool.ntp.org iburst  # 与谁同步时间,iburst表示快速同步
allow   all                  # 开头的#去掉,修改为允许所有客户端
local  stratum  10           # 开头的#去掉,本机为第10层的时间服务器

3.重启时间服务

[root@server /]# systemctl    restart    chronyd

虚拟机B:客户端

1.安装软件包chrony

[root@pc2 /]# yum  -y  install   chrony

2.修改配置文件

[root@pc2 /]# vim   /etc/chrony.conf      
server  192.168.88.240   iburst   #与192.168.88.240同步时间

3.重启时间服务

[root@pc2 /]# systemctl   restart   chronyd

虚拟机B:

4.测试:  
[root@pc2 /]# date   -s   "2008-1-1"      
[root@pc2 /]# date
[root@pc2 /]# systemctl   restart   chronyd 
[root@pc2 /]# date
[root@pc2 /]# date

六  常见DNS工单要求

DNS服务器搭建要求:

实现DNS服务器,在192.168.88.240上构建

负责域名为sina.com,实现站点名www的解析

实现www.sina.com解析结果为192.188.16.17

虚拟机A      
1.安装软件包bind与bind-chroot
2.修改主配置文件
[root@server /]# vim         /etc/named.conf
........此处省略一万字
zone    "sina.com"    IN     {type    master;file    "sina.com.zone";
};
3.建立地址库文件
[root@server ~]# cd     /var/named/
[root@server ~]# cp  -p    named.localhost     sina.com.zone
[root@server ~]# vim    sina.com.zone
........此处省略一万字NS      server
server         A       192.168.88.240
www            A       192.188.16.17
[root@server /]# systemctl    restart    named

案例:搭建单区域DNS服务器

1 问题

本例要求要求为DNS区域tedu.cn搭建一台DNS服务器,以便用户能通过域名的方式访问网站。测试阶段主要提供以下正向记录:

  1. svr1.tedu.cn ---> 192.168.88.240
  2. pc2.tedu.cn ---> 192.168.88.2
  3. www.tedu.cn ---> 192.168.4.100

配置完成后在客户机上验证查询结果。

2 方案

快速构建DNS服务器的基本过程:

  1. 安装 bind、bind-chroot 包
  2. 建立主配置文件 /etc/named.conf
  3. 建立地址库文件 /var/named/.. ..
  4. 启动 named 服务

配置及使用DNS客户端的基本过程:

  1. 修改配置文件/etc/resolv.conf,添加nameserver=DNS服务器地址
  2. 使用host命令查询,提供目标域名作为参数

3 步骤

实现此案例需要按照如下步骤进行。

步骤一:配置DNS服务器svr1

1)安装 bind、bind-chroot 包[root@svr1 ~]# yum  -y  install  bind  bind-chroot
.. ..
2)建立主配置文件 /etc/named.conf[root@svr1 ~]# mv  /etc/named.conf  /etc/named.conf.origin          //备份默认配置
[root@svr1 ~]# vim  /etc/named.conf                             //建立新配置
options {directory  "/var/named";                          //地址库默认存放位置
};
zone  "tedu.cn" {                                  //定义正向DNS区域type  master;                                     //主区域file  "tedu.cn.zone";                             //自定义地址库文件名
};
3)建立地址库文件 /var/named/tedu.cn.zone[root@svr1 ~]# cd  /var/named/                              //进地址库目录
[root@svr1 named]# cp  -p  named.localhost  tedu.cn.zone      //参考范本建地址库文件
[root@svr1 named]# vim  tedu.cn.zone                          //修订地址库记录
$TTL 1D                                          //文件开头部分可保持不改
@   IN SOA  @ rname.invalid. (0   ; serial1D  ; refresh1H  ; retry1W  ; expire3H )    ; minimum
@       NS  svr1                          //本区域DNS服务器的FQDN
svr1    A   192.168.88.240                         //为NS主机提供A记录
pc2   A   192.168.88.2                         //其他正向地址记录.. ..
www  A   192.168.4.100
4)启动 named 服务,并设置开机自启[root@svr1 named]# systemctl  restart  named  
[root@svr1 named]# systemctl  enable  named
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.

步骤二:配置DNS客户机pc2并测试

1)修改配置文件/etc/resolv.conf,指定默认使用哪一台DNS服务器[root@pc2 ~]# vim  /etc/resolv.conf 
nameserver  192.168.88.1
.. ..
2)使用host命令查询,提供目标域名作为参数[root@pc2 ~]# host  svr1.tedu.cn
svr1.tedu.cn has address 192.168.88.240
[root@pc2 ~]# host  pc2.tedu.cn
pc2.tedu.cn has address 192.168.88.2
[root@pc2 ~]# host  www.tedu.cn
www.tedu.cn has address 192.168.4.100
使用host测试DNS查询结果时,如果不方便修改/etc/resolv.conf文件,也可以采用“host 目标域名 DNS服务器地址”形式临时指定使用哪一台DNS服务器。[root@pc2 ~]# host  pc2.tedu.cn  192.168.88.240
Using domain server:
Name: 192.168.88.1
Address: 192.168.88.1#53
Aliases: 
pc2.tedu.cn has address 192.168.88.2

案例:NTP时间同步

1 问题

本例要求配置一台NTP时间服务器,需要完成下列任务:

  1. 部署一台NTP时间服务器
  2. 设置时间服务器上层与0.centos.pool.ntp.org同步
  3. 设置本地服务器层级数量为10
  4. 允许192.168.88.0/24网络的主机同步时间
  5. 客户端验证时间是否同步

2 步骤

实现此案例需要按照如下步骤进行。

步骤一:虚拟机A构建NTP时间服务器

1)使用yum安装bind、bind-chroot软件包[root@svr1 ~]# yum -y install chrony
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
dvd                                               | 3.6 kB     00:00     
软件包 chrony-3.2-2.el7.x86_64 已安装并且是最新版本
无须任何处理
[root@svr1 ~]# rpm -q chrony
chrony-3.2-2.el7.x86_64
[root@svr1 ~]#
2)修改配置文件/etc/chrony.conf[root@proxy ~]# vim  /etc/chrony.conf
server 0.centos.pool.ntp.org iburst         //server用户客户端指向上层NTP服务器
allow 192.168.88.0/24        //允许那个IP或网络访问NTP
local stratum 10            //设置NTP服务器的层数量
.. ..
3)重启chronyd服务[root@mail ~]# systemctl  restart chronyd

步骤二:虚拟机B构建NTP时间同步的客户端

1)修改/etc/chrony.conf文件[root@pc2 ~]# vim /etc/chrony.conf
server 192.168.88.240 iburst
2)重启chronyd服务[root@pc2 ~]# systemctl  restart chronyd
3)修改时间进行测试[root@pc2 ~]# date -s "2008-9-1"
2008年 09月 01日 星期一 00:00:00 CST
[root@pc2 ~]# date
2008年 09月 01日 星期一 00:00:01 CST
[root@pc2 ~]# systemctl restart chronyd
[root@pc2 ~]# date
2008年 09月 01日 星期一 00:01:42 CST
[root@pc2 ~]# date
2020年 04月 13日 星期一 18:44:56 CST

相关文章:

基础运维(一)YUM仓库

一 自定义YUM仓库 1 Yum仓库特点 作为yum源需要准备的内容 大量的rpm 软件安装包文件针对这些软件包的 repodata/ 仓库档案 repodata/ 仓库档案数据 filelists.xml.gz // 软件包的文件安装清单primary.xml.gz // 软件包的基本/主要信息other.xml.gz // 软件包…...

递归算法讲解,深度理解递归

首先最重要的就是要说明递归思想的作用&#xff0c;在后面学习的高级数据接口&#xff0c;树和图中&#xff0c;都需要用到递归&#xff0c;即深度优先搜索&#xff0c;如果递归掌握的不好&#xff0c;后面的数据结构将举步为艰。 加油 首先看下如何下面两个方法有什么区别&a…...

网络通信(套接字通信)(C/C++)

1.网络编程必知概念 1.广域网和局域网 广域网:又称外网、公网。是连接不同地区局域网或城域网进行计算机通信的远程公共网络。 局域网:在一定的通信范围内,有很个多计算机组成的私有网络就叫局域网。(这些计算机相互之间是可以通信的,但是不能直接访问外网(可以通过网线…...

anaconda navigator启动时一直卡在 loading applications 页面

anaconda navigator启动时一直卡在 loading applications 页面 方法1 在安装目录找到D:\anaconda\Lib\site-packages\anaconda_navigator\api 然后打开conda_api.py&#xff0c; 在1358行找到data yaml.load(f)&#xff0c;将其改为data yaml.safeload(f) 猜测为保证代码…...

力扣刷题-链表-删除链表的倒数第N个节点

19.删除链表的倒数第N个节点 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5] 示例 2&#xff1a;输入&#xff1a;head [1], n 1 输出&…...

Blender DreamUV插件使用简明教程

DreamUV 是一个可让你在Blender的 3D 视口中操纵 UV的工具集合。 该工具集设计用于可重复使用的纹理&#xff0c;例如平铺纹理、装饰表和纹理图集。 其目的是让你无需退出 3D 视图即可对几何体进行纹理处理&#xff0c;从而节省时间并提高灵活性。 1、安装DreamUV 首先下载为…...

AI在线工具分享

1、ChatGPT ChatGPT是一种由OpenAI训练的大型语言模型。它的原理是基于Transformer架构&#xff0c;通过预训练大量文本数据来学习如何生成人类可读的文本&#xff0c;然后通过接受输入并生成输出来实现对话。 ChatGPT的用途非常广泛&#xff0c;可以用于自然语言处理&#xf…...

Matlab批量处理测试数据的方法:以VCO的调谐测试曲线处理为例

我们都知道得到的VCO调谐曲线是一根一根扫出来的&#xff0c;如果要手动对数据进行处理很麻烦。 &#xff08;当然最好是搭建一个自动化测试平台&#xff0c;一边测试一边把数据抓取了&#xff0c;这个以后可以搞一下再更新&#xff09; 目前还是手动测量的情况下&#xff0c;…...

VScode断点调试vue

VScode断点调试vue 1、修改launch.js文件&#xff08;没有这个文件就新建&#xff09;。 {// Use IntelliSense to learn about possible attributes.// Hover to view descriptions of existing attributes.// For more information, visit: https://go.microsoft.com/fwlin…...

20吨屠宰鸡鸭鹅一体化污水处理设备加工厂家

20吨屠宰鸡鸭鹅一体化污水处理设备加工厂家 溶气气浮机主要构造说明 气浮系统气浮系统集进水、絮凝、分离、集水、出水于一体&#xff0c;与传统气浮设备类似&#xff0c;设有一个稳流室、溶气释放室&#xff0c;使处理性能更稳定&#xff0c;效果更优越。 稳定室&#xff1a;通…...

android被杀以后fragments缓存重建问题和测试方法

这个问题&#xff0c;其实不是太好复现。因为在android的缓存Fragment机制是写在androidx的库中。 主要的原因是android Framework机制&#xff1a; framework at yourpackage.onSaveInstanceState(XXXActivity.kt:118) at android.app.Activity.performSaveInstanceState(A…...

Visual Studio 2017 安装

C自学精简实践教程 目录(必读) 这篇文章会保证你第一次安装VS2017就成功运行Hello World! 下载Visual Studio Installer Gitee 下载 VS2017/vs2017_Community.exe CalmReason/VisualStudio - 码云 - 开源中国 (gitee.com) 百度云下载 链接&#xff1a;https://pan.baidu…...

day5|242.有效的字母异位词、349. 两个数组的交集

242.有效的字母异位词 题目链接&#xff1a;https://leetcode.cn/problems/valid-anagram/ 文章链接&#xff1a;https://programmercarl.com/0242.%E6%9C%89%E6%95%88%E7%9A%84%E5%AD%97%E6%AF%8D%E5%BC%82%E4%BD%8D%E8%AF%8D.html 视频链接&#xff1a;https://www.bilibili.…...

【Python基础】常用模块学习:sys|os|pytest

&#x1f4e2;&#xff1a;如果你也对机器人、人工智能感兴趣&#xff0c;看来我们志同道合✨ &#x1f4e2;&#xff1a;不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 &#x1f4e2;&#xff1a;文章若有幸对你有帮助&#xff0c;可点赞 &#x1f44d;…...

【煤矿虚拟仿真体验】VR采煤机技能培训有效提高训练效果

在我们的社会中&#xff0c;能源是至关重要的。它是推动我们日常生活和工作的主要动力。然而&#xff0c;我们在获取这种能源的过程中&#xff0c;也带来了许多环境问题。煤矿开采是其中的一个重要部分&#xff0c;因此我们需要寻找更环保、更安全的方式来进行煤矿开采。VR&…...

渲染路径RenderingPath

文章目录 前言一、什么是渲染路径二、渲染路径有哪些1、前向渲染路径2、延迟渲染路径3、顶点照明渲染路径(已过时)4、旧的渲染路径&#xff08;已过时&#xff09; 前言 渲染路径RenderingPath 一、什么是渲染路径 为进行光照计算而设计的渲染方式 二、渲染路径有哪些 1、前向…...

【Java】泛型 之 extends通配符

我们前面已经讲到了泛型的继承关系&#xff1a;Pair<Integer>不是Pair<Number>的子类。 假设我们定义了Pair<T>&#xff1a; public class Pair<T> { ... }然后&#xff0c;我们又针对Pair<Number>类型写了一个静态方法&#xff0c;它接收的参…...

光谱-空间特征分割提取:多光谱图像压缩

Spectral–Spatial Feature Partitioned Extraction Based on CNN for Multispectral Image Compression &#xff08;基于CNN的光谱-空间特征分割提取多光谱图像压缩&#xff09; 近年来&#xff0c;多光谱成像技术的迅速发展引起了各领域的高度重视&#xff0c;这就不可避免…...

绝缘子主要尺寸

声明 本文是学习GB-T 1000-2016 高压线路针式瓷绝缘子尺寸与特性. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本标准规定了高压线路针式瓷绝缘子的结构型式、尺寸、机械特性和电气特性。 本标准适用于标称电压为10 kV 及以下、频率不高于…...

什么是哈希表?如何使用哈希表进行数据存储和查找?

什么是哈希表&#xff1f; 哈希表&#xff08;Hash Table&#xff09;&#xff0c;也被称为散列表&#xff0c;是一种用于存储键值对数据的数据结构。它是一种非常高效的数据结构&#xff0c;可以实现快速的数据插入、查找和删除操作。哈希表的核心思想是通过将键&#xff08;…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议&#xff08;EPSFD 2025&#xff09;将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会&#xff0c;EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

在rocky linux 9.5上在线安装 docker

前面是指南&#xff0c;后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

大数据零基础学习day1之环境准备和大数据初步理解

学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 &#xff08;1&#xff09;设置网关 打开VMware虚拟机&#xff0c;点击编辑…...

管理学院权限管理系统开发总结

文章目录 &#x1f393; 管理学院权限管理系统开发总结 - 现代化Web应用实践之路&#x1f4dd; 项目概述&#x1f3d7;️ 技术架构设计后端技术栈前端技术栈 &#x1f4a1; 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 &#x1f5c4;️ 数据库设…...

《C++ 模板》

目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板&#xff0c;就像一个模具&#xff0c;里面可以将不同类型的材料做成一个形状&#xff0c;其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式&#xff1a;templa…...

IP如何挑?2025年海外专线IP如何购买?

你花了时间和预算买了IP&#xff0c;结果IP质量不佳&#xff0c;项目效率低下不说&#xff0c;还可能带来莫名的网络问题&#xff0c;是不是太闹心了&#xff1f;尤其是在面对海外专线IP时&#xff0c;到底怎么才能买到适合自己的呢&#xff1f;所以&#xff0c;挑IP绝对是个技…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...

Golang——6、指针和结构体

指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...

Linux部署私有文件管理系统MinIO

最近需要用到一个文件管理服务&#xff0c;但是又不想花钱&#xff0c;所以就想着自己搭建一个&#xff0c;刚好我们用的一个开源框架已经集成了MinIO&#xff0c;所以就选了这个 我这边对文件服务性能要求不是太高&#xff0c;单机版就可以 安装非常简单&#xff0c;几个命令就…...

小智AI+MCP

什么是小智AI和MCP 如果还不清楚的先看往期文章 手搓小智AI聊天机器人 MCP 深度解析&#xff1a;AI 的USB接口 如何使用小智MCP 1.刷支持mcp的小智固件 2.下载官方MCP的示例代码 Github&#xff1a;https://github.com/78/mcp-calculator 安这个步骤执行 其中MCP_ENDPOI…...