#软件管理

news/2024/4/15 8:29:38

#软件管理
###1. 获取程序包的途径
系统发行版的光盘或官方的服务器
http://mirrors.aliyun.com
http://mirrors.sohu.com
http://mirrors.163.com
项目官方站点
第三方组织
Fedora-EPEL(推荐)
搜索引擎:
http://pkgs.org
http://rpmfind.net
http://rpm.pbone.net
自己制作
###2. 软件包管理器的职责
将二进制程序,库文件,配置文件,帮助文件打包成一个文件;
安装软件时按需将二进制文件,库文件,配置文件,帮助文件放到相应的位置;
生成数据库,追踪所安装的每一个文件;
软件卸载时根据安装时生成的数据库将对应的文件删除
###3. 软件包管理器的核心功能
制作软件包
安装软件
卸载软件
升级软件
查询软件
校验软件
###4. 软件包管理
程序的组成清单(每个包独有)
文件清单
安装或卸载时运行的脚本
数据库(公共)
程序包名称及版本
依赖关系
功能说明
安装生成的各文件的文件路径及校验码信息
###5. 软件包分类

  • 二进制格式(编译好的,装上就可以用)
    rpm包作者下载源程序,编译配置完成后,制作成rpm包
    why would we do that? because:
    有些特性是编译时选定的,如果编译时未选定此特性,将无法使用
    rpm包的版本会落后于源码包,甚至落后很多
  • 源码格式(需要编译,也叫定制)
    命名方式:name-VERSION.tar.gz
    VERSION:major.minor.release
    ###6. 软件包管理工具
  • 分类:
    前端工具,常用的前端工具有以下这些:
  • yum
  • apt-get
  • zypper (suse上的rpm前端管理工具)
  • dnf(Fedora 22+ rpm前端管理工具)
    后端工具,常用的后端工具有以下这些:
  • rpm
  • dpt
    注意:
    前端工具是依赖于后端工具的
    前端工具是为了自动解决后端工具的依赖关系而存在的
    ###7. 软件安装方式
    通过前端工具安装
    通过后端工具安装
    编译安装
    ###8. rpm包命名规范
  • 包的组成
    主包:bind-9.7.1-1.el5.i586.rpm
    子包:bind-libs-9.7.1-1.el5.i586.rpm bind-utils-9.7.1-1.el5.i586.rpm
  • 包名格式
    name-version-release-arch.rpm
    bind-major.minor.release-release.arch.rpm
  • 包名格式说明
    major(主版本号):重大改进
    minor(次版本号):某个子功能发生重大变化
    release(发行号):修正了部分bug,调整了一点功能
  • 常见的arch
    x86:i386,i486,i586,i686
    x86_64:x64,x86_64,amd64
    跟平台无关:noarch
    ###9. rpm包管理
    ###9.1 什么是rpm及其作用
    rpm是Redhat Package Manager的简称,用于管理软件包。
    rpm有一个强大的数据库/var/lib/rpm。
    rpm的管理工作包括软件的安装、卸载、升级、查询、校验、重建数据库、验证软件包来源合法性等等。
    ###9.2 RPM包安装
    // 语法: rpm -ivh /PATH/TO/PACKAGE_FILE …
    // 常用选项:
    -i: 安装
    -v: 显示详细信息
    -h: 显示安装进度条
[root@localhost ~]# rpm -ivh /mnt/AppStream/Packages/zsh-html-5.5.1-6.el8_1.2.noarch.rpm 
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...1:zsh-html-5.5.1-6.el8_1.2         ################################# [100%]

–test: 测试安装,但不真正执行安装过程

[root@localhost ~]# rpm -ivh --test /mnt/AppStream/Packages/sshpass-1.09-4.el8.x86_64.rpm 
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]

–nodeps: 忽略依赖关系

