知识内容:

1.软件包介绍

2.基本软件包安装

3.yum软件包管理

4.apt软件包管理

5.源码安装

一、软件包介绍

1.软件包分类

  • 压缩包形式:类似.tar.gz结尾的文件(源码)
  • rpm: rpm是RedHat package Manager的缩写,是一种软件包管理标准(文件后缀名为.rpm)
  • deb:deb是Debian package的缩写,是Debian和Ubuntu系列发行版本上使用的软件包格式(文件后缀名为.deb)

注:Ubuntu中的软件包格式为.deb,默认不支持rpm包,若要安装rpm包,应使用alien工具(需自行安装)将.rpm转化成.deb 

2.不同软件包对应的安装方式

  • 压缩包:编译安装
  • rpm:rpm命令、yum命令
  • deb:dpkg命令、apt命令

二、基本软件包安装

1.deb软件包

(1)deb软件包介绍

deb软件包需要使用dpkg工具进行管理,dpkg本身就是一个底层的工具;而apt则是位于其上层的工具,用于从远程获取软件包以及处理复杂的软件包关系

(2)dpkg使用

1 dpkg -l 软件包名  查看软件包的简要信息
2 dpkg -s 软件包名 查看软件包的详细信息
3 dpkg -i 软件包名 安装软件包
4
5 卸载软件包
6 dpkg -r 软件包名 -> 保留配置文件
7 dpkg -p 软件包名 -> 删除配置文件

2.rpm软件包

(1)rpm文件名

rpm文件名分为5部分,依次是:

  • name,表示这个rpm软件包的名称
  • version,表示这个rpm软件包的版本编号
  • release,表示这个rpm软件包的版本发布次数(修正号码)
  • architectures,表示这个rpm软件包适用于哪些平台
  • rpm,表示这个rpm软件包的文件扩展名

示例:

注:release最后一位如果是奇数表示软件包为测试版本,偶数表示为发行版本,例如最下面一行的zsh-4.3.11-4.el6.centos.2.x86_64.rpm为测试版本

(2)rpm软件包的安装与移除

rpm软件安装与移除工作中经常使用的选项:

  • –i:安装(Install)软件。
  • –U:升级(Upgrade)旧版本的软件。
  • –e:移除/删除(Erase)软件。
  • –v:显示详细的处理信息。
  • –h:显示安装进度。卸载不能用

实例:

 rpm -i 软件包名/网址   安装软件
rpm -ivh 软件包名 安装软件(显示详细信息及进度) rpm -e 软件包名 卸载\删除软件

注:也可以使用wget命令从网址上下载安装包再使用rpm命令安装

(3)查看rpm软件包中的信息

常用的查询已安装的软件包信息的命令:

  • rpm -q: 显示操作系统上安装的某个软件包
  • rpm –qa:显示目前操作系统上安装的全部软件包,其中q是query(查询)的第1个字母,a是all(全部)的第1个字母
  • rpm –qf 文件名:显示这个文件是由哪个软件包安装的,f是file(文件)的第1个字母。
  • rpm –qi 软件包名:显示这个软件包的信息,i是information(信息)的第1个字母
  • rpm –ql 软件包名:列出这个软件包中所包含的全部文件,其中l是list的第1个字母

实例:

 rpm -q dhcp  显示已安装的dhcp
rpm –qa | grep dhcp 列出软件包名中包含dhcp的软件包的信息
rpm –qf /bin/tar 列出安装/bin/tar文件的软件包
rpm –qi tar-1.14-10.RHEL4 列出tar-1.14-10.RHEL4这个软件包的详细信息
rpm –ql tar p数据包 列出tar-1.14-10.RHEL4这个软件包中所包含的全部文件

(4)rpm安装软件的缺点

rpm包安装软件的时候不会自动解决软件之间的依赖关系,需要手动去下载依赖的软件包安装

3.run与bin二进制包软件包安装

run与bin二进制包安装方法类似,如下所示:

 (1)为文件增加可执行属性
sudo chmod +x 文件名.run (2)在终端中执行该文件
sudo ./文件名.run

