Linux下软件的安装

时间:2023-10-21 22:45:02

  想必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

  如果顺利的话,以上三个步骤,可以正常运行,软件就安装成功。但是很多数情况下,每个步骤都可能出现错误。对于错误,如果你不知到错在哪里,你可以把错误的那一行复制下来,粘贴到谷歌(对于这种错误,你在百度里面你是绝对搜不出来的)里面,万能的谷歌总能帮你找到答案,你会发现靠谱的解决方案总是在 *。当然前提是你会点英文,不要求多好,但是能理解大致意思就行了,实在不行,把一段英文全部输入到 有道 里面,然后自己在琢磨琢磨。一般来说大部分的错误都是 缺少某个 函数库。

  如果我们想要自己制定安装目录和参数值,我们就需要在第一步配置的时候,传入某些参数,至于如何设置可以输入 ./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