Linux的软件安装

作者: 少帅yangjie | 来源:发表于2018-05-15 22:49 被阅读24次

    Linux的软件安装方式有三种:

            1、基于rpm的方式

            2、基于yum的方式

            3、基于makefile

    基于rpm的安装方式

            rpm就类似于windows的添加删除程序,它是一个完整的软件包的管理工具,可以安装,卸载,还可以查询,rpm中有比较常用的几个参数:1、-i 表示安装 2、 -e 表示删除 ,3、 -q 表示查询

            rpm -qa -->表示查询系统中的所有的安装包,此时查询出来的内容非常多,可以通过管道|和grep来进行筛选

            rpm -qa | grep sudo-->表示筛选所有的sudo的安装文件

            [root@localhost ~]# rpm -qa | grep sudo

            sudo-1.8.6p7-20.el7.x86_64

            这个安装包的名称是有规律的

            sudo-->表示安装包的名称,这个名称用来做卸载,更新等操作

            1.8.6p7-->表示的是版本号

            -20.el7-->表示的更新次数

            x86_64-->针对的是64位的基于intel的cpu

    通过 -e可以卸载一个软件

            rpm -e sudo

            通过rpm -i 就可以安装这个软件

            rpm -ivh xxxxx.rpm-->表示安装一个rpm的文件,i表示安装,v表示显示详细的安装信息。h表示显示进度

    rpm的安装并不是自动帮助我们安装依赖,所有的依赖都需要手动安装,而且版本还有明确的规定。如果版本不兼容,就有可能导致软件不能使用,所以使用rpm安装,不建议在网络中下载,而是建议使用cdrom来安装,在服务器中,可以考虑将Packages拷贝到一个文件夹中,将来要安装的时候在这个文件夹中进行安装,这样的所有的版本依赖都是合理的。

    后面会讲解yum,yum就等于一个自动的rpm,他会自动帮我们安装依赖包,yum需要网络,如果没有网络,我们可以创建自己的yum工厂,以光盘中的packages文件夹来创建。

    rpm的查询

            rpm -qa -->查询所有的安装包

            rpm -qf -->查询某个命令属于哪个安装包

            [root@localhost Packages]# rpm -qf /usr/bin/vi

            vim-minimal-7.4.160-1.el7.x86_64

            表示vi这个命令的安装包是vim-minimal这个安装包

    通过rpm -ql 软件名称 可以查询某个软件的安装文件的路径,注意linux中,任意一个软件都不会安装在一个位置,而是安装在多个位置,这些位置是有linux帮我确定的,一般来说会把可执行文件安装/usr/bin中。帮助文档会安装在/usr/share/man中,其他的依赖包,日志这些都会安装在相应的文件夹下

            [root@localhost Packages]# rpm -ql samba-client

            /usr/bin/cifsdd

            /usr/bin/dbwrap_tool

            /usr/bin/nmblookup

            /usr/bin/oLschema2ldif

            /usr/bin/regdiff

            /usr/bin/regpatch

            /usr/bin/regshell

            /usr/bin/regtree

            /usr/bin/rpcclient

            /usr/bin/samba-regedit

            /usr/bin/sharesec

            /usr/bin/smbcacls

            /usr/bin/smbclient

            /usr/bin/smbcquotas

            /usr/bin/smbget

            /usr/bin/smbprint

            /usr/bin/smbspool

            /usr/bin/smbtar

            /usr/bin/smbtree

            /usr/libexec/samba

            /usr/libexec/samba/cups_backend_smb

            /usr/share/man/man1/dbwrap_tool.1.gz

            /usr/share/man/man1/log2pcap.1.gz

            /usr/share/man/man1/nmblookup.1.gz

            /usr/share/man/man1/oLschema2ldif.1.gz

            /usr/share/man/man1/regdiff.1.gz

            /usr/share/man/man1/regpatch.1.gz

            /usr/share/man/man1/regshell.1.gz

            /usr/share/man/man1/regtree.1.gz

            /usr/share/man/man1/rpcclient.1.gz

            /usr/share/man/man1/sharesec.1.gz

            /usr/share/man/man1/smbcacls.1.gz

            /usr/share/man/man1/smbclient.1.gz

            /usr/share/man/man1/smbcquotas.1.gz

            /usr/share/man/man1/smbget.1.gz

            /usr/share/man/man1/smbtar.1.gz

            /usr/share/man/man1/smbtree.1.gz

            /usr/share/man/man5/smbgetrc.5.gz

            /usr/share/man/man8/cifsdd.8.gz

            /usr/share/man/man8/samba-regedit.8.gz

            /usr/share/man/man8/smbspool.8.gz

    在实际的使用中,我在安装某个软件之前,可能就需要了解一下这个软件的安装包的位置,(此时还没有安装),可以通过rpm -qlp 来查询,-p表示package意味着是要查询软件的安装包(rpm文件)

            rpm -qlp samba-4.4.4-9.el7.x86_64.rpm##由于该安装包并没有安装在linux中,所以需要使用rpm的文件来查询

    使用rpm -qi 软件名称 可以查询一个软件的功能

            [root@localhost Packages]# rpm -qi samba-client

            Name        : samba-client

            Epoch      :0

            Version    :4.4.4

            Release    :9.el7

            Architecture: x86_64

            Install Date: Tue10Apr201811:13:30 AM CST

            Group      : Applications/System

            Size        :1826831

            License    : GPLv3+and LGPLv3+

            Signature  : RSA/SHA256, Mon21Nov201604:38:35 AM CST, Key ID 24c6a8a7f4a80eb5

            Source RPM  : samba-4.4.4-9.el7.src.rpm

            Build Date  : Mon07Nov201606:31:03 PM CST

            Build Host  : worker1.bsys.centos.org

            Relocations : (not relocatable)

            Packager    : CentOS BuildSystem

            Vendor      : CentOS

            URL        : http://www.samba.org/

            Summary    : Samba client programs

            Description :

            The samba-client package provides some SMB/CIFS clients to complement

            the built-in SMB/CIFS filesysteminLinux. These clients allow access

            of SMB/CIFS shares and printing to SMB/CIFS printers.

    同理 rpm -qip 软件包 这表示查询未安装的软件包的基本信息

            rpm -qip samba-client-4.4.4-9.el7.x86_64.rpm

    使用-qd和-qc可以快速的查询出samba的帮助文档和配置文件的位置

    rpm的常用安装选项是使用-- --nodeps(表示不添加依赖直接安装,但是这样安装出来,90%都是无法使用的)  --excludedocs:安装的时候不安装文档  --replacepkgs:覆盖安装  --replacefiles:安装时覆盖文件

    相关文章

      网友评论

        本文标题:Linux的软件安装

        本文链接:https://www.haomeiwen.com/subject/kzcudftx.html