Linux软件安装方法小结[转]
在使用Linux系统的过程中,软件包的安装是避免不了的,在Linux下,软件安装程序的种类很多,安装方法也各式各样,(舒适性自然比不上windows :-))不过我们常见的软件包有两种:
1)含有软件的源代码的压缩包,解压后需要手动编译。这种软件安装包通常是用gzip压缩过的tar包(后缀为.tar.gz)。
./configure (配置)?
make (编译)
make install (安装)
make clean (卸载)
注:典型的源代码包可以这样安装,但不都是这样,如webmin
要执行其目录下./setup.sh进入交互式配置安装
卸载用uninstall程序
具体如果不清楚看要安装的包下的README文件
2)软件的可执行程序,你只要安装它就可以了(习惯windows安装的朋友的最爱!)。这种软件安装包叫做RPM包(RedhatLinuxPacketManager,就是Redhat的包管理器),后缀是.rpm。
当然,还有有用rpm格式打包的源代码;用gzip压缩过的可执行程序包。
但是只要理解了以下的安装思路,这两种形式的安装包也不在话下了。
下面,我们进行不同软件包安装的详细介绍
第一部分:安装.tar.gz软件包
1.首先,使用tar -xzvf来解开这个包,如:
# tar -xzvf apache_1_3_6_tar.gz
*******************************************
tar命令参数解释:
x 从档案文件中释放文件。
z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。
v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。
f 使用档案文件或设备,这个选项通常是必选的。
如果需要详细了解tar的使用参见其他文档
*******************************************
这样就会在当前目录中创建了一个新目录(目录名与.tat.gz包的文件名类似),用来存放解压了的内容。如本例中就是apache_1.3.6
2.进入这个目录,再用ls命令查看一下所包含的文件,命令如下:
# cd apache_1.3.6
# ls
你观察一下这个目录中包含了以下哪一个文件:configure、Makefile还是Imake。
1)如果是configure文件,就执行:
# ./configure
# make
# make install
2)如果是Makefile文件,就执行:
# make
# make install
3)如果是Imake文件,就执行:
# xmkmf
# make
# make install
4)如果没有itstall(安装过程)文件例如rzsz软件包,就执行
# make posix
或
# make linux
3.如果没有出现什么错误提示的话,tar包就安装完毕了。软件安装到什么位置,通常会在安装时出现。如果没有可以查阅一下README。
tar包安装过程中的常见问题:
1)没有安装C或C++编译器
确诊方法:执行命令gcc(C++则为g++),提示找不到这个命令。
解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:
# rpm -ivh gcc*(C或C++编译器是RPM包,后续会讲到)
2)没有安装make工具
确诊方法:执行命令make,提示找不到这个命令。
解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:
# rpm -ivh make*
3)没有安装autoconf工具;
确诊方法:执行命令make,提示找不到这个命令。
解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:
# rpm -ivh autoconf*
4)缺少某些链接库;
确诊方法:在make时,提示需要某些文件。
解决方法:安装包含这个文件的包。
第二部分:安装.rpm软件包
RPM是RedHat公司随RedhatLinux推出了一个软件包管理器,通过它能够更加轻松容易地实现软件的安装(像windows下安装软件一样)。
1.安装软件:执行rpm -ivh rpm包名,如:
# rpm -ivh apache-1.3.6.i386.rpm
*******************************************
rpm 参数解释:
i 安装软件包
v 显示附加信息
h 安装时输出哈希标记(``#'')
如果需要详细了解rpm的使用参见附录
*******************************************
2.升级软件:
# rpm -Uvh rpm包名
3.卸载软件包:
# rpm -e rpm包名
4.查询软件包的详细信息:
# rpm -qpi rpm包名
5.查询某个文件是属于那个rpm包的:
# rpm -qf rpm包名
6.查该软件包会向系统里面写入哪些文件:
# rpm -qpl rpm包名
*****************************************