[root@localhost ~]# rpm -ivh --nodeps /mnt/AppStream/Packages/httpd-2.4.37-43.module_el8.5.0+1022+b541f3b1.x86_64.rpm 
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]package httpd-2.4.37-47.module_el8.6.0+1111+ce6f4ceb.1.x86_64 (which is newer than httpd-2.4.37-43.module_el8.5.0+1022+b541f3b1.x86_64) is already installed

–replacepkgs: 重新安装,替换原有安装

[root@localhost ~]# rpm -qa | grep wget
wget-1.19.5-10.el8.x86_64
[root@localhost ~]# rpm -ivh --replacepkgs /mnt/AppStream/Packages/wget-1.19.5-10.el8.x86_64.rpm 
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...1:wget-1.19.5-10.el8               ################################# [100%]

–oldpackage: 降级

[root@localhost ~]# rpm -qa | grep wget
wget-1.19.5-10.el8.x86_64
[root@localhost ~]# rpm -ivh --oldpackage /mnt/AppStream/Packages/wget-1.19.5-10.el8.x86_64.rpm 
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]package wget-1.19.5-10.el8.x86_64 is already installed

–force: 强行安装,可以实现重装或降级

[root@localhost ~]# rpm -ivh --force /mnt/AppStream/Packages/ftp-0.17-78.el8.x86_64.rpm 
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...1:ftp-0.17-78.el8                  ################################# [100%]

–nodigest: 不检查包的完整性

[root@localhost ~]# rpm -ivh --nodigest /mnt/AppStream/Packages/ftp-0.17-78.el8.x86_64.rpm 
Preparing...                          ################################# [100%]package ftp-0.17-78.el8.x86_64 is already installed

–nosignature: 不检查包的来源合法性

[root@localhost ~]# rpm -ivh --nosignature /mnt/AppStream/Packages/ftp-0.17-78.el8.x86_64.rpm 
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]package ftp-0.17-78.el8.x86_64 is already installed

–noscripts: 不执行程序包脚本片断
%pre:安装前脚本 --nopre
%post:安装后脚本 --nopost
%preun:卸载前脚本 --nopreun
%postun:卸载后脚本 --nopostun
//安装软件包, 需要指定软件包绝对路径
[root@localhost ~]# rpm -ivh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm
[root@localhost ~]# rpm -ivh /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm

//在软件包所在目录下可以不指定绝对路径
[root@localhost ~]# cd /mnt/Packages/
[root@localhost Packages]# rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm

//测试一个软件包是否能在该系统上安装
[root@localhost ~]# rpm -ivh --test /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm

//如果软件包存在, 强制再次安装
[root@localhost ~]# rpm -ivh --force /mnt/Packages/tree-1.5.3-3.el6.x86_64.rpm

//安装samba服务需要依赖其他组件, 使用–nodeps可重新强制安装
[root@localhost ~]# rpm -ivh --nodeps /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm
###9.3 RPM包查询
rpm -q PACKAGE_NAME //查询指定的包是否已安装
rpm -qa //查询已经安装的所有包
rpm -qi PACKAGE_NAME //查询指定包的说明信息
rpm -ql PACKAGE_NAME //查询指定软件包安装后生成的文件列表
rpm -qf /path/to/somefile //查询指定的文件是由哪个rpm包安装生成的
rpm -qc PACKAGE_NAME //查询指定包安装的配置文件
rpm -qd PACKAGE_NAME //查询指定包安装的帮助文件
rpm -q --scripts PACKAGE_NAME //查询指定包中包含的脚本
rpm -q --whatprovides CAPABILITY //查询指定的CAPABILITY(能力)由哪个包所提供
如:rpm -q --whatprovides /bin/cat
rpm -q --whatrequires CAPABILITY //查询指定的CAPABILITY被哪个包所依赖
rpm -q --changelog COMMAND //查询COMMAND的制作日志
rpm -q --scripts PACKAGE_NAME //查询指定软件包包含的所有脚本文件
rpm -qR PACKAGE_NAME //查询指定的软件包所依赖的CAPABILITY
rpm -q --provides PACKAGE_NAME //列出指定软件包所提供的CAPABILITY