如果要卸载用run安装包安装的软件,可以到安装目录中执行此uninstall脚本:

 sudo ./uninstall

三、yum软件包管理

1.yum简介

yum的功能:yum是Yellow dog Updater, Modified的缩写,目的就是为了解决RPM的依赖关系的问题,方便使用者进行软件的安装、升级等等工作

2.yum配置
yum的配置一般有两种方式,一种是直接配置/etc目录下的yum.conf文件,另外一种是在/etc/yum.repos.d目录下增加.repo文件。
本地yum配置

 # mount /dev/cdrom /mnt #挂载光盘到/mnt目录
# cd /etc/yum.repos.d/
# ls
rhel-source.repo
# cp rhel-source.repo rhel.repo #拷贝一份配置文件
vi rhel.repo
#编辑配置文件如下:
[local] # 模块名称,须修改不能与其他.repo文件中的重名
name=local yum # 名称随便起
baseurl=file:///mnt # 指定rpm仓库的位置(也可以为网络地址,网络地址的写法示例:协议名(http or https)://域名(mirror.centos.org)/地址)
enabled=1 # 1开启该配置,0为关闭
gpgcheck=1 # 1为校对软件 # 安装软件:
# yum install vsftpd httpd #安装vsftpd及httpd服务

详细配置yum:https://blog.csdn.net/qq_27754983/article/details/73693061

3.yum常用操作

 yum安装软件:
yum –y install 软件名
yum删除软件:
yum –y remove 软件名 yum安装组件:
yum –y groupinstall 组件名
yum删除组件:
yum –y groupremove 组件名 清除yum缓存:
yum clean all
yum查找软件包:
yum search

四、apt软件包管理

1.apt工具简介

apt是Debian Linux发行版中的软件包管理工具。所有基于Debian的发行版linux系统(例如Ubuntu)都使用这个包管理系统,

2.apt-get基本使用

(1)使用apt-cache命令查询软件包

 apt-cache pkgnames          列出当前所有可用的软件包
apt-cache search httpd 查找使用参数(可以使用正则模糊匹配)定义的软件包并列出该包的相关信息
apt-cache show 软件包名 查看指定名称的软件包的详细信息
apt-cache depends 软件包名 查看软件包所依赖的软件包
apt-cache rdepends 软件包名 查看软件包被那些包所依赖
apt-cache showpkg 软件包名 查看软件包的依赖关系信息
apt-cache policy 软件包名 显示软件包的安装状态和版本信息

(2)使用apt-get命令操作软件包

 apt-get update     获取最新的软件包列表
apt-get upgrade 更新当前系统所有已安装的软件包,并同时更新这些软件包所依赖的软件包
apt-get install 下载、安装软件包并自动解决依赖关系
apt-get remove 卸载指定的软件包
apt-get autoremove 自动卸载未使用的软件包
apt-get purge 卸载指定的软件包及其配置文件
apt-get source 下载软件包的源代码
apt-get clear 清理已下载的软件包
apt-get autoclean 删除已卸载的软件的软件包备份

五、源码安装

源码安装的步骤以python3.6安装为例,其他源码的安装方法和此类似

 (1)下载python3.6源码 -> 使用wget命令
在python官网上找到链接: https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz
下载源码:https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz (2)解压下好的源码
tar -xvf Python-3.6.5.tar.xz (3)cd到刚解压的目录后,对源文件进行编译安装(./configure: 添加编译参数 make: 编译 make install: 安装)
cd Python-3.6.5
./configure
make
make install (4)给Python3起一个别名
alias python=python3

