一、操作linux发型版本的包管理器

此小结摘抄:
https://www.cnblogs.com/linuxprobe/p/5883783.html
 
  在 linux 中,包管理器非常重要,了解如何使用多种包管理器可以让你像一个高手一样活得很舒适,从在仓库下载软件、安装软件,到更新软件、处理依赖和删除软件是非常重要的,这也是Linux 系统管理的一个重要部分。

  • debian派系

  dpkg 是 Debian Linux 家族的基础包管理系统,它用于安装、删除、存储和提供deb包的信息。
这是一个低层面的工具,并且有多个前端工具可以帮助用户从远程的仓库获取包,或处理复杂的包关系的工具,包括如下:

(1) apt(高级打包工具)
  这个是一个 dpkg 包管理系统的前端工具,它是一个非常受欢迎的、自由而强大的,有用的命令行包管理器系统。debian 及其衍生版,例如 Ubuntu 和 Linux Mint 的用户应该非常熟悉这个包管理工具。
(2) aptitude 包管理器
  这个也是 Debian Linux 家族一个非常出名的命令行前端包管理工具,它工作方式类似 APT ,它们之间有很多可以比较的地方,不过,你应该两个都试试才知道哪个工作的更好。它最初为 Debian 及其衍生版设计的,但是现在它的功能延伸到 RHEL 家族。
(3) synaptic 包管理器
  synaptic是一个基于GTK+的APT的可视化包管理器,对于一些不想使用命令行的用户,它非常好用。

  • 红帽派系

rpm 包管理器
  这个是红帽创建的 Linux 基本标准(LSB)打包格式和基础包管理系统。基于这个底层系统,有多个前端包管理工具可供你使用,但我们应该只看那些最好的,那就是:

(1) yum
  这个是一个开源、流行的命令行包管理器,它是用户使用 RPM 的界面(之一)。你可以把它和 Debian Linux 系统中的 APT 进行对比,它和 APT 拥有相同的功能。

(2) dnf
  这个也是一个用于基于 RPM 的发行版的包管理器,Fedora 18 引入了它,它是下一代 YUM。如果你用 Fedora 22 及更新版本,你肯定知道它是默认的包管理器。这里有一些链接,将为你提供更多关于 DNF 的信息和如何使用它。

  • 其他派系

(1) Pacman包管理器(Arch Linux)
  这个是一个流行的、强大而易用的包管理器,它用于 Arch Linux 和其他的一些小众发行版。它提供了一些其他包管理器提供的基本功能,包括安装、自动解决依赖关系、升级、卸载和降级软件。但是最大的用处是,它为 Arch 用户创建了一个简单易用的包管理方式。

(2) Zypper 包管理器(openSUSE)
  这个是一个使用 libzypp 库制作的用于 OpenSUSE 系统上的命令行包管理器,它的常用功能包括访问仓库、安装包、解决依赖问题和其他功能。更重要的是,它也可以支持存储库扩展功能,如模式、补丁和产品。

(3) Portage 包管理器(Gentoo)
  这个是 Gentoo 的包管理器,当下不怎么流行的一个发行版,但是这并不阻止它成为 Linux 下最好的软件包管理器之一。Portage 项目的主要目标是创建一个简单、无故障的包管理系统,包含向后兼容、自动化等功能。

二、rpm包管理器

2.1、程序概述以及rpm概述

API:Application Program Interface,应用程序接口;
ABI:Application Binary Interface,应用二进制接口;至于二者的区别,之前也有讲过,这里拿一张别人画好的图:

https://blog.csdn.net/FatalError1/article/details/78362829
linux下包管理器

  • C/C++程序格式
    源代码:文本格式的程序代码;
    编译开发环境:编译器、头文件、开发库
    二进制格式:文本格式的程序代码 - -> 编译器 - -> 二进制格式(二进制程序、库文件、配置文件、帮助文件)
  • java/python程序格式
    源代码:编译成能够在其虚拟机(jvm/pvm)运行的格式;
    开发环境:编译器、开发库
    二进制
  • 项目构建工具

    c/c++: make
    java: maven
  • 源代码格式和二进制rpm包格式
源代码命名:name-VERSION-release.tar.gz 
.tar.gz只是一种,通常是使用tar打包归档,并使用gzip压缩;
VERSION:major.minor.release(主版本号.次版本号.发型号);
name:源代码所代表的应用程序的名字;
例如:redis-5.0.0.tar.gzrpm包命名:
name-VERSION-release.arch.rpm
VERSION:major.minor.release(软件包主版本号.次版本号.发型号);
release.arch:rpm包的发型号;
其中的release由release.os组成,(release表示发型号的版本,os表示系统说明)
arch可选值有:i386, x64(amd64), ppc, noarch等等例如:redis-5.0.0-1.centos7.x64.rpm
  • rpm概述
rpm是一款能够用于编译,安装,查询,验证,更新以及移除软件包的包管理器。包由文件和元数据构成。
元数据构成:
二进制程序文件,库文件,配置文件,帮助文件等;包的两种形式,上面有提到过,一种是二进制包格式,另外一种是源码包格式。
二进制包已经封装好了要安装的程序,源码包就是由程序源代码以及要生成二进制格式的一些附加配置构成;rpm包就是由二进制格式组成的,不过为了最小化功能模块设计,一个应用程序被打包成rpm包的时候,可能
组成了不止一个rpm包,比如像mysql这种的应用程序,可能由devel,utils,libs等组成各个小包,我们称这些
为分包或支包,如果要想完整的使用应用程序,我们应该先安装对应程序的主包,然后把这些辅助的支包也安装
上。主包和支包(这种机制叫拆包)命名:
主包:name-VERSION-release.arch.rpm 
支包:name-function-VERSION-release.arch.rpm
其中function表示一类辅助功能,常见的有:
devel,utils,libs等rpm管理器有个弊端就是不能自动解决程序包依赖关系的问题,何为依赖关系:
比如我要安装X,Y,Z程序包,安装X程序包要依赖于Y和Z程序包,而安装Y程序包要依赖于A,B,C程序包,
然后安装A程序要依赖于Y程序包,依赖我的Y程序包还没安装,而后Y程序包要装的软件包又依赖
于Y程序包本身,这种是很常见的,在rpm管理器中没能得到解决,我们只能找出依赖,先把依赖包安装好,
然后运气好的话,没有这种互相关联,我们可以解决,如果是互相关联的,就没有办法了。而rpm包的前端
工具,例如yum,就很好的解决了软件包依赖的关系。程序包管理器的功能(例如rpm):
将编译好的应用程序的各组成文件打包成一个或几个程序包文件,从而更方便地实现程序包的安装、升级、
卸载和查询等管理操作;
1、程序包的组成清单(每个程序包都单独实现);文件清单安装或卸载时运行的脚本
2、数据库(公共)程序包的名称和版本;依赖关系;功能说明;安装生成的各文件的文件路径及校验码信息;等等等获取程序包的途径:
1、系统发行版的光盘或官方的文件服务器(或镜像站点):
http://mirrors.aliyun.com 这是是国内阿里云提供的公共镜像站点;
http://mirrors.sohu.com   这是国内搜狐提供的公共镜像站点;
http://mirrors.163.com     这是163组织提供的公共镜像站点;  
2、项目的官方站点
3、第三方组织:(1) EPEL(2) 搜索引擎http://pkgs.orghttp://rpmfind.net http://rpm.pbone.net 
4、自己部署搭建镜像站点或者主机打包rpm包建议:检查其合法性来源合法性;程序包的完整性;

