在Windows下安装一个软件很轻松,只要双击setup或者.exe的文件,安装提示连续“下一步”即可,然而linux系统下安装一个软件并不那么轻松,因为我们不是在图形界面下,所以要学会如何在linux下安装一个软件,类似在Windows上下载安装一个游戏一样,无非找到对应的可执行文件,直接双击就可以,然后在安装过程中,可能会考虑到将此服务安装到哪个目录之下,当然也会有各种配置文件,只不过平时我们没有注意过这些,其实Linux系统也一样,但稍微比Windows要复杂一些。在红帽一派的系统中,安装方式有3种,源码编译安装、rpm包安装、和yum源安装


编译安装

如何在linux系统下安装edem linux怎么安装exe软件_rpm包


RPM包安装

RPM是”Redhat Package Manager”的写,根据名字也能猜到这是Redhat公司开发出来的。RPM 是以一种数据库记录的方式来将你所需要的套件安装到你的Linux 主机的一套管理程序。也就是说,你的linux系统中存在着一个关于RPM的数据库,它录了安装的包以及包与包之间依赖相关性。RPM包是预先在linux机器上编译好并打包好的文件,安装起来非常快捷。但是也有一些缺点,比如安装的环境必须与编译时的环境一致或者相当;包与包之间存在着相互依赖的情况;卸载包时需要先把依赖的包卸载掉,如果依赖的包是系统所必须的,那就不能卸载这个包,否则会造成系统崩溃

• 安装软件包
 rpm常用命令
 -vh:显示安装进度;
 -U:升级软件包;
 -qpl:列出RPM软件包内的文件信息;
 -qpi:列出RPM软件包的描述信息;
 -qf:查找指定文件属于哪个RPM软件包;
 -Va:校验所有的RPM软件包,查找丢失的文件;
 -qa: 查找相应文件,如 rpm -qa mysql
 -e 卸载rpm包
 -q 查询已安装的软件信息
 -i 安装rpm包
 -u 升级rpm包
 –replacepkgs 重新安装rpm包
 –justdb 升级数据库,不修改文件系统
 –percent 在软件包安装时输出百分比
 –help 帮助
 –version 显示版本信息
 -c 显示所有配置文件
 -d 显示所有文档文件
 -h 显示安装进度
 -l 列出软件包中的文件
 -a 显示出文件状态
 -p 查询/校验一个软件包文件
 -v 显示详细的处理信息• rpm的查询
 查询软件包是否安装:
 [root@base ~]# rpm -q zsh
 zsh-5.0.2-33.el7.x86_64
 查询系统中所有已经安装的软件包有哪些:
 [root@base ~]# rpm -qa
 查询某个文件是由哪个软件包安装的:
 [root@base ~]# rpm -qf which vim
 vim-enhanced-7.4.629-6.el7.x86_64
 查询软件的配置文件:
 [root@base ~]# rpm -qc httpd
 安装某个软件时,都安装了哪些文件:
 [root@base ~]# rpm -ql httpd
 查询安装的软件包的信息:
 [root@base ~]# rpm -qi httpd
 查询未安装的软件包的相关信息:
 [root@base ~]# rpm -qpi gcc-4.8.5-39.el7.x86_64.rpm• rpm包的卸载:rpm -e zsh
• rpm包的校验
 V:后面接软件名称,该软件所含的文件被改动过,才会被列出来,针对一个软件查询
 Va:列出系统上面所有有可能被改动过的文件。针对整个系统的
 Vp:后面接RPM软件包
 Vf:列出某个文件是否被改动过
 校验命令举例:-rpm -Vf /usr/sbin/sshd
 校验命令输出的标记含义如下:
 S 表示文件长度发生了变化
 M 表示文件的访问权限或文件类型发生了变化
 5 表示MD5校验和发生了变化
 D 表示设备节点的属性发生了变化
 L 表示文件的符号链接发生了变化
 U 表示文件/子目录/设备节点的owner发生了变化
 G 表示文件/子目录/设备节点的group发生了变化
 T 表示文件最后一次的修改时间发生了变化
PS:如果在输出结果中有“M”标记出现,那么对应的文件可能已经遭到篡改或替换,此时可以通过卸载这个rpm包重新安装来清除受攻击的文件

yum安装

YUM(Yellow dog Updater Modified): yum是Redhat系列系统基于RPM包构建的软件更新机制,可以自动解决 rpm 包之间的依赖关系,所有软件包由集中的yum软件仓库提供。其理念是使用一个中心仓库(repository)管理一部分甚至一个distribution的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、 删除等操作,减少了Linux用户一直头痛的dependencies的问题。 可以同时配置多个资源库(Repository),简洁的配(/etc/yum.conf),自动解决增加或删除rpm包时遇到的依赖性问题,保持与RPM数据库的一致性
PS: yum的配置文件在 /etc/yum.repos.d/ 下面,必须以 .repo 结尾

    • 安装
     yum install 全部安装
     yum install package1 安装指定的安装包package1
     yum groupinsall group1 安装程序组group1• 更新和升级
     yum update 全部更新
     yum update package1 更新指定程序包package1
     yum check-update 检查可更新的程序
     yum upgrade package1 升级指定程序包package1
     yum groupupdate group1 升级程序组group1• 查找和显示
     yum info package1 显示安装包信息package1
     yum list 显示所有已经安装和可以安装的程序包
     yum list package1 显示指定程序包安装情况package1
     yum groupinfo group1 显示程序组group1信息yum search string 根
     据关键字string查找安装包• 删除程序
     yum remove | erase package1 删除程序包package1
     yum groupremove group1 删除程序组group1
     yum deplist package1 查看程序package1依赖情况• 清除缓存
     yum clean packages 清除缓存目录下的软件包
     yum clean headers 清除缓存目录下的 headers
     yum clean oldheaders 清除缓存目录下旧的headers
     yum clean, yum clean all(=yumcleanpackages; yum cleanoldheaders) 清除缓存目录下的软件包及旧的headers• 查看这个命令是由哪个包提供的: yum provides pstree
    • 查看yum仓库中所有的rpm包: yum list | grep httpd
    • 查看要安装的包的详细信息: yum info httpd
    • 安装软件包: yum install httpd -y
    • 卸载软软件包: yum remove httpd -y