centos下的软件安装

 CentOS软件安装

linux下的软件包分为两种。分别是二进制包和RPM包


源码包就是c语言的源代码。要安装的时候需要使用gcc命令现场编译

源码包的优点

    1.开源,有足够能力就可以修改源代码。

    2.可以自由选择所需要的功能

    3.软件是编译安装,所以更适合自己的系统,也更稳定高效。

     缺点

     1.安装过程较多,尤其是安装较大的软件时(如LAMP)出错的可能大

     3.编译安装非常慢。(安装一个操作系统用源代码装在不报错的情况下至少需要2,3天,过程全是在编译)

     4.安装报错的话,新手很可能搞不定,因为需要改源码


主要介绍一下rpm包吧。

Redhat,CentOS,Suse用的是rpm包

Debian,Ubuntu用的是det包

但用rpm命令安装软件时会有令人深恶痛绝的依赖性问题,树形依赖和环形依赖还好说,只有有耐心,就可以装成功,但库文件依赖就令人无语了,早期没有网站去查库文件依赖性,库文件依赖只能靠猜。依赖性是什么。举个例子。windows下打游戏时有没有注意到下图的问题

这就是很明显的软件依赖关系。但windows不是太明显,不是什么都需要依赖。linux下基本什么软件都需要依赖。而且一个依赖一个,没完没了的依赖,很烦人。


依赖关系:

1.树形依赖       (A依赖B,B依赖C,C依赖D。)
2.环形依赖       (A依赖B,B依赖A,A依赖B……)

3.库文件依赖    (依赖某个库内的某个文件,可以查询www.rpmfind.net查询依赖问题)


 rpm包的优点

   1.安装过程简单

   2.安装速度快。

    缺点:

    1.是经过编译的,所以看不到源码

    2.功能选择不如源码包灵活

    3.深恶痛绝的依赖性!!!


首先说一下rpm包的命名规则。看下面的例子。

telepathy-mission-control-5.16.3-2.el7.x86_64.rpm

-telepathy-mission-control   软件包名

-5.16.3软件版本

-.2软件的发布次数

-.el7适合的linux平台

-x86_64适合的硬件平台

-rpm包的扩展名


下面演示一下rpm的安装时的依赖性。

这已经说的很明白了,安装mysql-xxx需要libodbc.so.2这个库文件。

那么说以下rpm 的一些选项吧

                  rpm  -i    name.rpm    安装软件包

                          -v   (verbose)     显示过程

                          -h (hash)       显示进度

                                    --nodeps   忽律依赖性(其实是自欺欺人)

                                    --force        强行安装

                          -e   softname     卸载软件包

                   rpm -ql softname       查询软件生成文件
                          -qlp name.rpm    查询软件生成
                          -qa                      所有安装的
                          -qa|grep name
                          -q name
                          -qp name.rpm      查询软件包安装
                          -qf filename         查看filename属于哪个安装包
                          -qi name              查看软件细信息
                          -Kv name.rpm      检测软件包是否被篡改
                          -qp name.rpm --scripts  检测软件在安装或卸载执行的动作


下面演示以下查询类的rpm命令

1.想查一下我装的dhcp都在我的主机上生成了哪些文件

2.我想查一下,我都的机子上都装了什么软件包呢


3.我想查一下,我装了dhcp,mysql没


 4.我想查一下某个文件或者某个命令是装什么rpm包是装的

 

  5.我想查一下我安装的某个软件包是不是被篡改过?(坏人给移植进去了病毒).

看,被修改过后。MD5的校验因为雪崩效应就检验不合格了。

接上面的。还可以用V查看。还可以精确到哪些信息被修改了(八个信息有文件大小,权限。。。。)


 6.我检查了某个rpm确实没被修改过。但还是不敢装。因为不知道里面究竟是什么内容。万一一安装把系统毁了怎么办呢。

(这样不但可以看到安装前。卸载后。这个软件都会执行什么样的脚本)


             

7.我想查一下。dhcp这个软件包的详细信息(连我什么时候安装的都可以查到哦)


下面介绍一下可以大大简化管理员安装软件时的操作的好工具(yum )

     yum是很方便的。但首先需要搭建yum源。在/etc/yum.repos.d下有一些以repo结尾的文件。这就是yum源。


[base]         容器名字(随便写)   

name          容器说明(随便写)

mirrorlist    镜像站点

baseurl       自己配置的yum源地址,跟上面的那个选一个就可以了,另一个注释掉(一定是留一个用)

enabled       此容器是否生效

gpgcheck   RPM的数字认证证书

pgpkey      数字证书的公钥保存地址


这个是网络yum源。就是说,电脑可以上网的话就直接可以使用yum了。而且CentOS是免费的哦(开源精神)

下面说一下使用光盘或者镜像搭建一个自己的本地yum源头。


首先需要有一个光盘或者镜像。

1.将光盘或者镜像挂在起来。

将/dev下的自己光盘挂载到某个目录下。一般来说在/mnt下新建一个cdrom(没有自己创建一个命令是 mkdir /mnt/cdrom),然后挂载在那里。我的光盘叫做sr0。所以我就执行 mount /dev/sr0 /mnt/cdrom  。

2.编辑/etc/yum.repos.d/CentOS_Media.repo这个文件。


3.执行一下yum clean all 清空一下缓存。就把本地yum源搭建完成了。很简单吧。(baseurl就是刚才光盘挂载的地方)



下面先讲解一下yum的一些命令。再演示如何下载软件

yum命令

yum     install
    remove
    repolist    列出源信息
    list         查看源中是否有此软件
    list all    查看源中所有的软件
    list installed   查看已经安装的软件
    list available   查看可以使用的
    clean all        清空缓存
    search        通过关键字搜索软件
    whatprovides    通过信息(如文件名)查看搜索软件
    update        升级
    history        查看对系统修改的yum命令
    reinstall    重新安装
    info        查看软件信息
    groups list
    groups info     组软件信息
    groups install    组安装
    groups remove    组移除


下面就演示一下下载软件吧。1.比如下载一个dhcp(分配IP地址的服务)


2.查看我是否下载了dhcp

3.查看软件dhcp的信息。

4.我想要下载一些软件组。(先查一下都有哪些软件组)

(可以看到有虚拟化呀。KDE桌面呀,图形工具呀什么的)


但毕竟官方的rpm包有限。我想要安装一个第三方软件怎么办(下面教如何搭建一个第三方yum源)


1.首先创建一个目录。里面放一些rpm包,注意该目录下必须全是rpm包,不能有其他东西。

我都创建好了。这就不演示了

2.配置第三方yum源。还是在那个/etc/yum.repos.d/CentOS-Media.repo下配置。(file://后跟自己的软件所在的目录。该目录下必须全是rpm包)

3.执行createrepo -v  刚才放rpm包的目录路径,看下图


4.执行命令。yum clean all。清空缓存


好了。可以下载第三方软件了

我在网上找个谷歌浏览器的rpm包(百度搜索rpmfind)


下载下来。


其实yum源还可以自己搭建一个网络yum源(局域网)

先yum -y install httpd 下载阿帕其.然后systemctl start httpd 启动他。start换成status可以查看状态

然后在//var/www/html 下新建一个目录。我的叫做CentOS7 

将光盘挂载在这个目录下。就好了。我通过回环接口看一下






















  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值