您的位置:首页 > 运维架构 > Apache

软件的安装和卸载

2007-01-03 22:30 197 查看
 
软件的安装和卸载

《中文版Linux 桌面操作系统初级教程》郭守华 宋雪娇 编著

概述

         一般的Linux系统套件都包含了丰富的应用程序,但有时并不能满足实际需要。这时就要涉及

到对低版本软件的卸载、安装新版本软件,或者安装全新的应用软件。

        简单的软件可能只包含一个可执行文件。但Linux系统中运行的大部分应用软件要复杂得多。

一般的应用程序或工具软件都会由多个可执行文件、配置文件、文档组成,有的还会涉及库文件。把所

有这些文件以及其存储位置的信息统一存储到在一起,就形成了安装包。讨论应用程序的安装和升级,

就是要讨论对这些安装包的安装和维护。

        在linux系统中,安装包有多种格式。本章将一般性地介绍TAR 源码包和RPM包及其操作方法,

实际使用时,会出现这样那样的差异。读者应结合本章的实例,学习对软件包的管理和维护。

提示:对软件包的管理和维护,需要以root身份进行。

TAR源码包

        tar源码包是在Linux环境下经常使用的一种源码发布的软件包。tar包文件一般都以

“.tar.gz” 或“.tar.bz2”作为扩展名。比如,httpd-2.0.48.tar.gz,httpd 就是软件的名字,

也就是提供WWW服务的Apache服务器软件,2.0.48 则是这个安装包的版本号,.tar.gz 表示这是一个经

过gzip 压缩的tar 包。再比如,kdevelop-3.1.0.tar.bz2,kdevelop 是软件的名字,这个软件提供

了Linux 下的C++集成开发环境,版本为3.1.0,其扩展名tar.bz2表明它是一个经过bzip 压缩的tar

包。

        用tar包安装软件的一般过程是:首先,解开tar包,解包后一般都会形成一个以软件名命名的

目录;用其次,cd命令转移到这个目录,依次执行配置、编译和安装命令,安装工作就完成了;安装后,一般应清理一下安装过程中的一些临时文件。

         下面是解tar 包的命令例子:

         tar -xvzf httpd-2.0.48.tar.gz

         tar -xvjf httpd-2.0.52.tar.bz2

         配置、编译和安装命令一般是如下三条:

         ./configure

         make

         make install

         清理临时文件的命令如下:

         make clean

         如果要卸载,则执行如下的命令。

         make uninstall

RPM包

        对于小型软件,按上述方法安装是可以的。但对于比较复杂的软件,运行configure命令前还需要设置很多系统变量,

configure命令本身也会要求提供复杂的参数。在安装前,必须自己检查文件的依赖关系。这对于初学者是比较困难的。为了简化软件

包的安装,就出现了一种被称为RPM 的软件包。RPM 包也是非常常见的一种软件包。使用它安装软件,只需执行简单的命令即可。不

需要人工检查依赖关系。操作RPM 包的命令无非是安装和卸载两种。

安装的命令如下:

       rpm -Uvh Kdevelope-3.1-1.rpm

其中,kdevelope-3.1-1.rpm 是相应的RPM 包文件名,对应的软件包名就是kdevelope,版本号为3.1-1。

      如果要卸载kdevelope,则执行如下的命令。

      rpm -e kdevelope

软件包安装案例

例1:RAR for Linux

       要想在红旗Linux4.1桌面版操作rar 格式的压缩文件,必须安装RAR for Linux。RAR for Linux的软件包是tar包,但其中

并没有源代码。以RAR 3.41 for Linux为例,其安装包的文件名是rarlinux-3.4.1.tar.gz。安装此软件的第一步是解压缩,用cd命

令转移到rarlinux-3.4.1.tar.gz所在的目录,然后执行下面的命令。解压后,会形成一个目录rar。

       tar -xvzf rarlinux-3.4.1.tar.gz

       由于此tar包不包含源代码(也就是说,这是一个编译好的软件安装包),因此不必编译,直接执行安装命令就可以。用cd命令

转移到解压生成的那个rar 目录执行安装命令。

       make install

       这样就算安装完了。从安装时的提示信息可以看出,安装程序只是把RAR运行所需的文件复制到特定的目录。如果要卸载,把

这些文件删除即可。

例2:WWW服务器软件Apache

        假设要建立一个个人WWW网站,允许别人能通过内部局域网访问这个网站,阅读文档或下载软件。网站的网页文件都存在

/mnt/WinD/www123下,首页文件名是index.html,可供下载的软件存在/data/pub下。要达到目的,需要安装Apache服务器软件。下

载得到Apache服务器软件的安装包是httpd-2.0.48.tar.gz,这是一个标准的含有源码的tar包。其中,2.0.48是版本号。按典型的

