第六章_Linux软件包的安装
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课件制作:冷小星
6.2 RPM 软件包安装与管理
• RPM的具体使用方法:
-i 安装一个软件包,而且这个软件不能和系统已存在的软件是同名。 例:#rpm -i apache-2.3.27-3redhat.i386.rpm -e 删除一个已经安装的软件。 删除软件的时候,一般我们只需要输入软件名,就能删除,不需要软 件的全名,删的时候,我们可以忽略版本号。因为使用RPM系统后, 您的系统中不会存在同名的不同版本软件。 #rpm -e apache-2.3.27-3redhat #rpm -e apache 以上2种方法都能够把apache从系统中删除。
课件制作:冷小星
6.2 RPM 软件包安装与管理
• RPM的2个升级安装开关: -U 升级一个已存在的软件包,如果该软件在系统中不存 在,则安装。 -F --freshen 升级一个已存在的软件包,如果该软件在 系统中不存在,则放弃。 -F和-U的使用方法基本和-i一致。 # rpm -U apache-2.3.27-3redhat.i386.rpm # rpm -F apache-2.3.27-3redhat.i386.rpm
课件制作:冷小星
6.2 RPM 软件包安装与管理
• RPM的2个查看安装过程的开关:
-h --hash 用一些“#”来显示安装过程。 -v 和-h一起使用,显示正在安装的软件名。 -v和-h都可以和-i或-U或-F一起使用。 安装Linux的软件的时候,经常会碰到一个问题,依赖关系。而 大部分的Linux程序都依赖于glibc这个库。在使用rpm的时候,依赖 关系有时候是需要,而有时候是被需要,我们可以忽略这些关系库, 用--nodeps开关。 --nodeps可以和-i或-U或-F或-e一起使用,来忽略软件包的依赖关系。 但是这样删除一个软件,可能会引起某些软件的出错。
6.2 RPM 软件包安装与管理
• -qi 显示软件包的详细信息, • -ql 显示该软件包含的文件被装在文件系统中的具体位置。 • -qf 查询一个文件是属于哪个软件
课件制作:冷小星
6.2 RPM 软件包安装与管理
# rpm -q --whatrequires apache 该命令显示哪些软件工作要依靠apache这个软件。 --whatprovides不像-f选项,不用给出文件的具体路径, 就能查看该文件由哪个软件提供,但不是所有文件都能这 样查看,主要是查看模块文件。 # rpm -q -whatprovides mod_vhost_alias.so 该命令显示mod_vhost_alias.so模块由哪个软件提供
6.2 RPM 软件包安装与管理
--root 以指定的目录作为根,进行软件安装。 比如进入了rescue系统后,修复系统,许多软件给误删 后,可以通过重新安装次来恢复,但是光盘的内容在 /mnt/source,而我们要修复的系统的根在/mnt/sysimage。 这个时候可以使用--root。比如丢失了inittab脚本,而 你一时间又没有能力重新。就可以通过rpm来修复。
课件制作:冷小星
6.1 源代码软件安装
在./configure之后在继续下面两个步骤就可以将源代码包安装到计 算机 make 编译源代码,把源代码编译成计算机可以执行的二进制文件。 make install 将软件包安装的指定的位置。 注意,make install这步一般需要root才能执行
课件制作:冷小星
Linux培训系列 -Linux基础
system 06
课件制作:冷小星
第六章 Linux软件包的安装
6.1 源代码软件安装 6.2 RPM 软件包安装与管理 6.3 DEB 软件包安装与管理
课件制作:冷小星
第六章 Linux软件包的安装
• 软件下载地址: download.chinaunix.net www.rpmfind.net www.rpmfind.com • 各应用程序可以到各自的官方网站获取,
课件制作:冷小星
6.2 RPM 软件包安装与管理
• RPM: 目前有许多的安装文件被制作成xxx.src.rpm软件包,这 样包其实跟我们所熟知的tar.gz基本上一样,都属于源代 码方式的安装,在下载了.src.rpm后,可以依据下面的示 例进行安装: #rpm -ivh xxx.src.rpm #cd /usr/src/redhar/SOURCES/xxx #rpmbuild -ba xxx.spec #cd /usr/src/redhar/RPMS/i386/ #rpm -ivh xxx.rpm
课件制作:冷小星
6.2 RPM 软件包安装与管理
• RPM的具体使用方法: • 实例: # rom –ivh samba-1.2.12.rpm
-i安装samba包,-v显示详细信息,-h 用#显示进度
# rpm -ivh --force apache-1.0.12.rpm
--force 强制安装,该例子中,我们用一个旧版的apache覆盖了新版的 apache。 新的软件未必是好的软件,新的软件有时候可能会有许多bugs,所以用户依 然想使用旧的软件。当你安装一个旧版本时会出错,因为一个同名的高版本 软件已经存在,这个时候,我们可以用--force来强制安装。
课件制作:冷小星
6.2 RPM 软件包安装与管理
• # rpm -qR apache -R apache需要哪些模块才能正常工作。 • --provides 查询该软件提供哪些模块。 # rpm -q --provides apache 该命令显示了apache这个软件提供了哪些模块。
课件制作:冷小星
6.1 源代码软件卸载
卸载有两种方式: 1. 进入软件包的目录,利用make uninstall 命令删除。 2. 手工删除:找到安装的文件。一一删除。
课件制作:冷小星
6.2 RPM 软件包安装与管理
RPM是一个二进制软件安装方法。RPM是一个强大的软件包管理系统。 RPM软件包由4部分构成:软件名、版本号、系统架构、以RPM结尾的 后缀名。 例: apache-2.3.27-3redhat.i386.rpm apache是一个软件名 2.3.27-3redhat是软件的版本号 i386是系统架构 rpm是文件后缀名。凡是以rpm为后缀名的文件,在系统中都以红 色的显示。 • •
课件制作:冷小星
6.3 DEB 软件包安装与管理 • Deb是Ubuntu下面的软件包管理器,
在Ubuntu的/etc/apt目录下有一个sources.list,这个文件中是文件 安装的源,就是需要在那些网站上的目录下,查询或安装.deb格式的 文件包。 命令: apt-cache search 安装的命令: apt-get install 文件名 (它还可以安装与之关联的文件包)。 你可以在sources.list中添加源,然后可以用命令apt-get update来 更新即可,即可以在新的源中安装软件。 当源中的服务器上有最 新的软件包,可以用apt-get upgrade 来更新系统中已经安装的软件
课件制作:冷小星
6.2 RPM 软件包安装与管理
修复方式如下:
-/bin/sh-2.05b# chroot /mnt/sysimage sh-2.05b# rpm -qf /etc/inittab initscripts-6.96-16redhatSrv 首先查到inittab文件属于哪个软件包。然后开始修复 sh-2.05b# exit -/bin/sh-2.05b# rpm -ivh –root /mnt/sysimage \ > /mnt/source/redhat/RPMS/initscripts-6.96-6redhatSrv.i586.rpm
课件制作:冷小星
6.3 DEB 软件包安装与管理
• 前边的几个命令都是在源中的服务器上安装到本地 • 那么Deb包如何安装呢? 命令: dpkg -i package.deb 即可安装软件包 dpkg -r package.deb 删除软件包(除配置文件以外) dpkg -P package.deb 删除软件包(包括配置文件) dpkg -L package.deb 查看与软件包关联的文件 dpkg -l package.deb 查看软件包的版本 dpkg --unpack package.deb 解开软件包的内容 dpkg -l 列出当前已安装的软件包 dpkg -c package.deb 查看软件包中的内容 dpkg-configure package 配置软件包
课件制作:冷小星
6.2 RPM 软件包安装与管理
2个特殊的架构: • noarch,这类软件包属于无架构跨平台类型的RPM软件包。 最好的例子就是Webmin软件。 • src.rpm,这个软件包内其实就是源代码,只不过将源代 码做成了一种很方便安装的形式。但是其他平台必须也是 以RPM作为软件管理的平台。
课件制作:冷小星
6.3 DEB 软件包安装与管理
课件制作:冷小星
6.2 RPM 软件包安装与管理
CPU架构有很多种如: x86、i386、i486、i586、i686、ia64、sparc、s390、ppc等,电脑的 体系架构非常多,我们就只举这些例子。这些体系架构已经明确规定了我们 当前这个软件包适用于什么环境。我们必须要清楚那些二进制软件可以应用 载哪种类型的硬件平台中。apache-2.3.27-3redhat.i386.rpm,这样一个软 件包只能装在系统至少为i586或者i686的机器上,而如果装在i586以下的机 型,则会出错。x86架构的包则可以装在所以intel架构的机器上。 如果把其他架构的软件包,安装到一个硬件架构不匹配的机器上,则安 装就会出错。比如把ppc的装在intel架构的机器,是错误的。
课件制作:冷小星
6.1 源代码软件安装
• GNU的软件都是开源的,基本上在官方网站都有源代码下 载,源代码软件包的格式都是用gzip或者bzip2压缩的打 包文件。首先解压软件包。解压后,进入目录,基本上都 有README文件,浏览一下,都有安装说明。现今源代码软 件基本都有智能配置脚本。 • 源代码包——是全部由源代码构成的,需要重新编译。 • 源代码具有良好的通用性,在不同的硬件平台下,用户只 需要重新编译后,即可使用,甚至对于有一定编程能力的 用户来说,可以自己修补bug,自己添加新的功能。缺点 就是编译速度慢,并且对于新手来说,如果载编译中出现 问题将很难解决
课件制作:冷小星
wk.baidu.com
6.1 源代码软件安装
• ./configure 执行软件包 • 执行软件包目录的智能配置脚本configure。 • 在编译源代码的软件包的时候,最好能够先看看你是不是 需要其他的安装选项。比如说指定软件安装的位置等。如 果确实需要的话,那么需要在执行configure命令之前加 上相应的参数,如: ./configure –prefix=/usr/local/softs -prefix 指定安装位置 • 如果您想查看有关configure的参数您可以利用下面命令 查看:./configure --help
课件制作:冷小星
6.2 RPM 软件包安装与管理
• 查询RPM软件包
• 查找时在-q后跟上软件名,不要版本号即可,和删除一样,也不要输入整个 软件包的包名。 -q 查询软件包 如果安装了apache-2.3.27-3redhat.i386.rpm # rpm -q apache apache-2.3.27-3 如果没有安装 # rpm -q apache package apache is not installed
课件制作:冷小星
6.2 RPM 软件包安装与管理
-a all,显示所有已经安装的软件。
可以使用管道加less或grep来对结果进行过滤。 # rpm -qa | grep apach apache-devel-1.3.27-3redhat apache-1.3.27-3redhat
课件制作:冷小星