zoukankan      html  css  js  c++  java
  • Linux 程序包管理

    Linux程序包管理
        API:Application Programming Interface
            各个平台的库文件对外呈现相同标准的接口,虽然它们的实现方式不同;但是相同的源代码在不同平台上经过编译以后都可以运行;
        POSIX:Portable OS
            程序源代码→预处理→编译→汇编→连接   
                详细解释:https://blog.csdn.net/derkampf/article/details/71597684
                静态编译:库文件整合到程序内部的;
                共享编译(动态链接库):多个程序调用共同的库文件;
        ABI:Application Programming Interface
            不同源代码在经过编译以后形成的可执行程序文件格式不尽相同,所以经过编译的源代码通常不能在不同平台上运行;
                linux:ELF格式
                Windows:EXE格式
                可以通过库级别的虚拟化来实现不同平台的兼容
                    Linux:WINE
                    Windows:Cywin
            系统级开发:C,C++
            应用级开发:Python,Java,PHP(世界上最好的语言)等;(滑稽脸)
            二进制应用程序的组成部分
                二进制文件,库文件(程序本身提供给他人的,容许其调用进行二次开发的库文件),配置文件,帮助文档;
            程序包管理器:
                debin:deb格式,dpt管理器;
                redhat:rpm格式,rpm管理器;
                    rpm:redhat package manager
                    rpm:rpm is Package Manager
            源代码:name-VERSION.tar.gz
                VERSION:major.minor.release
                rpm包命名方式:
                    name-VERSION-ARCH.rpm
                        VERSION:major.minor.release
                        ARCH:release.so.arch
                        
                        zlib-1.2.7-13.el7.i686.rpm
                    testapp:拆包
                        testapp-VERSION-ARCH.rpm:主包
                        testapp-devel-VERSION-ARCH.rpm:子包
                        testapp-testing-VERSION-ARCH.rpm:子包
                    包依赖关系:
                        rpm包之间可能存在依赖关系,比如安装某个包之前需要提前安装另一个或多个包;
                        yum:rpm包管理器的前端工具;
                        apt-get:deb包管理器的前端工具;
                        zypper:suse上rpm的前端管理工具;
                    查看依赖关系的命令:
                        ldd /PATH/TO/ELF_FILE:显示某二进制程序所依赖的库文件;
                        ldconfig -p:显示加载到内存中的所有可用库文件名称,及文件路径映射关系;
                            其配置文件为:/etc/ld.so.conf,/etc/ld.so.conf.d/*.conf
                            缓存文件:/etc/ld.so.cache
                程序包管理:
                    功能:将编译好的应用程序的各组成文件打包成一个或几个程序包文件,从而方便快捷的完成程序包的安装、卸载、查询、升级和检验等管理操作;
                    
                        程序的组成清单(每个包独有):
                            文件清单
                            安装或卸载时运行的脚本
                        数据库(公共):
                            程序包的名称及版本
                            依赖关系
                            功能说明
                            安装生成的各文件的路径及校验码信息
                    管理程序包的方式:
                        使用包管理器:rpm,deb等
                        使用前端工具:yum,apt-get等
                    获取程序包途径:
                        系统发行版所带的光盘或官网;
                        Centos镜像:
                            http://mirrors.aliyun.com
                            http://mirrors.sohu.com
                            http://mirrors.163.com
                        项目官方站点
                        第三方组织
                            Fedora-EPEL
                        搜索引擎:
                            http://pkgs.org
                            http://rpmfind.net
                            http://rpmpbone.net
                        自己制作
                    建议:使用前检查其合法性;
                        来源合法性;
                        程序包完整性;
                        
        

    注:根据马哥视频做的学习笔记,如有错误,欢迎指正;侵删

  • 相关阅读:
    添加绝对路径的链接
    css-------------控制溢出隐藏 换行用省略号表示
    引入公共头部 脚部
    入口图片放在浏览器正中间,点击之后缩小固定在浏览器一侧
    伪类 统一添加样式
    nav 鼠标移入当前高亮显示,其他消失
    17/9/6 bootstrap.css去掉后引发的样式错乱
    JavaScript的常见兼容问题及相关解决方法(chrome/IE/firefox)
    javascript特效实现——当前时间和倒计时效果
    使用DataTables导出excel表格
  • 原文地址:https://www.cnblogs.com/guowei-Linux/p/9787334.html
Copyright © 2011-2022 走看看