tar 源码包的安装方法即可。

具体步骤如下:1、解压缩。用cd 命令转移到httpd-2.0.48.tar.gz所在的目录然后执行:

         tar -xvzf httpd-2.0.48.tar.gz

         解压后,会形成一个目录httpd-2.0.48

2、编译和安装转移到解压生成的那个httpd-2.0.48目录

依次执行如下命令:

        ./configure

        make

        make install

        make clean

        这样就算安装完了。

        接下来要修改配置文件/usr/local/apache2/conf/httpd.conf来控制服务器软件,使其按要求运行。

        首先,修改Listen行,确定服务的IP 地址和端口号:

        Listen 10.1.30.144:80

        说明:10.1.30.144是当前计算机的内网IP 地址,通过80 端口提供Web 服务。此项不特意设也可,默认端口就是80。

        其次,修改DocumentRoot ,设定主页所在的根目录。修改后形成如下两行:

        DocumentRoot "/mnt/WinD/www123"

        <Directory "/mnt/WinD/www123">

        第三,修改DirectoryIndex行,确认首页的文件名在其中。如果没有就追加上。

        DirectoryIndex index.html index.html.var

        第四,修改AddDefaultCharset行,将默认编码改为GB2312,这样保证主页上的汉字能正常显示。修改后的

AddDefaultCharset行是:

        AddDefaultCharset GB2312

第五,增加一个Alias,把/data/pub映射为网站根目录下的download目录。增加的内容如下:

        Alias /download/ "/data/pub/"

        <Directory "/data/pub">

        Options Indexes MultiViews

        AllowOverride None

        Order allow,deny

        Allow from all

        </Directory>

上述五步配置的目的是使局域网的其他计算机能用http://10.1.30.144/这个网址访问我的网站了。要下载存放在/data/pub/的软

件,则输入http://10.1.30.144/download/就可以看到文件列表。安装配置好之后,运行下面的命令是就可以启动这个WWW服务器

了。

        /usr/local/apache2/bin/apachectl start

        如果希望系统每次启动时自动启动httpd 服务器,则还要做如下工作。首先,拷贝apachectl 到/etc/rc.d/init.d/,并更

名为httpd ,相应的命令是:

        cp /usr/local/apache2/apachectl /etc/rc.d/init.d/httpd

然后,修改/etc/rc.d/init.d/httpd中的ARGV 行,改成:

        ARGV="start"

        最后,在/etc/rc.d/rc5.d目录下,创建一个指向httpd 的连接。相应的命令是:

        ln /etc/rc.d/init.d/httpd /etc/rc.d/rc5.d/S85httpd

        为了保证在字符模式下启动红旗也能提供Web 服务,还要在/etc/rc.d/rc3.d目录下,创建一个指向httpd的连接。相应的命

令是:

        ln /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S85httpd

提示:

若要重启动这个WWW服务器

       /usr/local/apache2/bin/apachectl restart

若要关闭WWW 服务

       /usr/local/apache2/bin/apachectl stop

例3:RedOffice办公套件

       目的:在Windows下,可以用MS office套件处理处理文档、表格、演示稿等文件。那么在Linux下也需要这样的软件来处理类

似的工作,并且这个软件一定能处理过去在Windows下生成的这类文件。操作:安装RedOffice For Linux V2.0个人版。RedOffice

个人版相对RedOffice标准版进行了一些功能裁减,这些功能是:宏、数据源、文献数据库、新建标签/名片/HTML等文档类型的功能、

自动文件助理、插入动态框、插入区域、图像地图、插入Applet对象/Plug-in 对象、与Java/XML相关的功能。RedOffice个人版无需

安装密码,没有时间限制,可以由个人用户免费、自由地下载、安装和试用。下载得到的RedOffice 安装包名字为

RedOffice2.0_ForLinux.tar.gz,它虽然以.tar.gz结尾,但不是包含源代码的那种tar包,而是一个带安装向导的软件包。

         要解开包,只需执行下面的命令。解压后会形成一个名为RedOffice2.0_ForLinux的文件夹。

         tar -xvzf RedOffice2.0_ForLinux.tar.gz

         接下来在图形界面中进入RedOffice2.0_ForLinux文件夹,双击setup就开始安装了。按提示即可完成全部安装过程。默认

的安装路径是在/root/RedOffice2.0-PE之下。按Linux 管理程序的习惯,应将其修改为/usr/local/RedOffice2.0-PE。安装完成

后,要适当修改RedOffice的某些目录的权限,以防止其他用户使用该软件时出现安全备份错误。相应的命令有:

        chmod 777 /usr/local/RedOffice2.0-PE/user/backup

        chmod 777 /usr/local/RedOffice2.0-PE/user/basic

        安装程序已自动把RedOffice各组件启动的快捷方式放到开始菜单里了。