2.2、rpm常见选项

rpm简单组织语法格式:

rpm [OPTION] [PACKAGE_FILE]
其中OPTION根据rpm实现的每种功能,有分别的主选项,例如:
查询:-q或-query
校验:-V或--verify
安装:-i或--install
升级:U或--upgrade,-F或--freshen
卸载:-e或--erase

2.2.1、rpm的通用选项

-?, --help:查看帮助信息;
--version:查看版本;
--quiet:安静模式;
-v:详细信息;
-vv:更详细的输出;

2.2.2、rpm与安装相关的选项

语法格式:
rpm {-i|--install} [install-options] PACKAGE_FILE ...
其中-i或--install表示安装功能主选项;
install-options表示安装的子选项;-h, --hash:hash marks输出进度条;每个#表示2%的进度;
--test:测试安装,检查并报告依赖关系及冲突消息等;
--nodeps:忽略软件包的依赖关系(正常情况不应该忽略);
--replacepkgs:重新安装;
--replacefiles:如果其他程序安装过相应文件,会覆盖安装;
--oldpackage:允许降级安装软件包;
--force:--replacepkgs, --replacefiles, and --oldpackage的组合;PS:rpm包安装,可以附带四类安装脚本,分别为:
preinstall:安装过程开始之前运行的脚本,%pre
postinstall:安装过程完成之后运行的脚本,%post
preuninstall:卸载过程真正开始执行之前运行的脚本,%preun
postuninstall:卸载过程完成之后运行的脚本,%postun--nopre:不执行"安装过程开始之前要运行的脚本片段";
--nopost:不执行"安装过程完成之后运行的脚本片段";
--nopreun:不执行"卸载过程开始执行之前运行的脚本片段";
--nopostun:不执行"卸载过程完成之后运行的脚本片段";
--noscripts:相当于--nopre --nopost --nopreun --nopostun
--nodigest:不检查包完整性信息;
--nosignature:不检查包签名信息,不检查来源合法性;
--justdb:只安装数据库,不包安装安装文件系统的文件;(通过查询选项还是可以列出安装的文件,不过
实际并不存在,卸载的时候也要加上该选项);PS:安装的时候,rpm的数据库没有记录软件包的相关记录,应该指明完整的rpm包名;

2.2.3、rpm与升级相关的选项

语法格式:
rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...
这个-U是升级或安装,如果已经安装了且存在新版本,会移除旧版本并升级成新版本,简称升级或安装软件包;rpm {-F|--freshen} [install-options] PACKAGE_FILE ...
这个-F只升级软件包,如果指定软件包没有安装,不会安装;至于升级的选项,很多与安装的选项相同
--justdb:只安装数据库,不包安装安装文件系统的文件;(通过查询选项还是可以列出安装的文件,不过
实际并不存在,卸载的时候也要加上该选项);
--force:强制,相当于--replacepkgs, --replacefiles, and --oldpackage;
--oldpackage:降级;
等等,其他选项,请看上一小结。注意事项:
(1) 不要对内核做升级操作;Linux支持多内核版本并存,因此,直接安装新版本内核;
(2) 如果某原程序包的配置文件安装后曾被修改过,升级时,新版本的程序提供的同一个配置文件不会覆盖原有
版本的配置文件,而是把新版本的配置文件重命名(FILENAME.rpmnew)后提供;

2.2.4、rpm与卸载相关的选项

语法结构:
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test] PACKAGE_NAME ...
--allmatches:指定软件包如果有多个版本,会卸载掉多有的版本(正常情况如果有多个版本存在,卸载检测
出来,会报错);
--nodeps:卸载软件包前不检查依赖关系;
--test :测试卸载,不真正执行;
--nopreun:不执行"卸载过程开始执行之前运行的脚本片段";
--nopostun:不执行"卸载过程完成之后运行的脚本片段";
--noscripts:等价于 --nopreun --nopostun;PS:卸载的时候,不能指明完整的包名,只需要指定要卸载的软件包的名字即可。

2.2.5、rpm与查询相关的选项(最核心之一)

语法格式:
rpm {-q|--query} [select-options] [query-options]select-options:
-a, --all:查询所有已经安装过的软件包;
-f, --file FILE:查询指定文件由哪一个软件包提供;
-g, --group GROUP:查询指定开发包组中对应程序包,系统已经安装的有哪些;
-p, --package PACKAGE_FILE:用于实现对未安装的程序包进行查询操作;
--whatprovides CAPABILITY:查询指定的CAPABILITY由哪个程序包提供
--whatrequires CAPABILITY:查询指定的CAPABILITY被哪个包所依赖;query-options:
--changelog:查询软件包的改变信息;
-l, --list:查询软件包安装生成的所有文件列表;
-i, --info:查询程序包的相关信息,包括名字,版本号,大小,所属包组,描述信息等;
-c, --configfiles:查询软件包提供的配置文件列表;(已经隐式含有-l,不用显式再指明-l选项)
-d, --docfiles:查询软件包提供的文本文件列表;(已经隐式含有-l,不用显式再指明-l选项)
--dump:导出(打印)软件包的以下部分的详细信息(隐式含有-l选项)
path size mtime digest mode owner group isconfig isdoc rdev symlink
路径 大小 修改事件 摘要码 权限 文件属主 文件属组 是否为配置文件 是否为文件文件, 设备相关,链接相关
--filesbypkg:查询所有指定软件包的安装的文件列表(每个文件前边会有软件包名,再查找多个软件包的文件列表
的时候可便于区分);
-i, --info:查询程序包的相关信息,包括名字,版本号,大小,所属包组,描述信息等;
-L, --licensefiles:查询软件包的许可证信息;
--provides:查询软件包的CAPABILITY(能力);
-R, --requires:查询指定软件包的依赖能力关系(这里的依赖关系不一定到一个软件包,因为能力是一种体现,
一个软件包可以有多个能力);
--scripts:查询软件包自带的脚本片段;

2.2.6、rpm与校验相关的选项

语法结构:
rpm {-V|--verify} [select-options] [verify-options]
select-options和查询的select-options相同;verify-options:
--nodeps:校验的时候不检查软件包的依赖关系;
--nodigest:校验的时候不检查包完整性;
--nosignature:校验的时候不检查包签名信息和来源合法性;输出格式由9个字符组成的字符串,可能用来标识的属性有:
c %config configuration file. 配置文件
d %doc documentation file. 文档文件;
g %ghost file (i.e. the file contents are not included in the package payload).
l %license license file.: 许可证文件
r %readme readme file. 说明文件字符构成:
如果对应字符位置标记为符号"."表示校验通过,没有异常,如果为符号"?",表示检测异常,可能因为没有权限等
原因造成,如果标记为以下字符表示对应属性检测失败(软件包本身属性不变,如果有修改,对应字段会作出
相应的标记,不是所检测不同就表示有问题,只能说与元件包原始提供的检测不一样):
S file Size differs    标记为S表示文件大小不同;
M Mode differs (includes permissions and file type) 标记为M表示权限不同(包括权限和文件类型)
5 digest (formerly MD5 sum) differs 标记为5 表示消息摘要码不一样;
D Device major/minor number mismatch 标记为D表示主设备号或次设备号不匹配;
L readLink(2) path mismatch 标记为L表示路径不匹配;
U User ownership differs 标记为U表示文件的属主不同;
G Group ownership differs 标记为G表示文件的属组不同;
T mTime differs 标记为T表示文件的修改时间不同;
P caPabilities differ 标记为P表示软件包提供的能力检测不同;包来源合法性验证和完整性验证:来源合法性验正:完整性验正:获取并导入信任的包制作者的密钥:对于CentOS发行版来说:rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7验证:(1) 安装此组织签名的程序时,会自动执行验正;(2) 手动验证:rpm -K PACKAGE_FILEPS:校验rpm软件包也不能带上rpm的全路径,只需要指明rpm包的名字即可;