linux操作系统4 软件包管理的更多相关文章

  1. 【one day one linux】linux下的软件包管理工具

    Linux 下的软件包管理工具 linux下的软件安装可以通过两种方式,一种是直接使用自带的软件包管理工具安装,另外一种通过编译源码安装. 1.软件包的种类 Red Hat和Fedora:redhat ...

  2. Linux常用命令——软件包管理

    Linux常用命令--软件包管理 Linux 模块依赖查询网址http://www.rpmfind.net/ ISO挂载 将所需ISO文件添加到虚拟机 建立挂载文件夹mkdir /mnt/cdrom ...

  3. linux 学习6 软件包管理 资料链接

    软件包管理 这一章看得比较随意 先大概记点东西. RPM安装很繁琐,因为依赖性,手动安装太麻烦. ______我觉得直接yum在线安装就好了,很直接方便. 但是要特别注意的地方 在用yum升级或者卸载 ...

  4. Linux常用命令-软件包管理工具-rpm

    命令简介 rpm(RPM Package Manager)是一个强大的命令行驱动的软件包管理工具,用来安装.卸载.校验.查询和更新 Linux 系统上的软件包. 语法格式 rpm [OPTION... ...

  5. linux的Yum软件包管理工具

    Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指定的服务器自动下载 ...

  6. linux RPM(红帽软件包管理器)和Yum软件仓库中常见的命令

    RPM(红帽软件包管理器)常用命令 安装软件:rpm -ivh filename.rpm 升级软件:rpm -Uvh filename.rpm 卸载软件:rpm -e filename.rpm 查询软 ...

  7. linux的RPM软件包管理工具

    RPM(Redhat Package Manage)原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎.逐渐受到其他发行版的采 ...

  8. LinuX操作系统基础------> 用户管理,grep搜索

    用户管理 用户组管理 字符管理和grep搜索 1.用户管理: LinuX是一个多用户,多任务的操作系统,可以让多个用户使用,这个账号可以帮助对用户进行追踪,必须在初始化的时候设置好自己的密码 1-1配 ...

  9. Linux学习笔记——软件包管理

    1.RPM包的管理 RPM软件包的一个例子: sudo-1.7.2p1-5.el5.i386.rpm 这个rpm包名包括软件名sudo,版本号1.7.2p1,发行号5.el5,和硬件平台i386 (1 ...

随机推荐

  1. 20155117王震宇 2016-2017-2 《Java程序设计》第七周学习总结

    教材学习内容总结 时间度量 格林尼治标准时间(GMT):现在GMT已不作为标准时间使用. 世界时(UT):借助观测远方星体跨过子午线而得,受地球自转速度影响. 国际原子时(TAI):铯原子辐射振动幅度 ...

  2. 洛谷 1020:导弹拦截(DP,LIS)

    题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹 ...

  3. HDU 4632 区间DP 取模

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4632 注意到任意一个回文子序列收尾两个字符一定是相同的,于是可以区间dp,用dp[i][j]表示原字 ...

  4. java二叉树排序实现

    原创:转载请注明出处 目的:想用java实现二叉树排序算法 思想:利用java中面向对象的思想,即: Tree:类 树根Tree:root //static所属于每一个Tree 左节点Tree:lef ...

  5. Spring Boot(5) 集成Hibernate 日志配置

    https://blog.csdn.net/ZNG_XP/article/details/78131809 https://blog.csdn.net/u011998835/article/detai ...

  6. 树莓派挂载和卸载U盘或移动硬盘

    通常我们在 /mnt 或 /media 目录下新建一个目录udisk作为挂载点 sudo mkdir /mnt/udisk 1.手动挂载: 挂载命令: sudo mount -o uid=pi,gid ...

  7. ARP命令详解

    ARP是一个重要的TCP/IP协议,并且用于确定对应IP地址的网卡物理地址.实用arp命令,我们能够查看本地计算机或另一台计算机的ARP高速缓存中的当前内容.此外,使用arp命令,也可以用人工方式输入 ...

  8. MySQLi基于面向对象的编程

    http://blog.csdn.net/koastal/article/details/50650500

  9. JMeter:生成漂亮的多维度的HTML报告

    JMeter:生成漂亮的多维度的HTML报告我们做性能测试的时候会经常使用一些性能测试工具,我个人比较喜欢Jmeter这个工具,但是JMeter这个工具在生成测试报告方面一直有所欠缺.但是JMeter ...

  10. nyoj 幸运三角形

    幸运三角形 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述 话说有这么一个图形,只有两种符号组成(‘+’或者‘-’),图形的最上层有n个符号,往下个数依次减一,形成倒 ...