Linux下软件安装的四种方式
一.源码安装
步骤:
- 下载,解压源码(常见的源码打包格式:.tar.gz/.tar.bz2);
可以直接下载源码再上传至linux服务器,或者在联网状态下,直接通过wget等命令获取源码安装包;源码解压后会有README文件,应先阅读;
- 分析安装平台环境(运行configure文件: ./configure)
(1)解压源码后进入源码所在文件夹,运行./configure命令,进行环境测试,如果提示缺少某些安装包就进行安装,直至测试通过.
(2)还可以在./configure后面加上软件的安装路径及安装所需的模块等选项,来定制用户需要的软件功能;(./configure --prefix=/usr/local/ #指定安装路径,还可以在此处加上"\",选择需编译的模块)
(3):通常软件安装都需要GCC或CC编译器;这些编译器一般在安装系统时定制安装包中的开发工具选项下;
- 编译(make)
进入软件安装的文件夹,运行make命令;
- 安装(make install)
进入软件安装的文件夹,运行make install命令;
举例:安装redis (redis-3.0.0.tar.gz)
- 将下载好的源码文件上传至Linux,(通过SecureCRT, put 路径),会直接上传至Linux的用户目录(主目录)下;
- 解压文件:tar -zxvf redis-3.0.0.tar.gz
- 编译:进入解压后的文件夹里,运行make,会将.c文件编译为.o文件;
- 安装(可以在此步骤指定安装路径,没有会创建): make prefix=/usr/local/redis install;安装完成后在/usr/local/redis/bin/下会发现几个可执行文件:
- redis-benchmark --性能测试工具;
- redis-check-aof --AOF文件修复工具;
- redis-check-dump --RDB文件检查工具;
- redis-cli --命令行客户端;
- redis-server --redis服务器启动命令
- 从解压的源码文件夹里copy配置文件(redis.conf)至/usr/local/redis/文件夹下;进入解压后的源码文件夹,cp redis.conf /usr/local/redis
- 修改配置文件,以后端模式启动.(修改配置文件为:daemonize yes)
- 启动redis: 进入安装文件夹,./bin/redis-server ./redis.conf
二.RPM包方式安装(使用RPM工具,安装.rpm/.src.rpm格式的文件)
步骤:
- 安装之前先查询是否包含相关软件:rpm -qa | grep -i
- 存在则移除:rpm -e --nodeps 软件名 #nodeps:不验证套件间的相互关联性
- 存在老版本,则更新: rpm -Uvh
- 安装:rpm -ivh
三.yum安装
通过yum进行软件安装或系统升级的实质就是通过yum命令下载指定的远程互联网主机上的RPM包,然后自动进行安装,同进解决相互间的依赖关系.
基本用法:
- 安装rpm包,如dhcp: yum install dhcp
- 删除rpm包及依赖包: yum remove dhcp
- 检查可更新的rpm包:yum check-update
- 更新所有:yum update
- 更新指定的rpm包:yum update dhcp
- 大规模升级版本,包括陈旧的包: yum upgrade
- 列出已经安装的所有rpm包: yum list installed
- 搜索匹配特定字符的rpm包的详细信息: yum search wget
- 搜索包含特定文件名的rpm包: yum provides realplay
四.二进制软件安装(.rpm/.tar.gz/.tgz/.bz2)
Linux下二进制格式的软件是指事先已经在各种平台编译安装好的相关软件,然后压缩打包,安装时只需解压或,或者执行可安装文件即可;如tomcat/Oracle/Weblogic
二进制软件包常见的打包格式包括.rpm/.tar.gz/.tgz/.bz2;直接解压到安装文件夹即可完成安装;删除时直接删除对应的文件夹,如果解压后文件分散在多个目录,需要一一删除;
对于提供了安装程序的软件包,直接进入目录,运行类似于setup/install/install.sh之类的文件,然后跟随提示进行相应设置,之后安装就自动完成;
举例1:安装java jdk(主要看环境变量配置)
- 解压JDK: tar -zxvf jdk-7u72-linux-i586.gz
- 移动jdk至安装文件夹:
- mkdir /usr/local/src/java
- mv jdk1.7.0_72/ /usr/local/src/java/jdk1.7 #将jdk1.7.0_72下在所有内容称至新文件夹jdk1.7之下,并且删除原文件夹(jdk1.7.0_72)
- 配置系统环境变量
- vim /etc/profile #添加以下两句
- export JAVA_HOME=/usr/local/src/java/jdk1.7
- export PATH=$JAVA_HOME/bin:$PATH
- 使配置生效并测试
- source /etc/profile
- java -version
举例2:安装tomcat(主要看防火墙配置)
- 解压: tar -zxvf apache-tomcat-7.0.52.tar.gz
- 移动: mv apache-tomcat-7.0.52 /usr/local/src/java/tomcat7
- 启动:/usr/local/src/java/tomcat7/bin/startup.sh
- 配置防火墙:
- vim /etc/sysconfig/iptables
- -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT #开放8080端口
- service iptables restart #重启防火墙
Linux下软件安装的四种方式的更多相关文章
- linux下软件安装的几种方式
linux下软件安装的几种方式(主要有源码安装, rpm安装, yum安装). 一:源码安装 几乎所有的开源软件都支持在Linux下运行,而这些软件一般都以源码形式发放,只需要Linux安装了gcc. ...
- 【转】Linux下软件安装的几种方式
转自Linux下软件安装的几种方式 Linux 系统的/usr目录 Linux 软件安装到哪里合适,目录详解 Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统 ...
- Ubuntu下软件安装的几种方式,apt,dpkg工具的使用
通常 Linux 上的软件安装主要有四种方式: 在线安装 从磁盘安装deb软件包 从二进制软件包安装 从源代码编译安装 这几种安装方式各有优劣,而大多数软件包会采用多种方式发布软件,所以我们常常需要全 ...
- (大数据工程师学习路径)第一步 Linux 基础入门----Linux 下软件安装
介绍 介绍 Ubuntu 下软件安装的几种方式,及 apt,dpkg 工具的使用. 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二 ...
- Linux 软件安装的三种方式
Linux 软件安装的三种方式 1.yum 语法格式: yum -y install package.name -y yes # 遇到提示自动输入yes 案例: 安装ifconfig命 ...
- Linux 下软件安装
Linux 下软件安装 一.Linux 上的软件安装 通常 Linux 上的软件安装主要有三种方式: 在线安装 从磁盘安装deb软件包 从二进制软件包安装 从源代码编译安装 这几种安装方式各有优劣,而 ...
- Linux入门基础教程之Linux下软件安装
Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...
- 2019-9-16:渗透测试,基础学习,Linux下软件安装,环境搭建,笔记
Centos linux下软件安装yum 通过分析rpm包头数据后,自动解决依赖关系,直接云端下载软件,根据不同版本系统获取不同软件信息,按顺序下载rpm包,安装软件yum search 软件名:搜索 ...
- 【Linux】多线程同步的四种方式
背景问题:在特定的应用场景下,多线程不进行同步会造成什么问题? 通过多线程模拟多窗口售票为例: #include <iostream> #include<pthread.h> ...
随机推荐
- 重学JAVA基础(二):Java反射
看一下百度的解释: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息 ...
- TCP点对点穿透探索--失败
TCP点对点穿透探索 点对点穿透是穿透什么 点对点穿透,需要实现的是对NAT的穿透.想实现NAT的穿透,当然要先了解NAT到底是什么,以及NAT是用来干什么的.NAT全称Network Address ...
- ContOS 小细节
rm [filename] 这个filenam 中间如果有()那么就必须用/转义,如 demo_(2).txt 必须写为 demo_\(2\).txt 上传 rz下载 sz + 文件名退出 exit解 ...
- JS加DOM理解
1. ***变量 2. ***数据类型 一. ***变量:内存中存储*一个*数据的存储空间,再起一个名字 何时使用:程序中反复使用的数据,都要先保存在变量中,再参与运算 如何使用:声明 赋值 ...
- 面试题: 数据库操作面试 已看1 很典型的sql面试题
摘要:今天参加了大展公司的一个电话面试,那位先生首先问我查询一个表的问题,条件是:1.一个数据表,有username字段.2.查询数据表中姓名姓张的.姓李的.姓刘的总数,并展现在一张表中.我当时就糊涂 ...
- 使用BIND安装智能DNS服务器(一)---基本的主从DNS服务器搭建
参考网址:http://www.unixmen.com/dns-server-installation-step-by-step-using-centos-6-3/ DNS(Domain Name S ...
- 1.14不使用回车键来读取n个字符
read是一个重要的bash命令,它用于从键盘或标准输入中读取文本.可以使用read以交互的形式读取来自用户的输入,不过read能做的远不止这些.很多编程语言的输入库都是从键盘读取输入,且只有回车键按 ...
- ASP.NET Core会议管理平台实战_3、认证、授权表迁移
可以参考老张的这个文章: https://www.cnblogs.com/laozhang-is-phi/p/10660403.html 创建这个类库 看一下IdentityUser是在哪一个库下面. ...
- Working Experience - MoveWindow API 失败/无效
写在前面 当然过程不可能这么顺风顺水,毕竟对 Win32 API 不熟悉,并且国内搜索引擎和博客质量较低(不误导你就算好了),最后还是通过 Google -> StackOverflow 找到答 ...
- null, undefined 和布尔值
说明:此类博客来自以下链接,对原内容做了标注重点知识,此处仅供自己学习参考! 来源:https://wangdoc.com/javascript/basic/introduction.html 1.n ...