(以下内容是云课堂Linux课程的笔记,个人纯手工记录,课程以RedHat系列为主)

Linux系统下软件包的安装方式包括:源代码安装、本地二进制包安装(rpm命令手工安装)、在线二进制包安装(yum命令在线自动安装)。

第1节

1、软件包分为两种:

(1)源码包:使用C、或C++写的源代码,未编译成为计算机语言(tar.gz格式)

(2)二进制包(系统默认包):源代码经过编译之后的0101这样的计算机语言包

(Debian系列为deb格式;Redhat系列为rpm格式。两种格式的命令、配置文件保存位置基本都是一致的)

编译:把源代码翻译成为计算机可识别的二进制计算机语言。

2、源码包:

优点:开源,源代码可见;可以自由选择所需功能;编译安装,更适合自己的系统(源码包比二进制包可以提高5%的效率);卸载方便(把源码包安装目录直接删除即可彻底卸载)。

缺点:安装步骤较多,容易出现拼写错误;编译时间长;编译安装,若过程报错,新手很难解决。

3、二进制包:

优点:包管理简单,只需要几个命令行就可以实现安装、升级、查询、卸载;安装速度比源码包要快。

缺点:不可见源代码;功能选择不灵活;包的依赖性(由于依赖性,需要先装依赖包,才可以安装需要包)

第2节

2.1节 rpm命令管理

1、包全名(包文件全称)与包名(包文件简称)

包全名:操作的包时没有安装的软件包时,使用包全名。而且注意路径。

包名:操作已安装软件包,使用包名。是搜索/var/lib/rpm中的数据库。

2、RPM包具有依赖性,必须按照依赖性安装,较为麻烦

2.2节 rpm命令管理-安装、升级、卸载

(rpm命令用于安装下载到本地的rpm包、或者光盘内的rpm包,但是各个包的依赖性,使得安装非常复杂。俗称手工rpm包安装)

1、rpm安装

rpm -ivh 包全名

选项: -i 安装(install)  -v 显示详细信息(verbose)

-h 显示进度(hash)

2、rpm升级

rpm -Uvh 包全名

选项:-U 升级(upgrade)

3、rpm卸载

rpm -e 包名

选项:-e 卸载(erase)

2.3节 rpm命令管理-查询

1、查询是否已经安装

rpm -q 包名

选项:-q 查询(query)

2、查询所有已安装包

rpm -qa

选项:-a 所有(all)

3、查询软件包详细信息

rpm -qi 包名

选项:-i 查询软件信息

4、查询未安装包中文件安装位置

rpm -qlp 包全名

选项:-p 查询未安装包的信息(package)包括文件的安装位置

5、查询系统文件属于哪个包

rpm -qf 系统文件名

选项:-f 查询系统文件属于哪个软件包(file)

第3节 yum在线管理程序包

3.1节 网络yum源

1、打开网络yum源(Ubuntu中是source.list)

$ vim /etc/yum.repos.d/CentOS-Base.repo

[base] 容器名称,一定放于[ ]之中。一般不改。

name 容器说明,可以自己随便写

mirrorlist 镜像站点,可以注释掉

baseurl 是yum源服务器地址。与镜像地址选择其一就可以。

enabled 此容器是否生效。不写或等于1,则生效。设为0,则不生效。

gpgcheck 数字证书,设为1生效

gpgkey 公钥文件保存位置。不用修改

(网络yum源,就是所有rpm包所在的位置,提供下载;这个文件基本是不需要修改的。当然也可以使用光盘作为yum源,即光盘内装有所有rpm包)

3.2节 yum命令

1、查询所有可用软件包列表(到网络yum源服务器去查询)

yum list

2、搜索服务器上所有和关键字相关的包

yum search 关键字(包名)

注意:对于yum命令没有包全名的概念,只对于手工安装rpm包,才有包全名的概念。

3、安装

yum -y install 包名

选项:install 安装  -y 自动回答yes

(yum命令自动到远程服务器下载并安装依赖的rpm包,自动完成)

4、升级

yun -y update 包名

(注意:如果不加包名,默认将所有软件包升级,包括Linux系统内核也可能会升级)

5、卸载

yum -y remove 包名

第4节 源码包安装

4.1节 源码包与rpm包安装后的区别

1、rpm包默认安装路径

/etc 配置文件安装目录

/usr/bin 可执行命令安装目录

/usr/lib 程序所使用的函数库保存位置

/usr/share/doc 基本的软件手册保存位置

/usr/share/man  帮助文件保存位置

2、源码包安装位置

安装在指定位置中,一般是 /usr/local/软件包 (类似于Windows系统的C盘progragm

files)

3、安装位置不同带来的影响

(1)rpm包安装的服务可以使用系统服务管理命令(service)来管理。

例如rpm包安装的Apache的启动方法是:

/etc/rc.d/init.d/httpd start  (绝对路径 + 服务命令)

或者

service httpd start

(系统服务命令启动)

(service 不能启动源码包安装的软件,只适用rpm命令)

(2)源码包安装的服务,必须使用 绝对路径 + 服务命令 进行管理。

4.2 源码包的安装

安装准备:安装C语言编辑器gcc;下载源码包。

1、源码包保存位置: /usr/local/src/

软件安装位置: /usr/loacl

如何确定安装过程报错:安装过程停止,并出现error 、warning的提示

2、源码包安装过程

(1)下载到Linux系统,一般是tar.gz格式;

(2)解压;

(3)必须进入解压目录,才可以继续后续操作安装;(两个文件INSTALL、README必须先阅读了解)