rpm -qpi /PATH/TO/PACKAGE_FILE //查询指定未安装包的说明信息
rpm -qpl /PATH/TO/PACKAGE_FILE //查询未安装的软件包会产生哪些文件
//查询httpd这个rpm包是否安装

[root@localhost ~]# rpm -q httpd
httpd-2.4.37-47.module_el8.6.0+1111+ce6f4ceb.1.x86_64

//模糊查找系统已安装的rpm包

[root@localhost ~]# rpm -qa | grep httpd
httpd-tools-2.4.37-47.module_el8.6.0+1111+ce6f4ceb.1.x86_64
httpd-filesystem-2.4.37-47.module_el8.6.0+1111+ce6f4ceb.1.noarch
centos-logos-httpd-85.8-2.el8.noarch
httpd-2.4.37-47.module_el8.6.0+1111+ce6f4ceb.1.x86_64

//查询httpd软件包的相关信息

[root@localhost ~]# rpm -qi httpd
Name        : httpd
Version     : 2.4.37
Release     : 47.module_el8.6.0+1111+ce6f4ceb.1
Architecture: x86_64
Install Date: Mon Jul 11 14:27:07 2022
Group       : System Environment/Daemons
Size        : 4499649
License     : ASL 2.0
Signature   : RSA/SHA256, Wed Apr  6 23:16:12 2022, Key ID 05b555b38483c65d
Source RPM  : httpd-2.4.37-47.module_el8.6.0+1111+ce6f4ceb.1.src.rpm
Build Date  : Wed Apr  6 22:55:33 2022
Build Host  : x86-01.mbox.centos.org
Relocations : (not relocatable)
Packager    : CentOS Buildsys <bugs@centos.org>
Vendor      : CentOS
URL         : https://httpd.apache.org/
Summary     : Apache HTTP Server
Description :
The Apache HTTP Server is a powerful, efficient, and extensible
web server.

//查询rpm包所安装的文件

[root@localhost ~]# rpm -ql httpd
/etc/httpd/conf
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/userdir.conf
/etc/httpd/conf.d/welcome.conf
/etc/httpd/conf.modules.d
/etc/httpd/conf.modules.d/00-base.conf
/etc/httpd/conf.modules.d/00-dav.conf
/etc/httpd/conf.modules.d/00-lua.conf
/etc/httpd/conf.modules.d/00-mpm.conf
/etc/httpd/conf.modules.d/00-optional.conf
/etc/httpd/conf.modules.d/00-proxy.conf
/etc/httpd/conf.modules.d/00-systemd.conf
/etc/httpd/conf.modules.d/01-cgi.conf
/etc/httpd/conf.modules.d/README
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/magic
/etc/httpd/logs
/etc/httpd/modules

//查询rpm包相关的配置文件

[root@localhost ~]# rpm -qc httpd
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/userdir.conf
/etc/httpd/conf.d/welcome.conf
/etc/httpd/conf.modules.d/00-base.conf
/etc/httpd/conf.modules.d/00-dav.conf
/etc/httpd/conf.modules.d/00-lua.conf
/etc/httpd/conf.modules.d/00-mpm.conf
/etc/httpd/conf.modules.d/00-optional.conf
/etc/httpd/conf.modules.d/00-proxy.conf
/etc/httpd/conf.modules.d/00-systemd.conf
/etc/httpd/conf.modules.d/01-cgi.conf
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/magic
/etc/logrotate.d/httpd
/etc/sysconfig/htcacheclean

//查询配置文件或命令来自于哪个rpm包

[root@localhost ~]# rpm -qf /etc/httpd/conf.d/autoindex.conf
httpd-2.4.37-47.module_el8.6.0+1111+ce6f4ceb.1.x86_64
[root@localhost ~]# rpm -qf /usr/share/httpd/icons/small/uu.png
httpd-2.4.37-47.module_el8.6.0+1111+ce6f4ceb.1.x86_64

//查询未安装的软件包会产生哪些文件

