linux 笔记--软件管理

C语言:源代码--编译(二进制格式)

脚本:解释器(二进制程序)

程序=指令+数据

程序的组成部分:
    二进制程序(/bin /sbin)、库(共享库和自身的库/lib)、配置文件(/etc)、帮助文件(/usr/share/man)

软件包管理:
    把二进制程序,库文件,配置文件,帮助文件,打包成一个文件并生成数据库,追踪所安装的每一个文件
    软件包管理器的核心功能:1.制作软件包 2.安装、卸载、升级、查询、校验

RedHat、SUSE:rpm
Debian:dpt

依赖关系
      前端工具:yum 和 apt-get:自动解决软件的依赖关系
    后端工具:rpm 和 dpt

rpm包命名:例:zlib-1.2.3-29.el6.x86_64.rpm 和 zlib-devel-1.2.3-29.el6.x86_64.rpm
    主包:zlib-1.2.3-29.el6.x86_64.rpm
    子包:zlib-devel-1.2.3-29.el6.x86_64.rpm
    命名格式:
    包名(zlib或zlib-devel)-版本号(1.2.3)-发行号(29).平台架构(el6.x86_64)若平台架构为noarch就表示该软件无论用在哪个平台都可以
    版本号(1.2.3):主版本号.次版本号.发行号
        主版本号:有什么重要的改进
        次版本号:某个子功能有改进
        发行号:修正部分bug,调整了一下功能
    注:在安装软时一定要注意平台架构的匹配 ,uname -a或-r 查看硬件架构

rpm命令:安装、查询、卸载、升级、校验、数据库的重建、验证数据包
    1.安装:
    -i 指定文件路径
    -h 以#显示进度,每一个#代表2%
    -v 显示详细过程
    -vv 显示更详细的过程
    一般都一起使用 :rpm -ivh /patn/
     --nodeps 忽略依赖关系,但可能会导致软件无法运行
    --force 强行安装可以实现重装或降级
    2.查询:
    -q 查询指定的软件是否已经安装(-q 后面跟软件名,不用加版本号及后面的)
    -qa 查询已经安装的所有软件包
    -qi 查询指定软件包的详细信息
    -ql 查询指定软件包安装生成的文件列表
    -qf 查询指定的文件是由那个rpm包生成的
    3.升级:
    -Uvh 升级指定的软件(有新版本就升级安装,没有就安装指定的软件)
    -Fvh 升级指定软件(有新版本就升级安装,没有就不安装指定的软件)
    -Uvh --oldpackage 降级安装
    4.卸载:
    -e 卸载指定软件名(但该软件不能被依赖)
    --nodeps 忽略依赖关系强制卸载
    5.校验:
    -V 校验指定的软件名
    6.重建数据库:
    --rebuilddb 无论有没有数据库都重建
    --initdb 初始化数据库(有就不重建,没有才建立)
    7.检验来源合法性及软件完整性:
    -K 软件包 (dsa、gpg:验证来源名的合法性及签名、--nosignature:略过此项  sha1、md5:验证软件包完整性 --nodigest:略过此项)
    --import /etc/pki/rpm-gpg/RPM-GPG-KEY-readhat-release :导入密匙文件 (RH5)

yum 仓库中的元数据文件:
    安装镜像文件中:
        centos6:repodata文件里面
        RedHat5:/server/repodata文件里面
    ***.primary.xml.gz 中记录了那些信息:
        1.所有rpm包的列表
        2.所有软件的依赖关系
        3.每个rpm包安装生成的文件列表
    ***.filelists.xml.gz
        1.当前仓库中的所有rpm包的所有文件列表
    ***.other.xml.gz
        1.额外信息,rpm包的修改日志
    ***.repomod.xml
        1.记录上面三个文件的时间戳和校验和
    ***.comps.xml
        1.rpm包的分组信息

yum 命令:
    list:yum仓库中rpm列表 还可以接相应参数 all全部 avai可用的 able没有安装的 installed已经安装的 updates可用升级的
    clean:清理缓存
    repolist:显示repo列表及简要信息 也可以跟相应的参数 all全部 enabled默认的 disabled禁用的
    install:安装 后面直接跟软件名
    updata:升级
    updata to:修改为指定版本(可用于降级)
    remove :卸载且将依赖的软件一起卸
    info:软件包信息
    provides:查看指定的文件是由哪个包安装生成的
    还有一些yum组的命令:groupinfo  grouplist  groupinstall  groupremove  groupupdata

