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

linux 软件包管理

 

redhat centos fedora  红旗     rpm yum(二进制软件包)

debian ubuntu     apt

sudo-1.7.2pl-5.el5.i386.rpm

软件名-版本号-发型号-硬件平台
硬件平台(不同的cpu)

i386  intel架构 32
i686  intel 64
ppc(power pc)

alpha

软件卸载:
rpm 在软件依赖关系方面没处理好
rpm -e --nodeps 软件名(不建议这样做)
当有依赖关系时应该连依赖一块卸载

安装:
rpm -ivh 软件名
-i 安装
-v 详细信息
-h  进度

挂载光盘:
mkdir /mnt/cdrom
mount /dev/cdrom  /mnt/cdrom

rpm -q 软件名

rpm -qa  查询所有的软件包

rpm -ivh --excludedocs 软件名  安装的时候不安装文档
         --prefix=dir 指定软件的安装目录   大多数rpm包不允许改变安装目录
         
         --test  安装测试,不实际安装  测试依赖,兼容性

1、覆盖安装:
rpm -ivh --replacepkgs 软件名
2、文件冲突:
比系统中的还要老?覆盖
rpm -ivh --replacefiles 软件名
3、未解决依赖关系
rpm -ivh --nodeps 软件名  强制安装(不考虑依赖的包,一般安装上也运行不了)

软件升级:
rpm -Uvh 软件全名

yum包管理(软件包可信任)
1、自动解决软件包依赖关系
2、方便的软件包升级

安装:
yum install 软件名
yum check-update 检查升级
yum list 软件源上的所有的软件包  安装,需要升级等提示
yum info  查询软件包信息  
yum remove 卸载软件包

rpm
-a 查询所有已经安装的软件包
-f 查询文件所属的软件包
-p 查询软件包
-i 显示软件包信息
-l 显示软件包中的文件列表
-d 显示被标注为文档的文件列表
-c 显示被标注为配置的文件的文件列表

示例:

查询文件(命令)所属的软件包:rpm -qf /etc/services     rpm -qf /bin/ls
重要的文件必须备份
查询软件包安装信息: rpm -qi samba
查询一个没有安装的软件包安装信息: rpm -qip samba
查询一个没有安装的软件包需要安装哪些文件: rpm -qpl samba
查看一个软件包在系统安装了那些文件:rpm -ql(p) 软件名

查询软件包的帮助文档:rpm -qd(p)
查询软件包的配置文件:rpm -qc(p)

实例文档: example

md5sum 软件路径/名称 生成软件的md5值

校验软件包自安装后文件的改变
rpm -V
5 文件的md5校验值
S 文件大小改变
L 连接文件
T 文件的创建时间
D 设备文件
U 文件的用户
G 文件的用户组
M 文件的权限

示例:
S.5....T.  c /etc/sudoers

软件包文件的提取
rpm2cpio 软件包 | cpio -idv  #提取所有文件
rpm2cpio 软件包 | cpio -idv ./etc/inittab
 
源代码安装
./configure 可以理解为 搜集系统信息  生成 makefile文件
建议指定安装目录,否则卸载的时候会很麻烦  /usr/local/(建议放在此目录下)
卸载的时候先把服务关闭,直接删除安装目录就行了
脚本安装:(shell,java脚本)

 

 

相关文章:

  • 【转】排名Top 16的Java实用类库
  • 繁杂产生利润 但与你无关-【软件和信息服务】2014.03
  • JSP合用html5 尝试(一)
  • 文件夹的一个小勾(复选框)
  • 外网主机访问虚拟机下的web服务器(NAT端口转发)
  • 什么是Web Service?
  • javascript学习之路之元素获取和设置属性
  • Mongo数据模型
  • linux目录结构,文件管理
  • 键盘ASCII码
  • 数据备份 rsyncd服务器
  • 奇葩属性:layout_weight 的解释及使用
  • DDoS***防御和分析
  • Oracle字符分隔函数(split)
  • 编译u-boot命令和u-boot常用命令
  • 【Leetcode】104. 二叉树的最大深度
  • angular2 简述
  • CSS选择器——伪元素选择器之处理父元素高度及外边距溢出
  • IndexedDB
  • k8s如何管理Pod
  • 反思总结然后整装待发
  • 前端学习笔记之观察者模式
  • 双管齐下,VMware的容器新战略
  • 字符串匹配基础上
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • ​queue --- 一个同步的队列类​
  • #git 撤消对文件的更改
  • #include<初见C语言之指针(5)>
  • (delphi11最新学习资料) Object Pascal 学习笔记---第5章第5节(delphi中的指针)
  • (论文阅读30/100)Convolutional Pose Machines
  • (南京观海微电子)——COF介绍
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • (转) RFS+AutoItLibrary测试web对话框
  • (转)linux下的时间函数使用
  • (转)甲方乙方——赵民谈找工作
  • (转)拼包函数及网络封包的异常处理(含代码)
  • .net 4.0发布后不能正常显示图片问题
  • .net 8 发布了,试下微软最近强推的MAUI
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .NET 反射的使用
  • .NET/C# 检测电脑上安装的 .NET Framework 的版本
  • .net对接阿里云CSB服务
  • @AliasFor注解
  • [ JavaScript ] JSON方法
  • [ 蓝桥杯Web真题 ]-布局切换
  • []error LNK2001: unresolved external symbol _m
  • [3D游戏开发实践] Cocos Cyberpunk 源码解读-高中低端机性能适配策略
  • [C#]无法获取源 https://api.nuge t.org/v3-index存储签名信息解决方法
  • [CISCN2019 华东南赛区]Web4
  • [COI2007] Sabor
  • [DevEpxress]GridControl 显示Gif动画
  • [HDOJ4911]Inversion
  • [HTML]HTML5实现可编辑表格
  • [MySQL FAQ]系列 -- 如何利用触发器实现账户权限审计