[root@localhost ~]# rpm -qlp /mnt/AppStream/Packages/samba-vfs-iouring-4.15.5-0.el8.x86_64.rpm
/usr/lib/.build-id
/usr/lib/.build-id/27/459288a95cff746c550db23429ea2cf654c69d
/usr/lib64/samba/vfs/io_uring.so
/usr/share/man/man8/vfs_io_uring.8.gz

//查询未安装的软件包会产生哪些文件

[root@localhost ~]# rpm -qip /mnt/AppStream/Packages/samba-vfs-iouring-4.15.5-0.el8.x86_64.rpm
Name        : samba-vfs-iouring
Epoch       : 0
Version     : 4.15.5
Release     : 0.el8
Architecture: x86_64
Install Date: (not installed)
Group       : Unspecified
Size        : 26687
License     : GPLv3+ and LGPLv3+
Signature   : RSA/SHA256, Sun Feb  6 01:15:09 2022, Key ID 05b555b38483c65d
Source RPM  : samba-4.15.5-0.el8.src.rpm
Build Date  : Sat Feb  5 15:16:48 2022
Build Host  : x86-02.mbox.centos.org
Relocations : (not relocatable)
Packager    : CentOS Buildsys <bugs@centos.org>
Vendor      : CentOS
URL         : https://www.samba.org
Summary     : Samba VFS module for io_uring
Description :
Samba VFS module for io_uring instance integration.

###9.4 RPM包升级
rpm -Uvh /PATH/TO/NEW_PACKAGE_FILE //如果装有老版本的,则升级;否则,则安装
rpm -Fvh /PATH/TO/NEW_PACKAGE_FILE //如果装有老版本的,则升级;否则,退出
–oldpackage:降级

[root@localhost ~]# rpm -Uvh /mnt/AppStream/Packages/wget-1.19.5-10.el8.x86_64.rpm 
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]package wget-1.19.5-10.el8.x86_64 is already installed
[root@localhost ~]# rpm -Fch /mnt/AppStream/Packages/wget-1.19.5-10.el8.x86_64.rpm 

升级注意事项:

不要对内核做升级操作
Linux支持多内核版本并存,因此,可直接安装新版本内核
如果原程序包的配置文件安装后曾被修改,升级时,新版本提供的同一个配置文件并不会直接覆盖老版本的配置文件,而把新版本的文件重命名(FILENAME.rpmnew)后保留
###9.5 RPM包卸载
//语法:rpm -e PACKAGE_NAME

//先查询, 然后卸载

[root@localhost ~]# rpm -qa | grep vsftpd
vsftpd-3.0.3-35.el8.x86_64
[root@localhost ~]# rpm -e vsftpd
[root@localhost ~]# rpm -qa | grep vsftpd
[root@localhost ~]# 

注意:如果其他包依赖于要卸载的包,这个被依赖的包是无法卸载的,除非强制卸载,强制卸载后依赖于这个包的其他程序将无法正常工作
#yum工具的使用
###1. rpm的弊端
前面我们讲了下rpm,那么rpm有什么弊端呢?其弊端是显而易见的,当用rpm安装软件时,若遇到有依赖关系的软件,必须先安装依赖的软件才能继续安装我们要安装的软件,当依赖关系很复杂的情况下,这种安装方式就很让人头疼,所以我们需要另一种安装方式来解决这个问题,今天我们要来学习的就是这样一个工具–yum
###2. yum的优劣势
yum有什么优势呢?yum最大的优势就是能够解决rpm的依赖问题,yum能够自动解决软件安装时的依赖关系。
当然了,有优势就有劣势,人无完人嘛,软件也是一样的,yum的缺陷就是如果在未完成安装的情况下强行中止安装过程,下次再安装时将无法解决依赖关系,Fedora22+、redhat7和centos7等可以通过手动安装dnf工具来解决此问题。
dnf是redhat7上用来代替yum的一个工具,其存在的意义就是处理yum的缺陷,但其用法与yum是完全一样的,甚至连选项都是一样的,你可以理解为dnf就是yum,只是换了个名字而已。所以说只要学会了yum就自然会dnf,大家不用担心学了yum又要去学dnf之类的问题
###3. 什么是yum及其作用
那么什么是yum呢?yum是yellowdog update manager的简称,它能够实现rpm管理的所有操作,并能够自动解决各rpm包之间的依赖关系。yum是rpm的前端工具,是基于rpm来实现软件的管理的一个工具。
你不能用yum去管理windows的exe程序包,也不能用yum去管理ubuntu的deb程序包,只能用yum来管理redhat系列的rpm包
###4. 挂载光盘
插入光盘
执行以下命令

