软件管理

基本概念

1.程序:可执行的二进制文件,由指令和数据组成

2.链接库:二进制文件,不可执行(无执行入口),可被程序调用。

3.脚本:可执行文本文件,执行时由解释器转义成CPU可以执行的机器码。

4.编译:高级编程语言编写的代码,经过编译过程转译成CPU可识别的机器码(0、1)

5.编译过程:

1)检查程序语法

2)把程序代码转换成机器码

3)程序代码中若有使用其他链接库的机器码,则将其链接。

4)产生OS的相关信息;

5)存储为可执行文件

6.链接:将存储在链接库中的机器码存储到程序中

1)静态链接:执行期间,将机器码复制到执行文件中。

  优点:可独立使用;缺点:执行时需较多的内存空间、文件变大。

2)动态链接:只存储需要链接库的名称、版本及函数的符号等信息。执行时,根据链接信息,加载所需的链接库及机器码。

优点:体积小、占用内存小;缺点:无法独立使用,当程序移动到另一主机时,需保证另一主机有相同的链接库。

备注:linux基本使用动态链接库。

7.查询链接库:ldd

#ldd /bin/ls            #当程序采用动态链接时,查询程序执行时,需用到哪些链接库。

linux-gate.so.1 => (0x003b3000)
librt.so.1 => /lib/librt.so.1 (0x00518000)

显示格式:链接库名称 => 链接库的文件名(链接库加载到到内存的地址)

8.软件的依赖性

即软件执行时需要用到其他的组件(可能是程序、链接库或普通文件)

9.常用软件包类型

rpm包:.rpm格式,可使用rpm工具直接安装

源码包:gzip与bzip2压缩包,需使用源码编译安装

RPM软件包管理

RPM是RedHat Package Manager的缩写,也即使红帽软件包工具。提供一种可升级、具有强大查询功能、

支持安全验证的通用型linux软件包管理工具。

包格式:PACKAGE-VERSION-RELEASE.TYPE.rpm

1.安装RPM包

rpm -i [-v] [-h] FILES...

-v:显示信息信息

-h:显示进度

FILES:RPM文件的名称,支持URL形式:

   ftp://HOSTNAME/PATH/FILE   #FILE可使用通配

    http://HOSTNAME/PATH/FILE  #FILE不支持通配

2.升级与更新RPM包

1.升级:升级时,会自动删除旧版本,再安装新版本

#rpm -U [-v] [-h]  FILES...

2.更新:新版本覆盖旧版本上的文件。

#rpm -F [-v] [-h] FILES...

3.卸载软件包

#rpm -e PACKAGES...

3.查询软件包

rpm -q  包名     #查看指定软件包是否已经安装

rpm -qa           #查看系统中已安装的所有软件

rpm -qi 包名    #查询已安装软件包的详细信息

rpm -ql  软件名  #查找已安装软件的安装路径与文件列表

rpm -qc 软件名   #查询已安装软件的配置文件

rpm -qf 文件名   #查询指定文件为哪个软件所安装

3.安全验证

rpm -V   PACKAGES...      #检查软件包从安装到现在,是否有被异动过。

返回值及含义:

5      MD5hash值已经改变

S     文件大小已经改变

M     文件模板已经改变,包括:权限、类型等

D  设备文件的主/次设备号改变

L  链接文件的源已经改变

U 文件拥有者已改变

G 文件拥有组已改变

T 文件最后修改时间已改变

rpm -V --all 查询所有软件包的状态

YUM

yum是改进版的RPM软件管理器,YUM可以很好的解决RPM所面临的软件包依赖关系,在安装、更新或删除软件时,

YUM会自动帮你解决依赖关系。使用YUM安装软件时至少需要一个YUM源(用于存放RPM软件包的目录),用户可以

通过HTTP、FTP或本地目录的方式访问YUM源。

1.创建YUM源

前提:创建将所有RPM包

时间: 2024-12-19 13:07:54

软件管理的相关文章

linux入门基础——linux软件管理RPM

因为linux入门基础是基于CentOS讲解的,讲的是CentOS上的软件包管理.ubuntu的软件包管理有这些:ubuntu软件包管理,包管理指南,ubuntu软件包管理. linux软件管理:RPM软件包管理 源代码形式 绝大多数开源软件都是直接以源代码形式发布 源代码一般会被打包成tar.gz的归档压缩文件 程序源代码需要手动编译成二进制形式之后才能够运行使用 源代码基本编译流程: 1 ./configure   检查编译环境.相关库文件以及配置参数并生成makefile 2 make  

openSUSE13.1无法打开Yast的安装/移除软件管理软件的解决办法·(未解决,临时方法)