2.2.7、rpm与数据库维护相关

数据库重建:rpm管理器数据库路径:/var/lib/rpm/查询操作:通过的rpm的数据库进行;获取帮助:CentOS 6:man rpmCentOS 7:man rpmdbrpm {--initdb|--rebuilddb} [--dbpath DIRECTORY] [--root DIRECTORY]--initdb:初始化数据库,当前无任何数据库可实始化创建一个新的;当前有时不执行任何操作;--rebuilddb:重新构建,通过读取当前系统上所有已经安装过的程序包进行重新创建;

2.3、实际案例

本小结主要以光盘中的一个名叫zsh的软件包进行演示操作说明。
1、查询
linux下包管理器

linux下包管理器

linux下包管理器

2、安装和升级安装,卸载

linux下包管理器

3、校验和数据库维护

linux下包管理器

linux下包管理器

学完rpm,记得把这个链接的10多个常见问题看一下,非常有用:
http://fedoranews.org/alex/tutorial/rpm/

Problem 1: Install or Upgrade a package? Can I install an old one?
Problem 2: Remove a package? Is it going to remove any dependencies?
Problem 3: Query installed packages? What about a RPM file?
Problem 4: List what packages are required by some RPM package?
Problem 5: Find from which package the file /usr/bin/smbmount belongs?
Problem 6: List what files will be installed by a RPM package?
Problem 7: Install a package directly from Internet? Can I use a proxy?
Problem 8: Simulate what will be done when executing "rpm -ivh new-kernel.rpm"?
Problem 9: Upgrade all my installed packages with one Freshen command?
Problem 10: Figure out the Kernel version(smp, bigmem) and base arch(i386, athlon)?
Problem 11: Install a new Kernel version but keeping my old one installed?
Problem 12: Make backups of my old packages when updating or removing them?
Problem 13: Build a RPM package from a SRPM with rpmbuild?
Problem 14: Check digests and signatures against a package?
Problem 15: See what RPM macros are defined on my system?
Problem 16: Get rpm back? The command "rpm -qa" returns nothing!
Problem 17: Figure out the installation time of my packages? [User Contribution]
Problem 18: Figure out the size of a installed package? [User Contribution]1、安装和升级软件包,我可以使用旧软件包吗?
2、如何卸载软件包,会卸载掉依赖文件吗?
3、查询已经安装的软件包,以及rpm的安装文件信息?
4、列出依赖于rpm包的包以及文件?
5、查找某个程序文件属于哪一个软件包?(比如查询/usr/bin/smbmount输出哪个软件包)
6、列出rpm软件包将要安装的文件?
7、如何直接从互联网安装一个软件包?我可以使用代理吗?(例如使用ftp协议或者http协议)
8、如何模拟安装一个软件包?
9、如何一次升级所有已经安装过的软件包?
10、如何查询自己的内核版本以及系统体系架构?
11、安装一个新的内容版本并且保留之前已经安装过的旧版本?
12、在升级或卸载软件包的时候,如果备份软件包?
13、使用rpmbuild工具从SRPM格式构建出对应的RPM包?(这个涉及到rpm包的制作知识点,有兴趣可以查阅)
14、如何检验包的完整性和来源合法性?
15、查看我的系统定义的和RPM包相关的宏有哪些?(这个涉及到rpm包的制作知识点,有兴趣可以查阅)
16、有时候"rpm -qa"查询不出东西,怎么处理?
17、如何计算包的安装时间?(这个是用户提交的,非官方)
18、如何计算出已经安装包的大小?(这个是用户提交的,非官方)

三、rpm包管理器的前端工具yum

3.1、yum概述

yum是一个交互式的基于rpm实现的包管理器。它可以自动执行系统的更新,包括依赖性分析以及基于"仓库(repository)"的元数据库过时的处理。它也能够实现安装(新)软件包,卸载(旧)软件包以及对已经安装的软件包的查询,或者向其他命令或程序提供可用的软件包。yum和其他高级的软件包管理工具是相似的,例如像apt-get或smart。

yum可以解决rpm安装软件包依赖的问题,不过yum是基于rpm来实现的,所以如果rpm使用有异常或者环境有问题,yum可能会使用异常。
yum - Yellowdog Updater Modified,通常都叫小黄狗。yum是rpm的前端工具实现,可以从指定服务器上自动下载程序包,并自动分析程序包的元数据、自动处理程序包之间的依赖关系,能一次性安装完所有依赖的包,而无须繁琐地一次次安装所有依赖包。yum访问访问文件服务器(俗称yum仓库,yum repository)的模式是基于C/S架构的,而文件服务器(repository)则需要以某种共享服务方式将其提供的程序包及包相关的元数据提供给其他主机使用,通常使用到的协议有http、https、ftp、nfs等。此外,还可以使用光盘作为本地仓库或者自己制作本地仓库,通常使用到的协议是file。

上面有提到repository,yum的repository俗称yum仓库(yum repo),这个仓库里面存储了很多rpm包以及存放于特定
repodata目录下的包的相关元数据文件。既然yum访问yum仓库的模式是C/S架构,所以就必然有个yum客户端和
yum服务端的概念。

  • yum客户端
