linux下软件安装知识整理
一.软件包安装
分类
源码包
二进制包(RPM包,系统默认包)
源码包
优点
1.开源
可以自由选择所需的功能
软件是编译安装,适合自己系统,更加稳定,效率更高
卸载方便
缺点
安装过程步骤较多,容易出错
编译时间较长,安装比二进制安装要长
3.编译安装,报错,新手难以解决
二进制包
优点
包管理系统简单,只用几个命令就可以实现安装、升级、查询和卸载
安装速度比源码包快多了
缺点
经过编译,不再可以看到源代码
功能选择不如源码包灵活
依赖性
二. RPM包管理
简介
1、RPM包的来源:所有RPM包都在系统光盘的Packages目录中
2、RPM包命名规则:软件包名-软件版本-软件发布的次数-适合的Linux平台-适合的硬件平台-包扩展名
3、RPM包依赖性:
a、树形依赖:a->b->c 解决方法:从后往前安装
b、环形依赖:a->b->c->a 解决方法:放在一条命令中安装即可
c、模块依赖:库文件依赖,库也叫模块,就是linux当中的函数,它有一个典型的特征,就是以【.so.数字】结尾,它依赖的其实是一个文件,而不是软件包。该文件藏身在某一个软件包当中。我们只要将该文件所在的软件包安装上,该文件也就安装了。解决方法:登录www.rpmfind.net网站,输入库文件名称查询到对应的rpm包,然后安装即可。
4、yum在线安装:可以方便的解决依赖文件,一条命令就可以帮用户从网上(本地也可以)找到安装包进行安装。
注:RedHat的yum是收费服务,而CentOS的yum是免费服务
安装
1、包全名与包名
包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径
包名:操作已经安装的软件包时,使用包名,是搜索/var/lib/rpm/中的数据库
2、RPM安装
rpm -ivh 包全名
选项:
-i(install)安装
-V(verbose)显示详细信息
-h(hash)显示进度
--nodeps不检测依赖性
升级
rpm -Uvh 包全名
参数选项:-U(upgrade) 升级
卸载
rpm -e 包名
选项:-e(erase) 卸载
--nodeps 不检查依赖
三、RPM包查询
查询方式:
1、 rpm -q 包名 查询包是否安装; rpm -qa 查询所有安装的rpm包。rpm -qa grep httpd
2、 rpm -qi 包名 查询包详细信息。 -i : 查询软件信息; -p :查询未安装包信息。rpm -qip xxxx
3、 rpm -ql 包名 查询包中文件安装位置。 -l:列表; -p:查询未安装包信息。rpm -ql httpd
4、 rpm -qf 系统文件名 查询系统文件属于哪个RPM包。 (必须为系统包 不能是自己新建的) rpm -qf xxx
5、 rpm -qR 查询依赖性。 -R:查询依赖性; -p:查询未安装包信息。
四、RPM包校验
rpm -V(大写V) 已安装的包名
V(verify):校验指定RPM包中的文件;
!!该命令执行之后,如果没有任何回馈信息,则表示该文件一切正常!!
验证内容中的8个信息得具体内容如下:
①S:文件大小是否改变;
②M:文件的类型或文件的权限(rwx)是否被改变;
③5:文件MD5校验和是否改变(可以看成文件内容是否改变)
④D:设备的主从代码是否改变;
⑤L:文件路径是否改变;
⑥U:文件的属主(所有者)是否改变;
⑦G:文件的属组是否改变;
⑧T:文件的修改时间是否改变;
文件类型:
①c:配置文件(config file)
②d:普通文档(documentation)
③g:“鬼”文件(ghost file),很少见,就是该文件不应该被这个RPM包 包含;
④L:授权文件(license file)
⑤r:描述文件(read me)
RPM包中文件提取:
rpm2cpio 包全名 cpio -idv .文件绝对路径
--> 前面的【.】代表当前路径,不能省略。【文件绝对路径】和包里文件的绝对路径对应,也就是告诉了cpio要去包里提取哪个文件。
注:cpio只知道提取文件,并不知道要从什么地方提取文件,因此我们通常要使用【】管道符或【<】输入重定向告诉cpio我们应该从什么设备去取出文件。
①-rpm2cpip //将rpm包转换为cpio格式的命令;
②-cpip //是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件;
使用输入重定向的cpio命令格式:
cpio 选项 < [文件设备]
①-i:copy-in模式,还原;
②-d:还原时自动新建目录;
③-v:显示还原过程;
五、YUM在线安装
YUM源文件
1、yum的优点:将所有软件包放到官方服务器上,当进行yum在线安装时,可以自动解决依赖性问题。(rpm缺点:安装过程中,rpm包依赖性太强)
2、redhat的yum在线安装需要付费,centOS不需要。
3、在【/etc/yum.repos.d/】目录中,默认有4个yum源文件,其中【CentOS-Base.repo】是基本yum源文件,如果我们能上网,那它是默认生效的,而其他的都是默认不生效的。
4、配置介绍
[base]:名字可以随便起。
name:名字也是随便起。
mirrorlist和baseurl一个是主站点,一个是辅助站点,这两个有一个就行。可以找一个163或清华大学的yum源更换。
enabled:默认最后一个容器不生效,其他容器都生效。
gpgcheck:一般都要开启,开启后安装时会验证rpm包是否是官方的,以保证系统安全。
gpgkey:默认系统安装后,在目录【/etc/pki/rpm-gpg】下都会存在数字证书。注:前面的【file://】表示文件协议,后面的【/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6】是数字证书的位置。
光盘搭建YUM源
有三个步骤:
1、挂载光盘;
2、使网络yum源【CentOS-Base.repo】失效;
3、使光盘yum源【CentOS-Media.repo】生效,需要编辑【CentOS-Media.repo】文件,修改【baseurl】和【enabled】两项内容,操作如下:
[root@CentOS6 yum.repos.d]# vi CentOS-Media.repo
[c6-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/cdrom/ -->将baseurl设置为实际光盘挂载地址(另外两个要注释掉,否则会因为找不到光盘而报错。【#】注释时,必须写在行开头)
file:///media/cdrom/
file:///media/cdrecorder/
gpgcheck=1
enabled=1 -->将enabled设置为1,使这个yum源配置文件生效
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
编辑后保存退出即可。
注:可以使用【yum list】命令列出当前yum源中的所有rpm包:即更新数据库
[root@CentOS6 yum.repos.d]# yum list
......省略部分内容......
Available Packages
389-ds-base.i686 1.2.11.15-29.el6 c6-media
389-ds-base-devel.i686 1.2.11.15-29.el6 c6-media
389-ds-base-libs.i686 1.2.11.15-29.el6 c6-media
......省略部分内容......
可以从后面的【c6-media】看出这是光盘yum源,因为这是光盘yum源文件【CentOS-Media.repo】中定义的名字。
YUM命令
1、常用yum命令:
查询:
①yum list:查询目前使用的yum源中所有可用软件包列表;
②yum search 关键字:搜索服务器上所有和关键字相关的包;
安装:
①yum -y install 包名
⑴-install:安装;
⑵-y:自动回答yes;
②例如:yum -y install httpd
升级:
①yum -y update 包名
⑴-update:升级;
⑵-y:自动回答yes;
卸载:
②yum -y remove 包名
⑴-remove:卸载;
⑵-y:自动回答yes;
!!!服务器使用最小化安装,用什么软件安装什么,尽量不要卸载!!!
yum软件组管理命令
yum grouplist:列出所有可用的软件列表;
yum groupinstall 软件组名:安装指定软件组,组名可以由grouplist查询出来;
yum gourpremove 软件组名:卸载指定软件组;
①LANG=en_US:切换至英文;(临时生效)①
②LANG=zh_CN.utf8:切换至中文;(临时生效)②
六、源码包管理
源码包和RPM包区别
安装后区别:安装位置不同
RPM包安装在默认位置:
源码包安装在指定位置中,一般是/usr/local/软件名/
安装位置不同带来的影响
1、源码包是不能使用【service】命令来启动服务,因为源码包的安装位置由用户指定,放在哪并不统一。而rpm包安装后,通常都是放在【/etc/rc.d/init.d】目录中的,而【service】命令执行时,会自动搜索该目录,所以rpm包安装的服务可以使用【service】命令。
1).rpm包安装位置不用指定,源码包安装位置必须指定。源码包没有卸载命令。卸载时直接删除文件夹即可。源码包默认启动方法/usr/local/apache2/bin/apachetl start
2).rpm包启动方式两种 service XXXX start(red hat 系列专属) 或 /etc/rc.d/init.d/xxx start
安装过程
1.源码包保存位置:/usr/local/src/
2.软件安装位置:/usr/local/
3.如何确定安装过程报错:
安装过程停止;
并出现:error、warning或no的提示;
下载源码包解压缩下载的源码包进入解压缩目录;
./configure:软件配置与检查
定义需要的功能选项; ./configure --prefix=PREFIX
检测系统环境是否符合安装要求;
.把定义好的功能选项和检测系统环境的信息都写入Makefile文件,用于后续的编辑;
make:编译
如果报错,可执行“make clean” :清除编译缓存文件;
make install:编译安装
源码包的卸载无需卸载命令,直接删除安装目录即可,不会遗留任何垃圾文件;
linux下软件安装知识整理的更多相关文章
- Linux下软件安装方法即路径设置
Linux下软件安装方法即路径设置 http://www.cnblogs.com/edward259/archive/2010/07/02/1770066.html
- linux下软件安装的几种方式
linux下软件安装的几种方式(主要有源码安装, rpm安装, yum安装). 一:源码安装 几乎所有的开源软件都支持在Linux下运行,而这些软件一般都以源码形式发放,只需要Linux安装了gcc. ...
- Linux入门基础教程之Linux下软件安装
Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...
- Linux 下软件安装
Linux 下软件安装 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二进制软件包安装 从源代码编译安装 这几种安装方式各有优劣,而 ...
- 2019-9-16:渗透测试,基础学习,Linux下软件安装,环境搭建,笔记
Centos linux下软件安装yum 通过分析rpm包头数据后,自动解决依赖关系,直接云端下载软件,根据不同版本系统获取不同软件信息,按顺序下载rpm包,安装软件yum search 软件名:搜索 ...
- 【转】Linux下软件安装的几种方式
转自Linux下软件安装的几种方式 Linux 系统的/usr目录 Linux 软件安装到哪里合适,目录详解 Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统 ...
- linux下软件安装的方法
linux下软件的安装与卸载 第一章 linux下安装软件,如何知道软件安装位置 注:一般的软件的默认安装目录在 jdk-1_6_0_14-linux-i586-rpm.bin ←修改为 ...
- linux下软件安装与卸载
linux上软件二进制安装主要分为:rpm手动安装和yum在线安装(其所安装的都为rpm二进制包). 关于rpm手动安装,学习后面内容前需分清如下内容: 包全名 : 操作的包是没有安装的软件包时,使用 ...
- (大数据工程师学习路径)第一步 Linux 基础入门----Linux 下软件安装
介绍 介绍 Ubuntu 下软件安装的几种方式,及 apt,dpkg 工具的使用. 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二 ...
随机推荐
- LG1861 星之器
题意 题目背景 Magic Land 上的时间又过了若干世纪„„ 现在, 人们谈论着一个传说:从前,他们的祖先来到了一个位于东方的岛屿, 那里简直就是另外一个世界.善于分析与构造的 Magic Lan ...
- 将koa+vue部署到服务器
很久很久以前,就对前后端如何分离,后端如何把代码部署到服务器有浓厚的兴趣,最近在阿里云上申请了一个服务器,试试水吧! 本文参考了文章<基于Node的Koa2项目从创建到打包到云服务器指南> ...
- getpwnam,getgrnam,getpwent,crypt等函数
[root@bogon code]# cat a.c #include<stdio.h> #include<pwd.h> int main() { struct passwd ...
- Gravitational Teleport 开源的通过ssh && kubernetes api 管理linux 服务器集群的网关
Gravitational Teleport 是一个开源的通过ssh && kubernetes api 管理linux 服务器集群的网关 支持以下功能: 基于证书的身份认证 ssh ...
- 怎样解题 (G. 波利亚 著)
第一部分 (已看) 目的 1. 帮助学生 2. 问题,建议,思维活动 3. 普遍性 4. 常识 5. 教师和学生,模仿和实践 主要部分,主要问题 6. 四个阶段 7. 理解题目 8. 例子 9. 拟订 ...
- PowerDesigner学习 ---- 系列文章
一.PowerDesigner概述(系统分析与建模) 二.项目和框架矩阵 三.企业架构模型 四.业务处理模型 五.概念数据模型(CDM生成LDM,PDM和OOM) 六.物理数据模型(PDM逆向工程) ...
- JavaScript模板引擎Template.js使用详解
这篇文章主要为大家详细介绍了JavaScript模板引擎Template.js使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 template.js 一款 JavaScript 模板引 ...
- navicat外键设置
https://blog.csdn.net/qq_32486599/article/details/73497810
- 关于SQL Server 无法生成 FRunCM 线程(不完全)
在五一的前一天,准备启动数据库完成我剩下的项目代码时,数据库配置管理器出现了一个让人蛋疼的问题sqlserv配置管理器出现请求失败或服务器未及时响应关于这个问题的处理方法,经过我两个小时的百度,网上对 ...
- MySQL Master High Available 源码篇
https://m.aliyun.com/yunqi/users/1287368569594542/articles https://yq.aliyun.com/articles/59233 MySQ ...