没有发现解决方案: 可用 sudo /sbin/yast2 用命令行的GUI替代...虽然差不多 决定一会update一下试试 openSUSE13.1无法打开Yast的安装/移除软件管理软件的解决办法·(未解决,临时方法),布布扣,bubuko.com

实验:使用SDM软件管理思科的路由器

在路由器上设置如下: router(config)#ip http server \\配置路由器成为HTTP服务器 router(config)#ip http secure-srever \\配置路由器为安全http服务器 router(config)#ip http authentication local \\配置路由器进行HTTP的访问进行认证,认证的安全是数据库 是本地认证. router(config)#username admin privlog password ccna \\在

关于软件管理和软件工程

刚刚开博,看了几篇关于软件管理 Or 软件工程的文章. 有同学混在一起谈不太好.如果谈管理,就是项目管理,如果谈工程,就是软件工程. 项目管理其实在不同领域之间差别不大,而软件工程是侧重领域的,但是一定程度来说,工程学又是一个多领域共通的一个学科. 这里面虽然有交叉但是侧重点不同.谈管理,那么就谈管理相关的,不要谈什么UML,这个是工程上的事情. 谈工程,那么就少涉及管理要素,虽然现实中工程的好坏很大程度上是受管理的制约. 谈问题,谈知识点,首先要把问题和知识点定性,想想这是管理的问题么?是工程

ubuntu软件管理

目前ubuntu系统主要有dpkg和apt两种软件管理方式两种区别如下 1.dpkg是用来安装.deb文件,但不会解决模块的依赖关系,且不会关心ubuntu的软件仓库内的软件,可以用于安装本地的deb文件.2.apt会解决和安装模块的依赖问题,并会咨询软件仓库, 但不会安装本地的deb文件, apt是建立在dpkg之上的软件管理工具. 一.APT命令安装 APT全称Advanced Packaging Tool,可以自动下载,配置,安装二进制或者源代码格式的软件包,因此简化了Linux系统上管理

linux软件管理(六)

[教程主题]:linux软件管理 [1]软件包管理 在系统管理中,软件包的管理是最重要的,是系统管理的基础的基础, 只有我们学会软件包的管理才能谈得上其它的应用. RPM RPM是软件管理程序,提供软件的安装.升级.查询.反安装的功能.优点:a.安装方便,软件中所有数据都经过编译和打包b.查询.升级.反安装方便缺点:a.缺乏灵活性b.存在相依属性 用法: rpm  参数   软件包 指令选项-i:安装.-U:升级安装,如果不存在也安装.-F:更新安装,如果不存在不安装.-v:查看信息.-h:有进

用软件管理习惯的试用

可能自控力不够,作为一个程序员,总想用软件来让自己培养习惯 接触过一些培养习惯的软件,扇贝(学英语,定时打卡),运动类软件(每天秀步数) 有时候也坚持过一段时间,但最终就被我那不可抗拒的小性子给毁了 我们这代人都比较焦虑(总觉得你们在背着我学习~(- ̄▽ ̄)-),每天刷微信,微博,qq ,头条,得到,据说罗胖说能解决我们的焦虑,好像有点效果,不过后来就变成了上个厕所也要听上10分钟,都不知道便便需不需要这么长时间. 如果真的可以用软件管理时间,它要有以下一些功能 1. 可以查看我每天都用哪些应用

chapter23:软件安装RPM,SRPM与YUM之(1)-软件管理器的简介

从前面我们看到,如果使用Tarball进行安装,每次安装时候都要检测系统,调车编译参数,实际的编译,最后还要看个人的喜好来设置软件安装的位置.这显得非常的复杂, 如果我们的Linux系统与软件公司的系统一样,那么他们可以先在自己的系统上编译好了后的可执行软件直接发布给用户.这有些类似于window的方法. 我们在安装时候再加上一些与这些程序相关的信息,将它建立成一个数据库,就可以对软件进行管理(安装,反安装,升级等),在Linux上面有两种这方面的,分别是centos,red hat的RPM 与

软件管理器简介

1.软件管理器的简介 众所周知,软件作者完成软件开发后将会以源代码(Source Code)的方式发布出来,每次我们需要安装软件时都要检测操作系统(operating system)与环境,设置编译参数进行编译,最后进行安装,过程 十分繁琐,而且对于不熟悉整个编译与安装过程的人来说,操作起来十分困难. 想群众之所想的各大Linux 发行版(distribution)研发出了相应的解决方案(solution),比较常见的是Red Hat的RPM,和Debin的DPKG两个软件管理器. Linux发