如何自定义一个yum创库:
    配置文件夹:/etc/yum.repos.d/
    1.首先在配置文件夹中创建一个*.repo结尾的文件
    2. 在文件中编辑:  [库名]
               name=全名
               baseusr=yum库的准确位置 一般有三种:ftp://  http://  file:///
               enabled=1或0 一般为1
               gpgcheck=1或0 一般为0
                (这个选项可以不写)gpgkey= file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    3.yum makecache 刷新repos

时间: 2024-10-18 02:30:03

linux 笔记--软件管理的相关文章

linux yum软件管理

yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载.安装.yum提供了查找.安装.删除某一个.一组甚至全部软件包的命令,而且命令简洁而又好记. yum的命令形式一般是如下:yum [options] [command] [package ...]其中的[opti

linux之软件管理

说到软件管理大家都不陌生,在windows下大多都是直接下载.exe文件直接安装即可,下载从控制面板卸载,那么我们讨论下linux系统下如何安装和卸载常见软件. 软件包管理概述 mount -o loop  /share/rhel-server-6.4-x86_64-dvd.iso  /mnt/ -o后面接属性    loop 属性 只有镜像文件才用次属性 df -h rpm包管理方式和编译安装的优点:1.易于更新已安装的软件包:2.易于保护配置文件:(不覆盖)3.易于跟踪已安装文件 rhel6

linux 文本编辑 软件管理

gerp 命令 : grep是强大的文本搜索工具,它对文本文件逐行查看,如果找到匹配的模式,就会打印出包含此模式的所有行,并且grep支持正则表达式 1  grep 选项 模式 被查找文件 : grep root /etc/passwd ls /var/log/|grep log     # 查找  /var/log/  下的 带log 的文件    | 是管道符 gret 常用参数 -c 不打印匹配的行的内容,而是打印匹配的行数 grep -c sudo /var/log/secure -i

【linux】软件管理命令-- rpm

RPM(红帽软件包管理器) 安装软件 rpm -ivh filename.rpm 升级软件 rpm -Uvh filename.rpm 卸载软件 rpm -e filename.rpm -i 安装一个新的rpm包 -U   升级某个rpm包,若未安装,则进行安装 -F   升级某个rpm包,若未安装,则放弃安装 --force   强制安装rpm包 --nodeps  忽略依赖关系 -v   显示安装过程的详细信息 -h   以#号显示安装进度 查询系统中已安装的所有rpm软件包 rpm -qa

Linux软件管理 - RPM工具

Linux软件管理 - RPM工具 文本关键字:Linux.软件管理.RPM工具.软件依赖 一.RPM介绍 1. RPM含义 RPM的全称是:Red Hat Package Manager,是RPM软件包管理器.在Linux系统中对应命令是rpm,我们看到名称中含有Red Hat,也就说明主要是在Red Hat发行版中使用的,除此之外还包括和Red Hat最亲近的CentOS,以及其他一些主流发行版:SuSE.Fedora等. 2. RPM特点 rpm也是一种打包格式,使用rpm工具来进行管理

Linux软件管理 - YUM工具

Linux软件管理 - YUM工具 文本关键字:Linux.软件管理.YUM工具.解决依赖 一.YUM介绍 1. YUM含义 YUM的全称是:Yellowdog Updater Modified,是一个基于RPM包管理的Shell前端软件包管理器.由于是基于RPM包管理器,那么使用的场景也就和RPM类似,主要支持的Linux操作系统为:RedHat.CentOS.Fedora.YUM还提供了图形化前端工具:yumex和kyum,需要在yum正常工作的前提下使用. 2. YUM特点 使用pytho

Linux软件管理 - 编译安装

Linux软件管理 - 编译安装 文本关键字:Linux.软件管理.configure.make.make install 一.环境准备 很多软件下载之后是一个源码包,是不能够直接运行的,需要先进行编译安装,生成可执行程序.在进行编译时,需要先使用yum安装编译工具. 1. 核心组件 必须要安装的就是gcc(GNU Compiler Collection)GNU编译器套件,其中包含了C.C++.Objective-C.Fortran.Java.Ada.Go语言前端,也包含了对应语言的库,几乎可以

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

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

Linux 程序设计学习笔记----进程管理与程序开发(下)

转载请注明出处:http://blog.csdn.net/suool/article/details/38419983,谢谢! 进程管理及其控制 创建进程 fork()函数 函数说明具体参见:http://pubs.opengroup.org/onlinepubs/009695399/functions/fork.html 返回值:Upon successful completion, fork() shall return 0 to the child process and shall re