(4)./configure(定义需要的功能、检测安装环境、把定义好的选项写入Makefile文件,用于后续编辑)

选项:--prefix=/usr/local/安装目录

用这个选项指定安装目录

(5)make 编译

如果编译报错,可以使用make clean

清空编译产生临时文件

(6)make install  编译安装(这一步才真正想系统中写入文件)

(启动命令可以在INSTALL、或者 README 文件中查看)

3、源码包的卸载

只需要在安装位置(一般是usr/local/目录 相当于C盘的Program files)删除(rm)即可卸载。

附录:

脚本安装包:不是独立的软件包类型,只是执行安装脚本,执行源码包的安装。类似于Windows系统的如啊你按安装方式。只适用于较难的的硬件驱动。

linux的软件包是独立的,Linux系统下软件包的安装相关推荐

  1. linux系统下源码安装mysql5.6数据库

    linux系统下源码安装mysql5.6数据库 下载mysql数据库相关软件包(百度云盘:http://pan.baidu.com/s/1bnL31c7) 从mysql 5.5版本开始,mysql源码 ...

  2. linux 自动安装mysql数据库_linux系统下源码安装mysql5.6数据库

    linux系统下源码安装mysql5.6数据库 下载mysql数据库相关软件包(百度云盘:http://pan.baidu.com/s/1bnL31c7) 从mysql 5.5版本开始,mysql源码 ...

  3. linux安装多版本php_Linux系统下为Nginx安装多版本PHP

    我们在安装配置服务器LNPM环境时应该考虑到PHP多版本并存的问题,下面是实现Linux系统下为Nginx安装多版本PHP的实现方法 linux版本:64位CentOS 6.4 Nginx版本:ngi ...

  4. Linux/Unix系统下nginx+php安装简明教程

    本文转载自Linux/Unix系统下nginx+php安装简明教程,请保留转载信息~ 一.安装nginx: 1. 安装pcre库,nginx的rewrite模板需用到pcre库: mkdir -p / ...

  5. linux最小系统 安装教程,Linux 学习笔记 1 使用最小的系统,从分区安装系统开始,...

    Linux 学习笔记 1 使用最小的系统,从分区安装系统开始, 我们常用的linux系统在安装过程中大多都省略了对系统进行分区的操作,以至于后期,不了解什么是分区以及分区当中最基本的一些概念, 我们不 ...

  6. Linux系统下adb驱动安装步骤 及 问题总结

    Linux系统下adb驱动安装步骤 及 问题总结 一.安装ADB工具 sudo apt-get update sudo apt-get install android-tools-adb 二.adb驱 ...

  7. LINUX系统下ORACLE19C客户端安装步骤

    LINUX系统下ORACLE19C客户端安装步骤 服务器系统版本:CentOS 7.4 Oracle客户端安装包(19C版本)下载地址: Instant Client for Linux x86-64 ...

  8. Linux系统下禅道的安装以及配置教程

    Linux系统下禅道的安装以及配置教程 首先查看Linux安装的版本,64的还是32的! 查看Linux版本:[root@localhost ~]# getconf LONG_BIT 1.Linux中 ...

  9. windows 7编辑启动菜单 bcdedit linux,windows7系统下删除wubi安装的ubuntu启动项使用命令bcdedit解决...

    windows7系统下删除wubi安装的ubuntu启动项使用命令bcdedit解决 发布时间:2013-05-28 15:19:31   作者:佚名   我要评论 前不久用笔记本通过wubi安装Ub ...

最新文章

  1. 如何使用 Arthas 定位 Spring Boot 接口超时 ?
  2. matlab中如何输出,将文本信息显示到屏幕上的输出流
  3. mysql触发器 while循环_mysql触发器跳出当前循环方法
  4. ubuntu开启端口_RChain节点运行无门槛教程(二)--Windows-Ubuntu
  5. 在 C++ 中使用 PPL 进行异步编程
  6. Ubuntu虚拟机磁盘扩容+VM虚拟机开机多出1分30秒的解决方案(终极教程)
  7. iframe嵌套改变url地址
  8. php自定义商品属性,php – 可变产品属性:自定义每个显示的单选按钮文本值
  9. 变频电源启动不了的原因是什么
  10. 删除出现次数最少字符串JAVA_牛客网——华为机试(题23:删除字符串中出现次数最少的字符)(Java)...
  11. python中的ord,chr函数
  12. xadmin可能是帮助我完成django网站的一大助力
  13. ubuntu安装cuda驱动
  14. 漫画:面试过程的神回复
  15. if条件句有大括号和没有大括号的区别
  16. Linux下rpm软件包rpm命令的安装及卸载
  17. 赵小楼《天道》《遥远的救世主》深度解析(80)强者用逻辑支配行为,弱者用情绪支配行为
  18. 安装黑苹果目前最详细教程
  19. 速记TCP/IP五层模型
  20. 前端适配不同型号手机分辨率,100%还原UI设计稿的方案实践

热门文章

  1. 实体链接(Entity Linking)、依存句法分析、成分句法树、词袋模型、文本向量空间模型(TF-IDF)、
  2. 数据库中的索引技术——哈希索引
  3. padans的DataFrame
  4. 统计学原理----描述性统计
  5. python 加密和解密
  6. 10.LeetCode第九题--有效的数独--哈希表的经典应用
  7. AlexNet- ImageNet Classification with Deep Convolutional Neural Networks
  8. LeetCode 动态规划(Dynamic programming)系列题目--C++,Python解法
  9. angular 定义对象_angular – 使用对象定义定义FomGroup
  10. 高品质摄影作图台式计算机推荐,浅谈高质量摄影照片后期输出的打印机选择