例4:C++集成开发环境Kdevelop

        在红旗Linux4.1的开发工具盘中,提供了集成开发环境Kdevelop3.0.92。可以下载相应的ISO 文件并利用其中的安装程

序,安装之。安装的第一步,是要挂载红旗Linux4.1的开发工具盘的ISO文件RedFlag4-devel-20040121158.iso,以便读取其中的内

容。挂载前需要选择挂载点。假设在/mnt下创建一个iso目录,专门用于挂载ISO文件。未挂载前,查看此目录,是空的。

       mkdir /mnt/iso

确定了挂载点之后,就可以执行mount 命令进行挂载了。先用cd 命令转移到RedFlag4-devel-20040121158.iso所在的目录,然后执

行如下命令1:

      mout -t iso9660 -o loop,iocharset=cp936 RedFlag-4-devel-20040121158.iso /mnt/iso

      再查看/mnt/iso,我们发现其中已经有文件了。如图11-1。用鼠标双击autorun 就可以启动开发工具盘中的安装向导程序。

在选择软件包的窗口列表中,选中kdeools 分组(如图11-2),点击“下一步”按钮就可以自动把Kdevelop安装到系统中。安装完成

后,从开始菜单中就可以启动Kdevelop:【开始】→【应用程序】→【软件开发】→【Kdevelop】如果不再需要读取开发工具盘的ISO

文件,应该及时卸载它,命令如下。卸载后查看/mnt/iso,会发现它又空了。

      umount /mnt/iso

------------

     1对开发工具盘的ISO文件而言,参数iocharset=cp936并不是必须的。只有在挂载含有中文文件名的的ISO文件时,才需要

iocharset=cp936这个参数以确保中文文件名的正确显示。不使用iocharset=cp936 时的命令应该是这个样子:

    mout -t iso9660 -o loop RedFlag4-devel-20040121158.iso /mnt/iso

图11-1

图11-2

例5:“我爱背单词”

         背单词软件是比较流行的一种学习软件,很多人都用它一边背单词,一边练习指法。可以从红旗Linux4.1的工具盘中找到背

单词软件的安装包。当然可以用例4中提到的方法,借助工具盘中的安装程序安装这个软件。这里介绍用rpm 命令的安装方法。第一

步,从工具盘中提取需要的rpm包。先挂载相应的ISO文件:

        mout -t iso9660 -o loop,iocharset=cp936 RedFlag-4-tool.iso /mnt/iso

然后借助autorun 看背单词安装包包括哪些rpm包。如图11-3。

图11-3

         图中打勾的软件包就是“背单词”软件所必须的。根据这些信息,可以猜测出“背单词”软件所需RPM包的文件名。转移到

/mnt/iso/RedFlag/RPMS目录下,执行ls命令并以reciteword 关键词过滤,就可以找到相应的rpm包了,如图11-4。

         ls -l | grep reciteword

图11-4

可以先把这5 个文件复制到一个单独的目录里备用。第二步,安装rpm包。

可以执行如下命令安装“背单词”软件的5 个rpm包2。

        rpm -Uvh reciteword-0.8.1-10.i386.rpm

        rpm -Uvh reciteword-books-0.8.1-2.i386.rpm

        rpm -Uvh reciteword-dicts-0.8.1-2.i386.rpm

        rpm -Uvh reciteword-RealPeopleTTS-0.8.1-2.i386.rpm

        rpm -Uvh reciteword-skins-rw-0.8.1-2.i386.rpm

也可以执行如下一条命令来安装这5 个包:

        rpm -Uvh reciteword*.rpm --nodeps --force

        *是文件名通配符,reciteword*.rpm 正好匹配上述5 个文件包。参数nodeps 表示在安装时不检查软件包之间的依赖关

系;force 表示强制安装,即使系统中已经有了要安装的软件包,也会重新安装一遍,新安装的将覆盖原有的。

--------------

        2有些软件的各个rpm包之间是有依赖关系的。安装其中某个rpm包,它所依赖的rpm包必须事先安装好,否则安装将无法完

成。为了确定个rpm包之间的依赖关系,可以先尝试随便安装其中某个包,安装程序会自动检测并给出依赖关系提示。手工确定RPM 包

之间的依赖关系是非常麻烦的。

进行rpm包安装时,会出现进程提示。图11-5 上述安装操作的提示信息。

图11-5

         安装完成后,从开始菜单中就可以启动“背单词”软件:【开始】→【应用程序】→【我爱背单词】→【背单词】

软件安装完成后,不要忘记把ISO文件卸载。

         umount /mnt/iso

