Linux下软件的安装
想必linux新手刚开始对于linux软件安装很茫然吧,不知到怎么安装,软件到底安装在哪里,如果我需要删除软件怎么删除,配置文件到哪里去找。
想学习linux的话,最快上手的应该是Ubuntu,它特有的PPA和软件中心,让很多习惯了Windows的用户很是方便,但这些管理和安装细节都由系统自动处理的,有时候我们如果想对某些软件进行管理,就不知到如何下手。其实如果使用默认的安装方式,Ubuntu会使用自己的一套管理方式,文件的存放不是放在同一个目录,其实Linux之所以这么存放也是有原因的。我们知道在Windows下一般软件文件都放置在同一个目录,但Linux是将软件分类存放的,最典型的比如配置文件的存放很多都是放置在 /etc 下,正是这种分类存放的管理方式保证了Linux的高效。如果想了解具体系统目录的结构http://forum.ubuntu.org.cn/viewtopic.php?f=86&t=5483&start=0
对于程序员来说,有时候很多软件很库是不能通过 apt-get install sofename 方式进行安装的,即使可以安装,使用Ubuntu默认的安装方式,管理起来是很麻烦的。所以我们要知道如果下载一个Linux软件包怎么进行编译和安装。
通常安装软件主要分为 配置,编译,安装。【标准的软件安装包都有一个Readme或install安装文档】
./configure
make
make install
如果顺利的话,以上三个步骤,可以正常运行,软件就安装成功。但是很多数情况下,每个步骤都可能出现错误。对于错误,如果你不知到错在哪里,你可以把错误的那一行复制下来,粘贴到谷歌(对于这种错误,你在百度里面你是绝对搜不出来的)里面,万能的谷歌总能帮你找到答案,你会发现靠谱的解决方案总是在 stackoverflow。当然前提是你会点英文,不要求多好,但是能理解大致意思就行了,实在不行,把一段英文全部输入到 有道 里面,然后自己在琢磨琢磨。一般来说大部分的错误都是 缺少某个 函数库。
如果我们想要自己制定安装目录和参数值,我们就需要在第一步配置的时候,传入某些参数,至于如何设置可以输入 ./configure --help 会列出各个参数的含义,然后我们可以按照自己的喜好进行设置。
下面以Nginx的安装进行讲解:
我们将下载nginx压缩包进行解压
cd nginx-1.4./
./configure --help
我们可以看到终端会打印处 各个参数的含义。
由于nginx有详细的安装文档http://nginx.org/en/docs/configure.html
我们就对这些进行说明
--prefix=path — defines a directory that will keep server files. This same directory will also be used for all relative paths set by configure (except for paths to libraries sources) and in the nginx.conf configuration file. It is set to the /usr/local/nginx directory by default.
指定安装的路径,默认安装在/usr/local/nginx下,一般软件都由这个选项
--sbin-path=path — sets the name of an nginx executable file. This name is used only during installation. By default the file is named prefix/sbin/nginx.
指定软件执行文件的路径,也就是启动服务器的可执行文件,默认为 prefix/sbin/nginx
--conf-path=path — sets the name of an nginx.conf configuration file. If needs be, nginx can always be started with a different configuration file, by specifying it in the command-line parameter -c file. By default the file is named prefix/conf/nginx.conf.
指定服务器的配置文件,服务器可以以不同的配置文件启动,默认为 prefix/conf/nginx.conf,很多服务器软件默认都放置在 /etc/下面
--------------------------------------------------------------------------以下的一些选项都可以在配置文件中设置------------------------------------------------------------------------------------
我们现在把nginx所有文件安装到一个目录 /usr/local/nginx下
./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module
如果运行正确,进行编译,需要指出的是编译nginx需要两个库 pcre, zlib。你可以先对这两个库进行安装,如果不安装要在编译的时候在配置的时候要制定着两个库的路径
如过系统中没有安装着两个库 请先下载这两个库,进行解压,在上一步的命令行中加入这两个参数,进行重新配置 --with-pcre=../pcre-4.4 --with-zlib=../zlib-1.1.3
然后编译,安装
make
sudo make install
安装成功后,使用 whereis 指令可以查看已安装软件的所有文件路径
whereis nginx
你发现所有的文件都在 /usr/local/nginx下。
我们使用
sudo /usr/local/nginx/nginx
直接启动nginx,输入 localhost 就可以看到运行结果了。
关闭nginx
sudo /usr/local/nginx/nginx -s stop
Linux下软件的安装的更多相关文章
- Linux下软件常见安装方式
pasting 分类: Linux2007-12-08 16:31 1909人阅读 评论(0) 收藏 举报 linuxredhat脚本文档managerfile Linux下软件安装主 ...
- 笔记:Linux下软件的安装、CentOS更新yum源、LAMP环境搭建、kali软件管理
一.Linux下软件的安装 方式:yum源 / rpm /源码安装 1.yum:(帮助管理员解决依赖关系) yum是通过分析rpm的包头数据后,根据各种软件的相关性质做出属性相对应的解决方案,然后可以 ...
- Linux下软件的安装与管理
1.源码安装方式 2.RPM包方式安装 3.yum安装方式 4.二进制软件安装方式 1.源码安装方式 (1)下载.解压Apache源码: mkdir /apache #在根目录下创建一个apache目 ...
- linux下软件的安装与卸载
一 软件安装包的类型 通常Linux应用软件的安装有五种: 1) tar+ gz包,如software-1.2.3-1.tar.gz.他是使用UNIX系统的打包工具tar打包的. 2) r ...
- 浅析linux下软件的安装
Linux环境: CentOs 6.0 知识点介绍: 一.tarball安装 安装步骤: 将tarball文件在/usr/local/src目录解压缩 ./configure:这个步骤是建立makef ...
- 【OS_Linux】Linux下软件的安装与卸载
1.Linux中软件安装包的分类 1) 一类是可执行的软件包,无需编译直接安装.在Windows中所有的软件包都是这种类型.安装完这个程序后,你就可以使用,但你看不到源程序.而且下载时要注意这个软件是 ...
- Linux 下软件的安装方法
1:rpm 安装 ,rpm安装会有依赖问题,例如安装A,提示需要安装B 安装B需要安装C 格式: rpm -ivh [包名].rpm 2:yum 安装 特点:简单.易用.高校 缺点:不能定制 解决 ...
- linux下软件安装的方法
linux下软件的安装与卸载 第一章 linux下安装软件,如何知道软件安装位置 注:一般的软件的默认安装目录在 jdk-1_6_0_14-linux-i586-rpm.bin ←修改为 ...
- Linux Centos下软件的安装与卸载方法
转载于: http://blog.csdn.net/zolalad/article/details/11368879 Linux下软件的安装与卸载 第一章 linux下安装软件,如何知道软件安 ...
随机推荐
- BZOJ1176: [Balkan2007]Mokia CDQ分治
最近很不对啊=w= 写程序全是bug啊 ans数组开小了竟然一直不知道,小数据没问题大数据拍不过,交上去RE 蛋疼半天 这个主要把每次询问拆成3个询问. #include<cstdio> ...
- mysqldump 定时任务 执行后备份的文件为空
#!/bin/bash mysql_host="127.0.0.1" mysql_user="root" mysql_passwd="******** ...
- [RxJS] Filtering operator: single, race
Single, race both get only one emit value from the stream. Single(fn): const source = Rx.Observable. ...
- Marquee滚动字幕设置(转)
<marquee >滚动文字 </marquee> 方向 <direction=#> #=left, right,up,down 方式<bihavior=#& ...
- cflow察看工程函数调用关系+Linux 0.11 内核实验环境
http://savannah.gnu.org/projects/cflow http://tinylab.org/linux-0.11-lab/ http://ftp.gnu.org/gnu/cfl ...
- ios中从相册:相机中获取图片信息
ios中从相册/相机中获取图片信息 从相册中获取图片的信息 UIImagePickerController *imgPickView = [[UIImagePickerController alloc ...
- Gitolite轻松部署/管理git server
对于今天越来越受欢迎的Git,相信做开发的朋友都基本有所耳闻.它最大的便利就是分布式的开发库,让使用git作为源码管理库的开发者可以在本地提交代码的修改而不用提交到远程的库,同时需要和团队协作.同步代 ...
- Struts2 ValueStack
一.作用 可以作为一个数据中转站,用在前台和后台数据传递 二.生命周期 ValueStack的生命周期是随着request的创建而创建,随request的销毁而销毁. 三.结构 OgnlValueSt ...
- 在Mac OS X下安装Android Studio
在Mac OS X下安装Android Studio只需要几步. 1. 下载Android Studio安装包(.dmg). 2. 打开Terminal输入java -version命令查看是否已安装 ...
- java之log4j的配置
java之log4j的配置 log4j有很多的优点,用起来很方便,就是配置起来有些麻烦,下面我介绍一下log4j的配置方法. log4j是用来记录日志的. 软件的运行过程离不开日志.日志主要用来记录系 ...