[root@localhost ~]# mount /dev/cdrom /mnt
mount: /mnt: /dev/sr0 already mounted on /run/media/roo/CentOS-Stream-8-x86_64-dvd.
[root@localhost ~]# ls /mnt/
AppStream  BaseOS  EFI  LICENSE  TRANS.TBL  images  isolinux  media.repo
[root@localhost ~]# 

###5. yum的原理
yum的工作需要两部分来合作,一部分是yum服务器,另一部分就是client的yum工具。下面分别介绍两部分工作原理。

  • yum服务器端工作原理
    所有要发行的rpm包都放在yum服务器上以提供别人来下载,rpm包根据kernel的版本号,cpu的版本号分别编译发布。yum服务器只要提供简单的下载就可以了,ftp或者http的形式都可以。yum服务器有一个最重要的环节就是整理出每个rpm包的基本信息,包括rpm包对应的版本号、conf文件、binary信息,以及很关键的依赖信息。在yum服务器上提供了createrepo工具,用于把rpm包的基本概要信息做成一张“清单”,这张“清单”就是描述每个rpm包的spec文件中信息。

  • client端工作原理
    client每次调用yum install或者search的时候,都会去解析/etc/yum.repos.d下面所有以.repo结尾的配置文件,这些配置文件指定了yum服务器的地址。yum会定期去更新yum服务器上的rpm包清单,然后把清单下载保存到yum客户端自己的cache里面,根据/etc/yum.conf里配置(默认是/var/cache/yum下面),每次调用yum装包的时候都会去这个cache目录下去找清单,根据清单里的rpm包描述从而来确定安装包的名字、版本号、所需要的依赖包等,然后再去yum服务器下载rpm安装。(前提是不存在rpm包的cache)
    ###6. yum的配置文件
    配置文件有哪些:
    /etc/yum.conf 作用:为所有仓库提供公共配置
    /etc/yum.repos.d/*.repo 作用:为仓库的指向提供配置
    yum的repo配置文件中可用的变量:
    $releaseversion:当前OS的发行版的主版本号
    $arch:平台类型
    b a s e a r c h :基础平台为 y u m 定义 r e p o 文件: R e p o N a m e ] :仓库名称 n a m e :描述信息 b a s e u r l :仓库的具体路径,接受以下三种类型 f t p : / / h t t p : / / f i l e : / / / e n a b l e d :可选值{ 1 | 0 }, 1 为启用此仓库, 0 为禁用此仓库 g p g c h e c k :可选值{ 1 | 0 }, 1 为检查软件包来源合法性, 0 为不检查来源如果 g p g c h e c k 设为 1 ,则必须用 g p g k e y 定义密钥文件的具体路径 g p g k e y = / P A T H / T O / K E Y v i m / e t c / y u m . c o n f c a c h e d i r = / v a r / c a c h e / y u m / basearch:基础平台 为yum定义repo文件: Repo_Name]:仓库名称 name:描述信息 baseurl:仓库的具体路径,接受以下三种类型 ftp:// http:// file:/// enabled:可选值{1|0},1为启用此仓库,0为禁用此仓库 gpgcheck:可选值{1|0},1为检查软件包来源合法性,0为不检查来源 如果gpgcheck设为1,则必须用gpgkey定义密钥文件的具体路径 gpgkey=/PATH/TO/KEY vim /etc/yum.conf cachedir=/var/cache/yum/ basearch:基础平台为yum定义repo文件:RepoName]:仓库名称name:描述信息baseurl:仓库的具体路径,接受以下三种类型ftp://http://file:///enabled:可选值{10},1为启用此仓库,0为禁用此仓库gpgcheck:可选值{10},1为检查软件包来源合法性,0为不检查来源如果gpgcheck设为1,则必须用gpgkey定义密钥文件的具体路径gpgkey=/PATH/TO/KEYvim/etc/yum.confcachedir=/var/cache/yum/basearch/$releasever //缓存目录
    keepcache=0 //缓存软件包, 1启动 0 关闭
    debuglevel=2 //调试级别
    logfile=/var/log/yum.log //日志记录位置
    exactarch=1 //检查平台是否兼容
    obsoletes=1 //检查包是否废弃
    gpgcheck=1 //检查来源是否合法,需要有制作者的公钥信息
    plugins=1 //是否启用插件
    tolerant={1|0} //容错功能,1为开启,0为关闭,当设为0时,如果用yum安装多个软件包且其中某个软件包已经安装过就会报错;当设为1时,当要安装的软件已经安装时自动忽略
    installonly_limit=5
    bugtracker_url

metadata_expire=90m //每小时手动检查元数据

in /etc/yum.repos.d //包含repos.d目录

###7. yum仓库管理
###7.1 yum本地仓库
挂载光盘参照本章第4部分内容
复制光盘内容到yum服务器

[root@localhost ~]# mkdir /opt/myrepo
[root@localhost ~]# cp -r /mnt/* /opt/myrepo/
[root@localhost ~]# ls /opt/myrepo/
addons  EULA              GPL     isolinux  media.repo  repodata                 RPM-GPG-KEY-redhat-release
EFI     extra_files.json  images  LiveOS    Packages    RPM-GPG-KEY-redhat-beta  TRANS.TBL
  • 配置repo文件
[root@localhost ~]# cat /etc/yum.repos.d/zhan.repo
[AppStream]
name=222
baseurl=file:///mnt/AppStream
gpgcheck=0
enabled=1[BaseOS]
name=333
baseurl=file:///mnt/BaseOS
gpgcheck=0
enabled=1

清空yum本地缓存

[root@localhost ~]# dnf clean all
Failed to set locale, defaulting to C.UTF-8
34 files removed

检验yum本地仓库

[root@localhost ~]# dnf list all
......
yum.noarch                                             4.7.0-10.el8                                    baseos    
yum-utils.noarch                                       4.0.21-12.el8                                   baseos    
zenity.x86_64                                          3.28.1-2.el8                                    appstream 
zlib.i686                                              1.2.11-19.el8                                   baseos    
zlib.x86_64                                            1.2.11-19.el8                                   baseos    
zlib-devel.i686                                        1.2.11-19.el8                                   baseos    
zlib-devel.x86_64                                      1.2.11-19.el8                                   baseos    
zsh.x86_64                                             5.5.1-10.el8                                    baseos    
zsh-html.noarch                                        5.5.1-10.el8                                    appstream 
zstd.x86_64                                            1.4.4-1.el8                                     appstream 
zstd.x86_64                                            1.4.4-1.el8                                     AppStream 
zziplib.i686                                           0.13.68-9.el8                                   appstream 
zziplib.i686                                           0.13.68-9.el8                                   AppStream 
zziplib.x86_64                                         0.13.68-9.el8                                   appstream 
zziplib.x86_64                                         0.13.68-9.el8                                   AppStream 
zziplib-utils.x86_64                                   0.13.68-9.el8                                   appstream 
zziplib-utils.x86_64                                   0.13.68-9.el8                                   AppStream 
[root@localhost ~]# 

http://www.ppmy.cn/news/286714.html

相关文章

软件包管理

如果我们花些时间在 Linux 社区里,我们会得知很多针对, 类如在众多 Linux 发行版中哪个是最好的(等问题的)看法。 这些集中在像这些事情上的讨论,比方说最漂亮的桌面背景(一些人不使用 Ubuntu, 只是因为 Ubuntu 默认主题颜色是棕色的!)和其它的琐碎东西,经常变得非常无聊…

软件流程和管理(一):软件管理概述

目录 1. 项目管理的方法和标准 1.1 Waterfall 1.2 Agile 1.3 结构化的项目管理方法&#xff0c;如​编辑等 1.4 选择合适的项目管理方法 2. 项目的成功与失败 2.1 导致成功的因素 3. 项目筛选以及从哪里开始 4. 项目初始化 4.1 商业案例&#xff08;Business Case&am…

Linux系统软件管理

本文以CentOS7.9为例&#xff0c;分别使用RPM安装、解压安装和YUM三种安装方式&#xff0c;安装几个常用的软件如JDK、Tomcat、MySQL… 1、RPM命令的使用 RPM 是Red-Hat Package Manager&#xff08;红帽软件包管理器&#xff09;的缩写&#xff0c;这一文件格式名称虽然打上了…

【linux】软件管理

linux软件管理 文章目录 linux软件管理桥接模式下配置虚拟机连接互联网nmcli相关命令windows和linux之间的FTPlinux中的软件包类型rpm相关命令搭建本地软件仓库测试本地仓库重新挂载仓库到http服务器上设置仓库镜像开机自动挂载 dnf相关命令配置EPEL&#xff08;Extra Packages…

安卓手机管理_安卓必备!!一个小工具干掉所有乱搞的APP,手机速度瞬间提升,管理后台应用...

写在前面 黑科技分享会&#xff0c;每天会为你带来最实用的黑科技分享&#xff01; 说明 &#xff1a;今天更新软件适用于 安卓 获取方式见文章末尾 安卓手机虽然很多软件都可以随便下载使用&#xff0c;用起来很爽。但是安卓手机对应用的管理的不严格也导致了很多问题&#xf…

APP管理系统

/ /APP管理系统 学号:xxxxxxxxxxx 姓名:xxxxxx 2020年8月 / /#include<stdio.h> #include<stdlib.h> #include<string.h> #include<conio.h>#define USER "1234" #define PASSWORD "1234"struct AP…

安卓手机管理软件_老牌管理软件,已破,无广告,全功能不受限。安替换手机文件管理软件吧。...

正文共&#xff1a;1159字 11图预估阅读时间&#xff1a;3 分钟 写在前面&#xff1a; ★ 这里全部都是破解后的免费白漂版本&#xff1b; ★ 小编平常自己收集到不错的分享出来&#xff1b; ★ 大家需要什么软件请直接在下面留言&#xff1b; ★ 看免费电视电影点文末的“阅读…

centos常用命令

任务旧指令新指令使某服务自动启动chkconfig --level 3 httpd onsystemctl enable httpd.service使某服务不自动启动chkconfig --level 3 httpd offsystemctl disable httpd.service检查服务状态service httpd statussystemctl status httpd.service &#xff08;服务详细信息&…

多线程爬取毛豆新车

#运用多线程爬取详情页 import requests from lxml import etree from queue import Queue import threading import json num0 #设置每一页的链接网址class shengchanshang(threading.Thread):def __init__(self,car_queue):threading.Thread.__init__(self)self.car_queue c…

2016年中国的SaaS服务商企业研究

近年来&#xff0c;随着中国人口红利的消退及移动互联网红利的凸显&#xff0c;让中国的To C创业&#xff0c;尤其是O2O领域的创业经历了一波高潮。2015年末&#xff0c;一场“资本寒冬”让O2O创业趋于理性&#xff0c;但SaaS及To B领域的创业却迎来了高潮&#xff0c;因此2015…

【CC评网】2013.第41周 不求排版,简单就好

书单 碰上国庆&#xff0c;加上这周&#xff0c;消化掉几本书&#xff1a; 《软件随想录》&#xff1a;Joel的随想录&#xff0c;也就是他Blog上的文章的摘选&#xff1b;整本书看下来轻松&#xff1b;写了篇读书笔记[传送门]&#xff1b; 《中国在梁庄》&#xff1a;这本书描述…

【CC评网】2013.第44周 把握每天的第一个小时

【CC评网】2013.第44周 把握每天的第一个小时 更简单的格式 终于投入到markdown的怀抱。让博客的写作回归到内容本身&#xff0c;同时也能保证阅读的良好体验&#xff1b;如果有心情&#xff0c;写个js&#xff0c;提取h3 h2标题组成一份内容目录&#xff0c;就更友好了&#x…

【CC评网】2013.第38周 要阅读 要有好工具

要阅读&#xff0c;要有好工具 Reeder终于在ipad上推出了第二代版本&#xff0c;终于脱离了Google reader而独立存在&#xff1b; 自从Google reader关闭之后&#xff0c;我就在各种支持rss的阅读器中游荡&#xff0c;却总是找不到落脚的地方&#xff1b; 多看阅读APP做的也不错…

中国企业软件的出路

申明&#xff1a;本篇文章大部分摘自广证恒生新三板研究公众号的一篇文章&#xff0c;大家查众荟信息就能找到。 我过去说过&#xff1a;企业服务火&#xff0c;不是企业软件火。企业软件不值钱&#xff0c;我看好业务it甲乙一体化&#xff0c;以订单、采购、分销、支付、金融信…

《平台战略:正在席卷全球的商业模式革命》有感

一、读后感 虽然商业模式方面小白一枚&#xff0c;但深感 此书写的十分赞&#xff0c;深入浅出剖析平台战略的商业模式&#xff0c;如何做大做强。其中的例子贴切易懂。匹配当前众多的超级平台&#xff0c;中兴平台等&#xff0c;无不符合平台战略的商业模式。 平台战略的商业模…

【CC评网】2013.第39周 漂亮的作息表

作息表 网上看到一份夏令时的作息表&#xff0c;让人羡慕不已&#xff1a; 5&#xff1a;00 起床——迷糊5分钟&#xff0c;喝500ML白开水&#xff0c;坐马桶看Google reader 5&#xff1a;20 小区6KM&#xff08;大约25min—30min&#xff09;&#xff0b;100个俯卧撑&#xf…

对话驴评网CEO崔继蓉:在线旅游的前途在移动端

携程在去年将自己的酒店点评、目的地探索和社区服务单独拿出来&#xff0c;成立了子公司驴评网&#xff0c;以提供完整的在线旅行信息服务。驴评网的CEO崔继蓉女士在与雷锋网的对话中&#xff0c;也谈及在线旅游的机遇和挑战&#xff0c;认定在线旅游只有凭借移动互联网才能取得…

网络爬虫(httpwebrequest)驴评网信息为例

之前写过一篇关于用webBrowser抓取动态网页信息的随笔。正如文中提到的&#xff0c;速度是硬伤&#xff0c;并且如果是非动态信息则不必这么麻烦&#xff0c;最近正好有一需求&#xff1a;抓取“驴评网”上的信息1、所有的州、国家、省、市、区名称2、该市的所有景点信息&#…

【CC评网】2013.第42周 话说时间管理

时间管理 工作几年之后&#xff0c;大家都会有意识的培养时间管理的概念&#xff1b;但如何真正做到位&#xff0c;并持续坚持&#xff0c;并不是一件容易的事&#xff1b; 虽然关注时间管理已有几年&#xff0c;但目前我对于时间的利用并不高效&#xff1b; 理论上的东西就是那…

华润置地php面试题_华润置地有限公司面试攻略,面试题,面试技巧及流程(附笔试,评论,薪资)-金针菇企评网...

面试职位&#xff1a;营销 面试城市&#xff1a;北京 面试问题&#xff1a;第一、&nb... 面试时间&#xff1a;2013-10 前前后后忙乎了半个月&#xff0c;我的华润和中海面试也告一段落&#xff0c;现在将俩家企业都到了最终等待通知的阶段&#xff0c;回想这段时间的经历&…
最新文章