目录
为什么要rpm
将一个源代码直接编译成很多个目标程序之后,我们其他的用户使用的就不需要再编译了,直接拿去安装就可以了。
安装的意思就是将这个软件的很多文件都分发到不同的目录中去,因此,安装的另外一个词汇就是分发文件
上JavaSE development kit download 网址,然后我们必须勾选同意才会让我们下载
什么是rpm包
RPM就是已经编译的软件包(执行过make命令,然后打包。还没有执行make install)
这个包在安装的时候会将配置信息告诉操作系统,哪些文件放再哪些目录下都已经做好了规划,同时,它里面会包含一些预处理的脚本,比如说把哪些东西注册到系统服务啊,把哪些东西放到执行目录啊,等等。
我们也可以不使用rpm包,使用压缩包。压缩包是解压即用的,但是我们要处理一些问题,比如说我们要手动配置一下环境变量等。
如果以rpm包安装,在操作系统在Redhat下会有一个数据库,存储我们安装的元数据信息,给我们的维护带来了方便。如果全部都是解压即用的话,很多时候我们会忘记到底将软件安装在哪些目录下了,这就给我们的维护带来了不便。但是rpm包有一个问题就是:我在安装这个rpm包的时候,它可能会需要先安装别的rpm,就是包与包之间的依赖问题。人都是懒惰的,懒惰促使科技的进步。因此,就有人考虑将这些可能依赖到的包都找到放到一个仓库里面去,就是我们经常用到的yum仓库。
rpm的使用
rpm安装命令:
rpm –i | rpm -i example.rpm 安装 example.rpm 包; |
rpm –iv | rpm -iv example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息; |
rpm -ivh | rpm -ivh example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息及安装进度; |
如何设置安装位置:
rpm -ivh --prefix 路径 安装包名.rpm
例如rpm -ivh xxx.rpm(像这种rpm包的都是直接安装,最好不要指定安装目录)
删除
先查询安装后的包名 Rpm –qa | grep jdk 然后使用查询得到的包名进行删除操作 Rpm –e –nodeps 查询所得包名 |
查看jdk是否安装成功
查看Java进程
会告诉我们命令没有找到,因此,我们还是要做环境变量的配置
在配置文件最后加上这两行信息
然后使用source再加载执行一下配置文件,就可以使用jsp了。
2 rpm升级
rpm -Uvh
rpm -Fvh
3 rpm卸载
rpm -e 包名
4 rpm查询
rpm -q PACKAGE_NAME | 查询指定的包是否已经安装 |
rpm -qi PACKAGE_NAME | 得到被安装的包的信息 |
rpm -ql PACKAGE_NAME | 列出该包中有哪些文件 |
rpm -qf FILE_NAME | 列出服务器上的一个文件属于哪一个RPM包 |
rpm -qa | 列出所有被安装的rpm package |
rpm -qilp PACKAGE_NAME | 列出一个未被安装进系统的RPM包文件中包含有哪些文件 |
rpm -qc PACKAGE_NAME | 查询指定包安装的配置文件 |
rpm -qd PACKAGE_NAME | 查询指定包安装的帮助文件 |
如果某个命令文件,例如ifconfig被我们不小心挪动位置找不到了怎么办?
不要慌!!!!
首先在其他虚拟机上找到这个文件应该放置的目录
Whereis ifconfig
然后查找这个文件是由哪个rpm包生成的
rpm –qf /sbin/ifconfig
发现此文件是由net-tools这个包生成的,那么我们再执行这个包,生成一下这个文件就好了。