配置文件:/etc/yum.conf:为所有仓库提供公共配置/etc/yum.repos.d/*.repo:为仓库的指向提供配置yum仓库指向的配置文件:
[repositoryID]    这个表示仓库的id表示,不同的yum仓库配置不能相同;
name=Some name for this repository    这个是仓库的名字;
baseurl=url://path/to/repository/   这个是访问真正的yum服务端的url指向;
enabled={1|0}   仓库是否启用,1表示启用(默认值),0表示未启用;
gpgcheck={1|0}   是否要对程序包数据的来源合法性和数据完整性做校验;,1表示检查,0表示不检查;
gpgkey=URL     指定GPG密钥文件的访问路径,可由仓库提供;;(如果gpgcheck启用,这里就要指向)
enablegroups={1|0}  是否允许以组的方式管理仓库;
failovermethod={roundrobin|priority}默认为:roundrobin,意为随机挑选;当baseurl同时指向多个仓库路径时,可指定以什么方式选择url去访问仓库,以及当某一路径访问
失败时,可指定如何再选择路径;roundrobin是随机挑选路径访问,priority是自上而下选择路径访
问;
cost=开销;开销越小,该仓库url更优;默认值为1000.
  • yum服务端(yum仓库)
    至于服务端,没什么好说的,我们上面有讲过客户端了,我们来通过几张图来简要说明。
    摘抄:

linux下包管理器

linux下包管理器

  用户使用yum去请求安装某一个程序包时,yum工具会先去yum配置文件中查找yum仓库指向的路径,根据该路径去访问远程或本地的文件服务器,这个服务器作为yum仓库并且存储了众多的rpm包以及包相关的元数据文件。当yum根据仓库路径访问到仓库后,会首先尝试请求获取rpm包的元数据文件并缓存至本地(/var/cache/yum目录),而这个元数据文件包括了该仓库所有rpm包的程序包名、版本号、依赖性以及每个程序包所提供的capabilities等。而后,yum根据用户要安装的程序包名去元数据文件里查找,看看仓库里是否有用户请求下载的程序包文件,如果找到了则根据元数据文件分析该程序包的依赖关系并分析本地系统上有哪些包已安装、哪些包还没安装,再将所有用户需要安装且本地尚未安装的程序包名列出来,并以客户端的角色发送至文件服务器(仓库)请求下载之。如果请求成功,则yum将要安装的程序包文件也缓存至本地并执行安装操作。安装完成之后将缓存的程序包文件删除以节约空间,而缓存中只留下元数据文件。

  为什么只缓存元数据而不缓存程序包呢?因为程序包一般只安装一次即可,很少会再安装第二次,而且基于节约空间的考虑,因此yum在安装完程序包后会将缓存中的程序包删除。而缓存元数据好处则是当下一次用户使用yum请求安装程序包时可以节约带宽,无需再次重新请求获取全部的元数据文件,并且可以提高本地分析程序包的速度。

  当用户第二次使用yum请求安装程序包时,基于实时同步更新缓存以及节约带宽的考虑,yum会先请求下载yum仓库下rpm包元数据的校验码文件至本地,将其与本地缓存上的元数据校验码相比较,如果相同,说明无须更新;如果不同,则说明仓库中rpm包已经更新,因此yum会重新请求下载仓库上的元数据文件以更新元数据缓存。接着同样是分析程序包依赖性、请求要安装的全部程序包等。

3.2、yum常见选项

语法结构:
yum [options] [command] [package ...]options表示选项,command表示使用的命令,package表示软件包的名字;command is one of:* install package1 [package2] [...]* update [package1] [package2] [...]* update-to [package1] [package2] [...]* update-minimal [package1] [package2] [...]* check-update* upgrade [package1] [package2] [...]* upgrade-to [package1] [package2] [...]* distribution-synchronization [package1] [package2] [...]* remove | erase package1 [package2] [...]* autoremove [package1] [...]* list [...]* info [...]* provides | whatprovides feature1 [feature2] [...]* clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]* makecache [fast]* groups [...]* search string1 [string2] [...]* shell [filename]* resolvedep dep1 [dep2] [...](maintained for legacy reasons only - use repoquery or yum provides)* localinstall rpmfile1 [rpmfile2] [...](maintained for legacy reasons only - use install)* localupdate rpmfile1 [rpmfile2] [...](maintained for legacy reasons only - use update)* reinstall package1 [package2] [...]* downgrade package1 [package2] [...]* deplist package1 [package2] [...]* repolist [all|enabled|disabled]* repoinfo [all|enabled|disabled]* repository-packages <enabled-repoid> <install|remove|remove-or-reinstall|remove-or-distribution-synchronization>
[package2] [...]* version [ all | installed | available | group-* | nogroups* | grouplist | groupinfo ]* history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]* load-transaction [txfile]* updateinfo [summary | list | info | remove-pkgs-ts | exclude-updates | exclude-all | check-running-kernel]* fssnapshot [summary | list | have-space | create | delete]* fs [filters | refilter | refilter-cleanup | du]* check* help [command]options:
1、repolist:显示仓库列表;
repolist [all|enabled|disabled]
如果指定enabled:表示只显示启用的仓库列表;
如果指定disabled:表示只显示关闭的仓库列表;
如果指定all:表示显示启用和关闭的仓库列表;
默认的repolist的参数是enabled。
repolist [all|enabled|disabled] 后边还可以通过仓库的id或者名字来查找,并且支持bash通配符机制;
repolist [all|enabled|disabled] "Repo-id"
repolist [all|enabled|disabled] "Repo-name"有时候需要配置-v选项一起,查看详细信息;2、repoinfo:查看仓库详细信息
repoinfo [all|enabled|disabled]
repoinfo命令和repolist [all|enabled|disabled] -v等价;3、list:显示程序包
yum list [all | glob_exp1] [glob_exp2] [...]
列出所有可用和已经安装的软件包;
yum list available [glob_exp1] [...]
列出yum仓库所有可用的的安装包;
yum list updates [glob_exp1] [...]
列出yum仓库所有可用的更新包;
yum list installed [glob_exp1] [...]
列出所有已经安装的软件包;
yum list extras [glob_exp1] [...]
列出所有系统已经安装的软件包却不能被yum仓库的配置文件所列出(通过rpm安装的或者之前yum仓库安装
后来yum仓库被移除了等)软件包列表;
yum list distro-extras [glob_exp1] [...]
列出所有已经安装的软件包却不能根据yum配置文件列出的yum仓库的名字所匹配(yum仓库已经被移除了)软件包
列表;
yum list obsoletes [glob_exp1] [...]
列出系统已经安装却被rpm仓库的配置文件列表指向yum仓库人为软件包已经过时了的软件包列表;
yum list recentList  packages recently added into the repositories. This is often not helpful, but what you may really wantto use is "yum list-updateinfo new" from the security yum plugin.
列出最近加入yum仓库的软件包列表。4、install:安装
install package1 [package2] [...]5、reinstall:重新安装
reinstall package1 [package2] [...]6、update:升级更新
update [package1] [package2] [...]
不指定软件包名或者指定参考没有匹配(可以使用bash通配机制)软件包,会更新所有软件包;7、downgrade:降级
downgrade package1 [package2] [...]8、check-update:检查是否有可用的升级
返回状态值为100表示有可用的软件包升级(正常会返回可用的软件包更新列表);
返回状态值为0表示无可用的软件包升级;
返回状态值为1表示运行报错;9、remove or erase:卸载软件包
remove | erase package1 [package2] [...]
yum默认有保护yum自身的机制,不能对yum本身进行卸载;10、info:查看程序包信息
列出描述和摘要信息,可选的指定选项和list一样,下面只理出,不再次说明含义。
yum info [all | glob_exp1] [glob_exp2] [...]
yum info available [glob_exp1] [...]
yum info updates [glob_exp1] [...]
yum info installed [glob_exp1] [...]
yum info extras [glob_exp1] [...]
yum info distro-extras [glob_exp1] [...]
yum info obsoletes [glob_exp1] [...]
yum info recent
用的最多的就是:
yum info package_name类似于rpm -qi package_name或者rpm -qpi package_name.xxx.rpm11、search:搜索程序包
search [all] string1 [string2] [...]
以指定的关键字搜索程序包名及summary信息;
默认是根据报名和摘要信息进行搜索,如果检索失败,会去详细描述信息和url中去检索;
可以显式指明all来增大检索的范围,搜索的结果会有一定的排序;12、provides 或 whatprovides:查看指定的特性是由哪个程序包提供
provides | whatprovides feature1 [feature2] [...]13、clean:清理本地缓存
yum clean expire-cache  清理过期缓存;
yum clean packages   清理包;
yum clean headers  清理头文件;
yum clean metadata 清理元数据;
yum clean dbcache 清理sqlite数据库缓存;
yum clean rpmdb 清理本地的rpmdb缓存;
yum clean plugins 清理插件;
yum clean all 清理所有的14、makecache:构建本地缓存
makecache [fast]
不加fast,会对所有启用的仓库构建本地缓存数据;
加fast,速度更快,不过只会对过期的缓存进行重新缓存,已经缓存且没过期的不会;15、deplist:查看指定的软件包所依赖的能力(capabilities)
deplist package1 [package2] [...]16、history:查看yum事务历史
history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]
不常用,这里不进行讲解每个选项的含义。17、安装及升级本地程序包:
* localinstall rpmfile1 [rpmfile2] [...](maintained for legacy reasons only - use install)
* localupdate rpmfile1 [rpmfile2] [...](maintained for legacy reasons only - use update)
这是一个早期的版本的选项,就是如果你本地有一个rpm文件,你可以直接通过yum 指定这个rpm文件(接的全名)
来安装(会解决依赖管理,去启用的仓库中寻找依赖的软件包)。
CentOS 6.x和CentOS 7.x直接使用:
yum install package_name.xxx.rpm
yum update package_name.xxx.rpm18、包组管理相关:
* groupinstall group1 [group2] [...]   #安装开发包组
* groupupdate group1 [group2] [...]  #更新开发包组
* grouplist [hidden] [groupwildcard] [...] #列出开发包组的信息
* groupremove group1 [group2] [...] #卸载开发包组
* groupinfo group1 [...]  #查看开发包组的摘要信息(包含软件包列表)yum的命令行选项:
--nogpgcheck:禁止进行gpg check;
-y: 自动回答为“yes”;
-q:静默模式;
--disablerepo=repoidglob:临时禁用此处指定的repo;
--enablerepo=repoidglob:临时启用此处指定的repo;
--noplugins:禁用所有插件;

3.3、自己配置yum仓库

3.3.1、配置本地yum仓库

我们本地有个iso的光盘,里面有很多软件包,简单来看看如何配置yum的客户端,然后通过挂载光盘
到文件系统上,通过本地文件系统安装管理软件包。(1) 挂载光盘至某目录,例如/media/cdrom
mkdir -p /media/cdrom  #创建光盘挂载点
mount -r -t iso9660 /dev/cdrom /media/cdrom #只读挂载光盘文件到/dev/cdrom下(iso9660表示光盘的类型)(2) 创建配置文件
最少可选模板,
[repository-id]
name=
baseurl=
gpgcheck=
enabled=[root@node2 ~]# cd /etc/yum.repos.d/
[root@node2 yum.repos.d]# mkdir -p /media/cdrom
[root@node2 yum.repos.d]# mount -r -t iso9660 /dev/cdrom /media/cdrom/
[root@node2 yum.repos.d]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        98G  1.5G   97G   2% /
devtmpfs        229M     0  229M   0% /dev
tmpfs           238M     0  238M   0% /dev/shm
tmpfs           238M  8.8M  230M   4% /run
tmpfs           238M     0  238M   0% /sys/fs/cgroup
/dev/sda1       397M   94M  303M  24% /boot
tmpfs            48M     0   48M   0% /run/user/0
tmpfs            48M     0   48M   0% /run/user/1000
tmpfs            48M     0   48M   0% /run/user/1007
/dev/sr0        4.1G  4.1G     0 100% /mnt
[root@node2 yum.repos.d]# ls -l /media/cdrom/
total 614
-rw-r--r-- 1 root root     16 Apr  1  2015 CentOS_BuildTag
drwxr-xr-x 3 root root   2048 Mar 28  2015 EFI
-rw-r--r-- 1 root root    215 Mar 28  2015 EULA
-rw-r--r-- 1 root root  18009 Mar 28  2015 GPL
drwxr-xr-x 3 root root   2048 Mar 28  2015 images
drwxr-xr-x 2 root root   2048 Mar 28  2015 isolinux
drwxr-xr-x 2 root root   2048 Mar 28  2015 LiveOS
drwxr-xr-x 2 root root 589824 Apr  1  2015 Packages
drwxr-xr-x 2 root root   4096 Apr  1  2015 repodata
-rw-r--r-- 1 root root   1690 Mar 28  2015 RPM-GPG-KEY-CentOS-7
-rw-r--r-- 1 root root   1690 Mar 28  2015 RPM-GPG-KEY-CentOS-Testing-7
-r--r--r-- 1 root root   2883 Apr  1  2015 TRANS.TBL这是我配置的yum仓库客户端的配置文件
[root@node2 yum.repos.d]# cat local-base.repo
[CentOS7-localbase]
name=CentOS 7 local iso base
baseurl=file:///media/cdrom
gpgcheck=0
enabled=1[root@node2 yum.repos.d]# yum repolist
Loaded plugins: fastestmirror
CentOS7-localbase                                                                                      | 3.6 kB  00:00:00     
(1/2): CentOS7-localbase/group_gz                                                                      | 154 kB  00:00:00     
(2/2): CentOS7-localbase/primary_db                                                                    | 2.7 MB  00:00:00     
Loading mirror speeds from cached hostfile* base: mirrors.163.com* extras: mirrors.shu.edu.cn* updates: mirrors.163.com
repo id                                                  repo name                                                      status
CentOS7-localbase                                        CentOS 7 local iso base                                        3,576
base/7/x86_64                                            CentOS-7 - Base                                                9,911
extras/7/x86_64                                          CentOS-7 - Extras                                                432
updates/7/x86_64                                         CentOS-7 - Updates                                             1,602
repolist: 15,521
上面可以看出,我们的配置的已经可以被查询出来了。yum的repo配置文件中可用的变量:$releasever: 当前OS的发行版的主版本号;$arch: 平台;$basearch:基础平台;$YUM0-$YUM9

3.3.2、配置网络yum仓库

自己准备一些软件包,然后构建一个yum的服务端仓库,然后通过http协议给本地机器走http协议访问。yum server:1、创建一个文件系统目录,上传一些软件包(模拟测试用的)
[root@node2 ~]# mkdir -p /data/yum_server
[root@node2 ~]# cd /data/yum_server
[root@node2 yum_server]# ls /data/yum_server
DenyHosts-2.6.tar.gz           nginx-1.10.3.tar.gz   redis-3.2.11.tar.gz  redis-4.0.3.tar.gz  redis-4.0.9.tar.gz
extundelete-0.2.4.tar.bz2      nginx-1.12.2.tar.gz   redis-3.2.3.tar.gz   redis-4.0.4.tar.gz  ss5-3.8.9-8.tar.gz
fping-2.4b2-10.el6.x86_64.rpm  nginx-1.14.0.tar.gz   redis-3.2.8.tar.gz   redis-4.0.5.tar.gz  tcl8.6.6-src.tar.gz
keepalived-1.2.20.tar.gz       nginx-1.6.3.tar.gz    redis-4.0.0.tar.gz   redis-4.0.6.tar.gz
kubernetes-1.11.2.zip          Python-2.7.13.tar.xz  redis-4.0.1.tar.gz   redis-4.0.7.tar.gz
lynis-2.5.7.tar.gz             redis-3.2.10.tar.gz   redis-4.0.2.tar.gz   redis-4.0.8.tar.gz2、安装createrepo
[root@node2 yum_server]# rpm -q createrepo
package createrepo is not installed
[root@node2 yum_server]# yum install createrepo
......3、 初始化repodata索引文件
-d --databaseGenerate sqlite databases for use with yum. This is now the default.
-p --prettyOutput xml files in pretty format.
-o --outputdir <url>Optional output directory (useful for read only media).[root@node2 yum_server]# createrepo -pdo /data/yum_server/ /data/yum_server/
Spawning worker 0 with 1 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@node2 yum_server]# ls /data/yum_server/
DenyHosts-2.6.tar.gz           nginx-1.10.3.tar.gz   redis-3.2.11.tar.gz  redis-4.0.3.tar.gz  redis-4.0.9.tar.gz
extundelete-0.2.4.tar.bz2      nginx-1.12.2.tar.gz   redis-3.2.3.tar.gz   redis-4.0.4.tar.gz  repodata
fping-2.4b2-10.el6.x86_64.rpm  nginx-1.14.0.tar.gz   redis-3.2.8.tar.gz   redis-4.0.5.tar.gz  ss5-3.8.9-8.tar.gz
keepalived-1.2.20.tar.gz       nginx-1.6.3.tar.gz    redis-4.0.0.tar.gz   redis-4.0.6.tar.gz  tcl8.6.6-src.tar.gz
kubernetes-1.11.2.zip          Python-2.7.13.tar.xz  redis-4.0.1.tar.gz   redis-4.0.7.tar.gz
lynis-2.5.7.tar.gz             redis-3.2.10.tar.gz   redis-4.0.2.tar.gz   redis-4.0.8.tar.gz
[root@node2 yum_server]# ls /data/yum_server/repodata
0dd81bd3480e1b700ef4d8501952ada4c17f0f7aa6e33b2ecdc1986327bcef70-primary.sqlite.bz2
54b9a1903b8bd39bcfd5c1e35840a19891a1187d078a009b4882aedf24e21154-filelists.sqlite.bz2
59026382882aae681f9af6f060b7d151f36be0e82583dcd07652cc7bb74d9f8c-other.sqlite.bz2
71b15f14ece520f2722a1648481a433c30e4bff9e407b89ad4d22f0ec40b90bd-other.xml.gz
cb1c34973cff8ddb6b6f40fc48ddaec468c057f9ff62c20fad26119d278b6c85-primary.xml.gz
dc8a69e32b8fbfd2a3d54f6f92ed53561754e3bf68b4263be3e74323a1bb2549-filelists.xml.gz
repomd.xml
[root@node2 yum_server]# cat /data/yum_server/repodata/repomd.xml |wc -l
554、通过http协议实现yum的文件传输
(1) 安装nginx
yum install nginx
此步骤要包装本地配置的yum客户端配置指向的启用的yum源,要有nginx安装包,常见的EPEL源和nginx官方自己的
yum仓库就提供nginx的软件包;(2) 修改nginx主页指向vim /etc/nginx/conf.d/default.conf
默认 root   /usr/share/nginx/html
改为
root /data/yum_server
(3) 设置nginx主页权限和防火墙放行http服务(我没有启用Selinux机制)
[root@node2 ~]# id nginx
uid=998(nginx) gid=996(nginx) groups=996(nginx)
[root@node2 ~]# setfacl -R -m u:nginx:r-- /data/yum_server
[root@node2 ~]# getfacl /data/yum_server
getfacl: Removing leading '/' from absolute path names
# file: data/yum_server
# owner: root
# group: root
user::rwx
user:nginx:r--
group::r-x
mask::r-x
other::r-x
[root@node2 ~]# getfacl /data/yum_server/redis-4.0.1.tar.gz 
getfacl: Removing leading '/' from absolute path names
# file: data/yum_server/redis-4.0.1.tar.gz
# owner: root
# group: root
user::rw-
user:nginx:r--
group::r--
mask::r--
other::r--
[root@node2 yum.repos.d]#  getfacl -p /data/yum_server/redis-4.0.1.tar.gz 
# file: /data/yum_server/redis-4.0.1.tar.gz
# owner: root
# group: root
user::rw-
user:nginx:r--
group::r--
mask::r--
other::r--[root@node2 yum.repos.d]#  getfacl -p /data/yum_server/nginx-1.14.0.tar.gz 
# file: /data/yum_server/nginx-1.14.0.tar.gz
# owner: root
# group: root
user::rw-
user:nginx:r--
group::r--
mask::r--
other::r--Firewalld防火墙放行http:
[root@node2 yum.repos.d]# firewall-cmd --help|grep add-service--add-service=<service>
[root@node2 yum.repos.d]# firewall-cmd --add-service=http --permanent
success
[root@node2 yum.repos.d]# firewall-cmd --reload
success
[root@node2 yum.repos.d]# firewall-cmd --list-services
dhcpv6-client http ssh(5) 启动nginx,尝试机房访问测试
[root@node2 ~]# nginx -t 
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful[root@node2 ~]# systemctl enable nginx.service
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.
[root@node2 ~]# systemctl start nginx.service
[root@node2 ~]# ss -nlt|grep :80
LISTEN     0      128                       *:80                       *:* 如果是单纯的文件访问没问题,不过要想列出nginx的文件列表,首先nginx的工作进程用户要
对主页的那个目录有执行权限,其次,对应的站点的配置要添加以下内容:
autoindex on;  # 开启目录文件列表
autoindex_exact_size on;  # 显示出文件的确切大小,单位是bytes
autoindex_localtime on;  # 显示的文件时间为文件的服务器时间
charset utf-8,gbk;  # 避免中文乱码给执行权限:
[root@node2 ~]# setfacl -R -m u:nginx:r-x /data/yum_server
[root@node2 ~]# getfacl -p /data/yum_server
# file: /data/yum_server
# owner: root
# group: root
user::rwx
user:nginx:r-x
group::r-x
mask::r-x
other::r-x
nginx -t检测语法,成功后,
systemctl reload nginx.service 重新加载站点浏览器访问测试![](http://i2.51cto.com/images/blog/201810/28/584f59f82b3f4df557b5f0fae32705a0.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)(6)、准备另外一台主机,配置客户端yum源的baseurl指向上面配置的http站点客户端配置:
[local-http]
name=centos7 local http
baseurl=http://172.168.110.21/
enable=1
gpgcheck=0这里有些凌乱了,我把源码包传到我的yum服务器的软件包目录了,我应该准备rpm包。
拷贝一些光盘的软件包到我的yum服务端的对应目录。
[root@node2 yum_server]# cp /media/cdrom/Packages/*.rpm .
[root@node2 yum_server]# du -sh /data/yum_server/
3.6G    /data/yum_server/
重新授权:
[root@node2 yum_server]# setfacl -R -m u:nginx:r-x /data/yum_server
软件包加入或变更,要手动更新一下:(更新是非常吃cpu资源的,请不要在有业务的生成环境上测试)
[root@node2 yum_server]# createrepo --update /data/yum_server
Spawning worker 0 with 3576 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
客户端重启构建一下缓存数据:
[root@node1 yum.repos.d]# yum makecache
Loaded plugins: fastestmirror
local-http                                                                                             | 2.9 kB  00:00:00     
(1/3): local-http/primary_db                                                                           | 2.7 MB  00:00:00     
(2/3): local-http/filelists_db                                                                         | 2.7 MB  00:00:00     
(3/3): local-http/other_db                                                                             | 1.1 MB  00:00:00     
Loading mirror speeds from cached hostfile
Metadata Cache Created我之前把系统默认自带的repo都备份了,现在哪台客户端主机只剩下这个配置的http的yum仓库。
[root@node1 yum.repos.d]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id                                                 repo name                                                       status
local-http                                              centos7 local http                                              3,577
repolist: 3,577
[root@node1 yum.repos.d]# yum info zsh
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Available Packages
Name        : zsh
Arch        : x86_64
Version     : 5.0.2
Release     : 7.el7
Size        : 2.4 M
Repo        : local-http
Summary     : Powerful interactive shell
URL         : http://zsh.sourceforge.net/
License     : MIT
Description : The zsh shell is a command interpreter usable as an interactive login: shell and as a shell script command processor.  Zsh resembles the ksh: shell (the Korn shell), but includes many enhancements.  Zsh supports: command line editing, built-in spelling correction, programmable: command completion, shell functions (with autoloading), a history: mechanism, and more.
[root@node1 yum.repos.d]# yum install zsh
......
[root@node1 yum.repos.d]# rpm -q zsh
zsh-5.0.2-7.el7.x86_64
经过简单测试后,发现没有问题。PS:一般构建自己的yum服务器,会去外网同步更新yum仓库的软件包(这台服务器必须要保证出口带宽)。如果
走外网提供yum文件传输的话,可以这样做,同步外网的软件包,然后对内走内网使用yum仓库。
比较有名的,CentOS的自己的源,163的源,EPEL的源,阿里云的源等等。

四、rpm包管理器的前端工具dnf(精简说明)

默认base仓库没有dnf软件包,需要特殊配置,就连EPEL源也没有,所以我这里只是简单的介绍一下。

网上google的做法:

yum -y install wget
wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64/dnf-conf-0.6.4-2.sdl7.noarch.rpm
wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64//dnf-0.6.4-2.sdl7.noarch.rpm
wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64/python-dnf-0.6.4-2.sdl7.noarch.rpm  
yum -y install python-dnf-0.6.4-2.sdl7.noarch.rpm  dnf-0.6.4-2.sdl7.noarch.rpm dnf-conf-0.6.4-2.sdl7.noarch.rpm [root@node2 ~]# yum info dnf
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile* base: mirrors.163.com* epel: mirrors.yun-idc.com* extras: mirrors.shu.edu.cn* updates: mirrors.163.com
Installed Packages
Name        : dnf
Arch        : noarch
Version     : 0.6.4
Release     : 2.sdl7
Size        : 652 k
Repo        : installed
From repo   : /dnf-0.6.4-2.sdl7.noarch
Summary     : Package manager forked from Yum, using libsolv as a dependency resolver
URL         : https://github.com/rpm-software-management/dnf
License     : GPLv2+ and GPLv2 and GPL
Description : Package manager forked from Yum, using libsolv as a dependency resolver.dnf是是下一个即将到来的主要版本的yum,它是基于rpm包管理器的linux发型版本的包管理器。(很谦虚)
它大体上维护了与YUM兼容的CLI,并定义了扩展和插件的严格API。yum相较yum是有有点的,不过目前
的CentOS 7.x没有采纳进来, Fedora 22 已经默认使用 DNF作为包前端管理器。dnf语法结构:
dnf [options] <command> [<args>...]
Available commands are:· autoremove
· check-update
· clean
· distro-sync
· downgrade
· group
· help
· history
· info
· install
· list
· makecache
· provides
· reinstall
· remove
· repolist
· repository-packages
· search
· updateinfo
· upgrade
· upgrade-to1、安装和重新安装
dnf [options] install <spec>...
dnf [options] reinstall <package-specs>...2、检测更新和更新
dnf [options] check-update [<package-specs>...]
dnf [options] upgrade3、卸载
dnf [options] erase <spec>...
dnf [options] remove <package-specs>...4、查看repo和软件包以及列表
dnf [options] repolist [enabled|disabled|all]
dnf [options] info [<package-spec>...]
dnf [options] list [all] [<package-name-specs>...]
dnf [options] list installed [<package-name-specs>...]
dnf [options] list available [<package-name-specs>...]
dnf [options] list extras [<package-name-specs>...]
dnf [options] list obsoletes [<package-name-specs>...]
dnf [options] list recent [<package-name-specs>...]
dnf [options] list upgrades [<package-name-specs>...]5、检索软件包
dnf [options] search [all] <keywords>...6、清理缓存和构建缓存
dnf clean dbcache
dnf clean expire-cache
dnf clean metadata
dnf clean packages
dnf clean plugins
dnf clean all
dnf [options] makecache等(其他查看软件包的能力,以及包组管理相关,我就不列出来了,也是支持的,和yum几乎差别不大)
查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 创建型模式——工厂方法模式

    1、工厂方法模式 工厂方法模式是简单工厂模式的进一步优化与抽象,解决了简单工厂无法支持继承这一缺点,使用面向对象的多态这一特性, 在工厂方法模式中,核心的工厂类本身不再直接去创建某一个具体的产品,而是将由子类去创建某一类的产品,这种改变使 得在引进一个或一类新…...

    2024/4/17 6:01:04
  2. windows 编程的学习次序

    如何学习Windows编程 经常有初学者询问如何学习Windows编程?很多人从MFC开始学习,结果常常是一头雾水,知难而退;也有人毅力坚强,熬过了MFC的阵痛期,最后却是知其然而不知其所以然,并且思维被限制在MFC的框架之中,遇到稍微有点规模的程序就无从下手了。以我个人的这些年…...

    2024/4/20 14:58:28
  3. 用data.DataReader读取股价数据并分析--python学习笔记17

    #加载相应的包 import numpy as np import pandas as pd from pandas_datareader import data,wb#从互联网读入数据 goog=data.DataReader(GOOG,data_source=yahoo) goog.head() goog.tail()#实现对波动率的计算 goog[log_ret]=np.log(goog[Close]/goog[Close].shift(1)) goog[…...

    2024/4/17 6:00:34
  4. Java设计模式---工厂模式(简单工厂、工厂方法、抽象工厂)

    工厂模式:主要用来实例化有共同接口的类,工厂模式可以动态决定应该实例化那一个类。工厂模式的形态工厂模式主要用一下几种形态:1:简单工厂(Simple Factory)。2:工厂方法(Factory Method)。3:抽象工厂(Abstract Factory)。简单工厂(Simple Factory)又叫静态工厂,…...

    2024/4/17 5:59:40
  5. 怎么做游戏打击感浅述

    来自:多玩论坛 http://bbs.duowan.com/thread-27863398-1-1.html作者:佚名 来源:网络何为打击感?笔者这里就不复制粘贴一堆概念名词了。本文目的不是诠释打击感是什么,而只是以实际经验(鄙人做过2款不同倾向的横版无锁定格斗游戏的战斗系统,页游,md,笔者就是个大奇葩。…...

    2024/3/31 20:49:08
  6. 深度学习中几个常用包的参考文档(NumPy,SciPy,Matplotlib,pandas等)

    总的网址是: https://scipy.org/NumPy快速入门教程 https://docs.scipy.org/doc/numpy-dev/user/quickstart.html https://docs.scipy.org/doc/numpy/reference/NumPy和Scipy文档: https://docs.scipy.org/doc/稍微记录一下...

    2024/4/29 3:42:58
  7. 最适合程序员编程刷题的网站,你用过几个?

    有不少的程序员小伙伴,为了拿到好的offer,采用了大量刷题的方式。特别是对于新手、进阶的程序员来说,刷题能够让你的编程能力会得到一个质的飞跃。下面w3cschool给程序员小伙伴们分享6个编程刷题网站:0、LeetCode Online Judge据不完全统计在上面被刷过的题可以围绕地球三圈…...

    2024/4/29 12:31:50
  8. 决战Python之巅(十五)-面向对象(找名词、加属性、连关系)

    面向对象(找名词、加属性、连关系)知识回顾引言面向过程 VS 面向对象面向过程面向对象面向对象初识类的相关对象的相关对象之间的交互类命名空间与对象、实例的命名空间初识面向对象小结面向对象三大特性以及组合用法继承什么是继承继承与抽象(先抽象再继承)重用性派生抽象…...

    2024/5/6 5:44:29
  9. VR引擎哪家强?主流VR开发引擎大起底

    转载自:http://www.hiavr.com/news/tech/22826.html?ref=myread在VR浪潮面前,Unreal、Unity、CryENGINE各大游戏引擎纷纷跟进,都决心抓住这个绝无仅有的机会,一举奠定自己的江湖地位。新一轮的VR引擎之战即将爆发。自2014年Facebook20亿美元收购Oculus以来,国内大量厂商开…...

    2024/4/17 6:00:40
  10. Caffe笔记:python图像识别与分类

    Caffe笔记:python图像识别与分类本文来自网络,作为总结学习笔记。目录Caffe笔记python图像识别与分类目录准备 图像目标分类识别 1加载numpy以及matplotlib等模块 2 加载Load caffe 3加载网络并设置输入预处理 4设置图像输入参数配置 5图片加载与识别准备工欲善其事,必先利其…...

    2024/4/17 6:01:10
  11. JEECG开源说明 JEECG 完全开源,不收任何费用,可以任用于商业

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴! JEECG开源说明:JEECG 完全开源,不收任何费用,可以任用于商业!前言:随着WEB UI 框架(Ea…...

    2024/4/19 16:35:12
  12. 设计模式-----计算器简单工厂模式

    简单工厂模式就是使用父类指针指向实例化对象,思考到底使用多态要实例化谁,将来增加一个单独的类来创造实例,但是在外观实现上还是使用之前的父类指针。下面以一个面向对象思想的计算器程序来实现简单工厂模式。class interator {protected double ValueA;protected double …...

    2024/4/24 9:49:40
  13. Python实现对12500张猫狗图像的精准分类

    微信公众号关键字全网搜索最新排名【机器学习算法】:排名第一【机器学习】:排名第一【Python】:排名第三【算法】:排名第四源|51CTO官微在这篇文章中,我们将展示如何建立一个深度神经网络,能做到以 90% 的精度来对图像进行分类,而在深度神经网络,特别是卷积神经网络兴起…...

    2024/3/31 9:07:42
  14. coursera斯坦福Andrew Ng的机器学习编程作业答案

    刚刚学完了这个课程(开心),感觉讲的还是比较好的,简单易懂,如果想了解数学过程的话最好去看网易云公开课。coursera课程,斯坦福Andrew Ng的机器学习编程作业答案(2-9章,共8个),本来也不难,主要是怕哪出遇到死胡同,可以参考一下。 http://download.csdn.net/detail/…...

    2024/4/19 21:20:34
  15. 如何在 CentOS 8/RHEL 8 上安装 Ansible(自动化工具) | Linux 中国

    Ansible 是给 Linux 系统管理员使用的出色自动化工具。它是一种开源配置工具,能让系统管理员可以从一个中心节点(即 Ansible 服务器)管理数百台服务器。-- Pradeep KumarAnsible 是给 Linux 系统管理员使用的出色自动化工具。它是一种开源配置工具,能让系统管理员可以从一个…...

    2024/4/17 5:59:34
  16. python测量代码运行时间方法

    Python 社区有句俗语: “python自己带着电池” ,别自己写计时框架。 Python3.2具备一个叫做 timeit 的完美计时工具可以测量python代码的运行时间。 timeit 模块timeit 模块定义了接受两个参数的 Timer 类。两个参数都是字符串。 第一个参数是你要计时的语句或者函数。 传递给…...

    2024/4/17 6:00:34
  17. pip装了一个包,但是python里Import的时候出错的处理办法

    具体处理如下:第一步:打开setting第二步:打开项目的解析器,再点开设置图标,选择Add Loacl ...第三步:选择existing environment,选择Anaconda3/python.exe文件,点击确定即可。...

    2024/4/17 5:59:34
  18. ansible roles 介绍和使用

    目录rolesroles 介绍创建role的步骤role内个目录中可用的文件案例roles roles 介绍ansible 自1.2版本引入的新特性,用于层次性、结构化地组织playbook。roles能够根据层次结构自动装在边梁文杰、tasks以及handlers等。要使用roles只需要在playbook中使用include指令即可。简单…...

    2024/4/17 6:01:40
  19. mongodb 常用语句

    A:创建数据表db.createCollection(name, {capped: <Boolean>, autoIndexId: <Boolean>, size: <number>, max <number>} )1、现有表以及数据添加字段(多个字段)db.tbGoodsConsultant.update({}, {$set: {"user_sex" : 1, "is_vip&qu…...

    2024/4/20 5:00:32
  20. 开源产品评估标准

    表格.1开源选择标准和总体原则标准说明可行性产品是否被广泛使用,是否有强大的用户社区?解决方案是否有详细配套文档?项目有没有足够的开发资源?架构产品的架构是否和其他我们在评估中的产品相辅相成?是否有详细文档并合乎逻辑,是否遵从通用的最佳时间和模式?监控和管理…...

    2024/4/17 6:01:10

最新文章

  1. 【CV-CUDA实战】使用Python+TensorRT+CVCUDA优化YOLOv8

    目录 什么是CV-CUDA环境准备准备CV-CUDA静态库解压添加至变量将PyBind静态库复制到env下算子设计前处理算子 TensorRT模型加载后处理函数 完整代码输出演示为什么重新写了&#xff1f;结语 什么是CV-CUDA NVIDIA CV-CUDA™ 是一个开源项目&#xff0c;用于构建云规模人工智能 (…...

    2024/5/6 6:31:52
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 文件输入/输出流(I/O)

    文章目录 前言一、文件输入\输出流是什么&#xff1f;二、使用方法 1.FileInputStream与FileOutputStream类2.FileReader与FileWriter类总结 前言 对于文章I/O(输入/输出流的概述)&#xff0c;有了下文。这篇文章将具体详细展述如何向磁盘文件中输入数据&#xff0c;或者读取磁…...

    2024/4/30 2:44:51
  4. [实战经验]Mybatis的mapper.xml参数#{para}与#{para, jdbcType=BIGINT}有什么区别?

    在MyBatis框架中&#xff0c;传入参数使用#{para}和#{para, jdbcTypeBIGINT}的有什么区别呢&#xff1f; #{para}&#xff1a;这种写法表示使用MyBatis自动推断参数类型&#xff0c;并根据参数的Java类型自动匹配数据库对应的类型。例如&#xff0c;如果参数para的Java类型是Lo…...

    2024/5/4 11:09:35
  5. vscode安装通义灵码

    作为vscode的插件&#xff0c;直接使用 通义灵码-灵动指间&#xff0c;快码加编&#xff0c;你的智能编码助手 通义灵码&#xff0c;是一款基于通义大模型的智能编码辅助工具&#xff0c;提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成、代码解释、研…...

    2024/5/6 2:26:42
  6. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/4 23:54:56
  7. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/4 23:54:56
  8. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/5/4 23:54:56
  9. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/4 23:55:17
  10. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/5/4 23:54:56
  11. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/5/4 23:55:05
  12. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/5/4 23:54:56
  13. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/5/4 23:55:16
  14. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/5/4 23:54:56
  15. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/6 1:40:42
  16. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/5/4 23:54:56
  17. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/5/4 23:55:17
  18. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/5/4 23:55:06
  19. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/5/4 23:54:56
  20. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/4 23:55:06
  21. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/5/5 8:13:33
  22. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/5/4 23:55:16
  23. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/5/4 23:54:58
  24. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/4 23:55:01
  25. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/5/4 23:54:56
  26. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  27. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  29. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  30. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  31. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  32. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  33. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  36. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  37. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  38. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  39. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  40. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  41. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  42. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  43. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  44. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  45. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57