软件包管理器

         为了编译软件包的管理,可以使用软件包管理器。【开始】→【设置】→【控制面板】→【软件包管理器】软件包管理器有

三个标签,分别是用户软件包、系统软件包和其他工具。如果想查看安装Linux操作系统是,已经自动安装了哪些软件包,可以查看

“系统软件包”。如图11-6。这里的软件包对系统运行很重要,除非特别清楚自己干什么,否则不要随便卸载它们。如果想安装或卸

载应用软件包,可以使用“用户软件包”标签。如图11-7,列出了已经安装的一些应用软件包。选中某软件包,点“卸载软件包”按

钮,就可以进行卸载操作了。其效果等效于带-e 参数的rpm命令。

图11-6

图11-7

linux9.0+apache+php+mysql安装与配置

经过n个不眠之夜,小弟终于配置成功apache+php+mysql [原创]
到www.mysql.com , www.apache.org , www.php.net下载mysql,apache,php的最新源码包
mysql-standard-5.0.1-alpha-snapshot-pc-linux-i686.tar.gz
httpd-2.0.52.tar.gz
php-5.0.2.tar.gz

我们先来安装mysql
cp mysql-standard-5.0.1-alpha-snapshot-pc-linux-i686.tar.gz /usr/local/
tar -zxvf mysql-standard-5.0.1-alpha-snapshot-pc-linux-i686.tar.gz
cd mysql-standard-5.0.1-alpha-pc-linux-i686/
emacs INSTALL-BINARY  获得安装信息
groupadd mysql        
useradd -g mysql mysql 
cd /usr/local/
ln -s mysql-standard-5.0.1-alpha-pc-linux-i686/ mysql  建立软链接
./scripts/mysql_install_db --user=mysql   
chown -R root .            
chown -R mysql data        
chgrp -R mysql .           
./bin/mysqld_safe --user=mysql &   从后台启动mysql,这时会看到
[1] 3879
[root--1014--/usr/local/mysql]Starting mysqld daemon with databases from /usr/local/mysql/data
证明已经成功,可以用ps -aux │ grep mysql 可以看到。
安装成功

再来安装apache
tar -zxvf httpd-2.0.52.tar.gz
cd httpd-2.0.52
emacs INSTALL    获得一些安装信息
./configure --enable-so   --enable-so 
make ; make install
cd /usr/local/apache2/bin
./apachectl start
httpd: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
这时打开浏览器,输入127.0.0.1或你的电脑名,我的为tian1118,然后你就可以看到漂亮的羽毛,证明apache安装成功,而且可以正确显示出简体中文,真爽。
再仔细看看,好像有点问题。
cd /usr/loca/apache2/conf/
cp httpd.conf beifei 备份一下,免得自己改错了。
emacs httpd.conf
找到#ServerName www.example.com:80
把它改为ServerName 127.0.0.1
../bin/apachectl restart  没有出错提示证明成功

再来安装php
tar -zxvf php-5.0.2.tar.gz
cd php-5.0.2
emacs INSTALL  获得一些安装信息
./configure --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql
如果出现如下证明快成功了。
+--------------------------------------------------------------------+   
│ License:                                                           │
│ This software is subject to the PHP License, available in this     │
│ distribution in the file LICENSE.  By continuing this installation │
│ process, you are bound by the terms of this license agreement.     │
│ If you do not agree with the terms of this license, you must abort │
│ the installation process at this point.                            │
+--------------------------------------------------------------------+
 
Thank you for using PHP.

make 
make install
cp php.ini-dist /usr/local/lib/php.ini
cp:是否覆盖‘/usr/local/lib/php.ini’? y

php与apache整合
emacs /usr/local/apache2/conf/httpd.conf  找到DirectoryIndex改为如下:
DirectoryIndex index.html index.php index.htm index.html.var
找到
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
在它后面添加
AddType application/x-httpd-php .php 
/usr/local/apache2/bin/apachectl restart

测试php
emacs /usr/local/apache2/htdocs/index.php
添加<? phpinfo();?>
打开浏览器,输入
http://127.0.0.1/index.php
可以看到关于php的信息,证明php安装成功。

结束语:强烈建议大家在安装软件时用源码安装,虽然很麻烦,但是你知道你都做了什么,知道你把软件包安装到了哪,还有出了问题大家不要着急,先看出错提示,查看出错信息,利用自己所学linxu知识判断是哪出错了,就比如我在安装php时,我想先安装apache,然后php,最后mysql,当我在安装php时加了参数--with-mysql=/usr/local/mysql,在安装时就会出错,还有,在安装php时它还提示我的libxm12的版本太低,我的是RD9.0,内核2.4.20-8,我用rpm -qa │ grep libxm12时,版本才1.,然后下载了libxml2-2.6.10.tar.gz,安装后再安装php就成功了,。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息