内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

rpm包及rpm命令詳解-創(chuàng)新互聯(lián)

一、軟件運行環(huán)境

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供郴州企業(yè)網(wǎng)站建設(shè),專注與做網(wǎng)站、成都網(wǎng)站設(shè)計、H5頁面制作、小程序制作等業(yè)務(wù)。10年已為郴州眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計公司優(yōu)惠進行中。

       API: Application Programming Interface

             國際標準 POSIX: Portable OS

        執(zhí)行流程: 程序源代碼 –> 預(yù)處理 –> 編譯 –> 匯編 –> 鏈接

            靜態(tài)編譯:將編譯完成的程序代碼以及所依賴的庫文件一起打包使用

            共享(動態(tài))編譯:使用獨立的外置的庫文件,與系統(tǒng)中的其他程序共享庫,linux 中以 .so結(jié)尾,譯為共享對象

        ABI: Application Binary Interface 應(yīng)用程序二進制接口

          (Windows與Linux的ABI不兼容)

            linux: ELF(Executable and Linkable Format)

            windows:PE( Portable Executable)

        庫級別的虛擬化:

            Linux: WINE

            Windows: Cywin

二、C程序編譯過程

rpm包及rpm 命令詳解

三、Java程序運行

rpm包及rpm 命令詳解

三、開發(fā)語言

                系統(tǒng)級開發(fā)

                    C

                    C++

                應(yīng)用級開發(fā)

                    java

                    delphi

                    Python

                    go

                    php

                    perl

                    ruby

四、包管理器

                二進制應(yīng)用程序的組成部分:

                    二進制文件、庫文件、配置文件、幫助文件

                程序包管理器:

                    debian: deb文件, dpkg包管理器

                    redhat: rpm文件, rpm包管理器

                    rpm: Redhat Package Manager

                    RPM Package Manager

        包命名

            源代碼: name-VERSION.tar.gz|bz2|xz

             VERSION: major.minor.release

            rpm包命名方式:

                name-VERSION-release.arch.rpm

                例:   bash-4.2.46-19.el7.x86_64.rpm

                    VERSION: major.minor.release

                    release: release.OS

        常見的arch:

            x86: i386, i486, i586, i686

            x86_64: x64, x86_64, amd64

            powerpc: ppc

          跟平臺無關(guān): noarch

    包命名和工具

    包:分類和拆包

            Application-VERSION-ARCH.rpm: 主包

            Application-devel-VERSION-ARCH.rpm 開發(fā)子包

            Application-utils-VERSION-ARHC.rpm 其它子包

            Application-libs-VERSION-ARHC.rpm 其它子包

        包之間:可能存在依賴關(guān)系,甚至循環(huán)依賴

        解決依賴包管理工具:

            yum: rpm包管理器的前端工具

            apt-get: deb包管理器前端工具

            zypper: suse上的rpm前端管理工具

            dnf: Fedora 18+ rpm包管理器前端管理工具

    庫文件

        查看二進制程序所依賴的庫文件:

            ldd /PATH/TO/BINARY_FILE

        管理及查看本機裝載的庫文件:

        ldconfig

        /sbin/ldconfig -p: 顯示本機已經(jīng)緩存的所有可用庫文件

                    名及文件路徑映射關(guān)系

        配置文件: /etc/ld.so.conf, /etc/ld.so.conf.d/*.conf

        緩存文件: /etc/ld.so.cache

        (當安裝時需要依賴庫時,需要手動在conf文件中加入依賴庫的路徑,然后用ldconifg,讀取庫的地址到緩存中,以供安裝時候調(diào)用)

    包管理器

        程序包管理器:

            功能:將編譯好的應(yīng)用程序的各組成文件打包一個或幾個

            程序包文件,從而方便快捷地實現(xiàn)程序包的安裝、卸載、查詢、

            升級和校驗等管理操作

        1、包文件組成 (每個包獨有)

            RPM包內(nèi)的文件

            RPM的元數(shù)據(jù),如名稱,版本,依賴性,描述等

            安裝或卸載時運行的腳本 (非官方包,則應(yīng)特別注意此腳本,確認無誤才安裝)

        2、數(shù)據(jù)庫(公共)

            程序包名稱及版本

            依賴關(guān)系

            功能說明

            包安裝后生成的各文件路徑及校驗碼信息

    程序包的來源

        管理程序包的方式:

            使用包管理器: rpm

            使用前端工具: yum, dnf

        獲取程序包的途徑:

            (1) 系統(tǒng)發(fā)版的光盤或官方的服務(wù)器;

                CentOS鏡像:

                https://www.centos.org/download/

                http://mirrors.aliyun.com

                http://mirrors.sohu.com

                http://mirrors.163.com

            (2) 項目官方站點

           (3) 第三方組織:

                Fedora-EPEL:

                Extra Packages for Enterprise Linux

                Rpmforge:RHEL推薦,包很全

            搜索引擎:

                    http://pkgs.org

                    http://rpmfind.net

                    http://rpm.pbone.net

                    https://sourceforge.net/

          (4) 自己制作

            注意:檢查其合法性: 來源合法性,程序包的完整性

    rpm包管理

        CentOS系統(tǒng)上使用rpm命令管理程序包:

        安裝、卸載、升級、查詢、校驗、數(shù)據(jù)庫維護

          安裝:

            rpm {-i|–install} [install-options] PACKAGE_FILE…

            -v: verbose 顯示詳細信息

            -vv: 顯示更詳細的信息

            -ql  顯示包內(nèi)容

            -h: 以#顯示程序包管理執(zhí)行進度

            rpm -ivh PACKAGE_FILE …

            rpm包安裝

                [install-options]

                –test: 測試安裝,但不真正執(zhí)行安裝; dry run模式

                –nodeps:忽略依賴關(guān)系

                –replacepkgs 替代、覆蓋安裝 |  replacefiles  安裝包、版本等不同,但是生成的

                    系統(tǒng)內(nèi)容一樣,覆蓋安裝

                –nosignature: 不檢查來源合法性

                –nodigest:不檢查包完整性

                –noscipts:不執(zhí)行程序包腳本片斷

                %pre: 安裝前先運行腳本; –nopre

                %post: 安裝后腳本; –nopost

                %preun: 卸載前腳本; –nopreun

                %postun: 卸載后腳本; –nopostun

            rpm包升級

              升級:

                rpm {-U|–upgrade} [install-options] PACKAGE_FILE…

                rpm {-F|–freshen} [install-options] PACKAGE_FILE…

                upgrade:安裝有舊版程序包,則“升級”

                如果不存在舊版程序包,則“安裝”

                freshen:安裝有舊版程序包,則“升級”

                如果不存在舊版程序包,則不執(zhí)行升級操作

                rpm -Uvh PACKAGE_FILE …

                rpm -Fvh PACKAGE_FILE …

                –oldpackage:降級

                –force: 強行升級

                升級注意項

                (1) 不要對內(nèi)核做升級操作; Linux支持多內(nèi)核版本并存,因此

                ,對直接安裝新版本內(nèi)核

                (2) 如果原程序包的配置文件安裝后曾被修改,升級時,新版本

                的提供的同一個配置文件并不會直接覆蓋老版本的配置文件,而

                把新版本的文件重命名(FILENAME.rpmnew)后保留

            包查詢

                rpm {-q|–query} [select-options] [query-options]

                [select-options]

                    -a: 所有包

                    -f: 查看指定的文件由哪個程序包安裝生成

                    -p rpmfile:針對尚未安裝的程序包文件做查詢操作;

                    –whatprovides CAPABILITY:查詢指定的CAPABILITY

                                    由哪個包所提供

                    –whatrequires CAPABILITY:查詢指定的CAPABILITY被

                                哪個包所依賴

                rpm2cpio 包文件|cpio –itv 預(yù)覽包內(nèi)文件

                rpm2cpio 包文件|cpio –id “ *.conf” 釋放包內(nèi)文件

            包查詢

                [query-options]

                    –changelog:查詢rpm包的changelog

                    -c: 查詢程序的配置文件

                    -d: 查詢程序的文檔

                    -i: information

                    -l: 查看指定的程序包安裝后生成的所有文件;

                    –scripts:程序包自帶的腳本片斷

                    -R: 查詢指定的程序包所依賴的CAPABILITY;

                    –provides: 列出指定程序包所提供的CAPABILITY;

                查詢用法:

                    -qi PACKAGE, -qf FILE, -qc PACKAGE, -ql

                    PACKAGE, -qd PACKAGE

                    -qpi PACKAGE_FILE, -qpl PACKAGE_FILE, …

                    -qa

                卸載:

                    rpm {-e|–erase} [–allmatches] [–nodeps] [–

                    noscripts] [–notriggers] [–test] PACKAGE_NAME …

            包校驗

                rpm {-V|–verify} [select-options] [verify-options]

                    S file Size differs

                    M Mode differs (includes permissions and file type)

                    5 digest (formerly MD5 sum) differs

                    D Device major/minor number mismatch

                    L readLink(2) path mismatch

                    U User ownership differs

                    G Group ownership differs

                    T mTime differs

                    P capabilities differ

                包來源合法性驗正及完整性驗正:

                    完整性驗正: SHA256

                    來源合法性驗正: RSA

                公鑰加密:

                    對稱加密:加密、解密使用同一密鑰;

                    非對稱加密:密鑰是成對兒的

                    public key: 公鑰,公開所有人

                    secret key: 私鑰, 不能公開

                導(dǎo)入所需要公鑰:

                    rpm -K|checksig rpmfile 檢查包的完整性和簽名

                    rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

                    CentOS 7發(fā)行版光盤提供: RPM-GPG-KEY-CentOS-7

                    rpm -qa gpg-pubkey*

                    rpm數(shù)據(jù)庫

                數(shù)據(jù)庫重建:

                    /var/lib/rpm

                rpm {–initdb|–rebuilddb}

                    initdb: 初始化

                    如果事先不存在數(shù)據(jù)庫,則新建之

                    否則,不執(zhí)行任何操作

                    rebuilddb:重建

                    無論當前存在與否,直接重新創(chuàng)建數(shù)據(jù)庫

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

名稱欄目:rpm包及rpm命令詳解-創(chuàng)新互聯(lián)
文章位置:http://www.rwnh.cn/article40/ccjoho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、全網(wǎng)營銷推廣網(wǎng)站策劃、做網(wǎng)站建站公司、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
高青县| 桓台县| 怀化市| 启东市| 山丹县| 波密县| 江安县| 临漳县| 泰兴市| 大厂| 汉源县| 靖江市| 葫芦岛市| 介休市| 随州市| 上饶市| 和平区| 海阳市| 凌海市| 陈巴尔虎旗| 巴东县| 神农架林区| 肥东县| 永兴县| 太和县| 五指山市| 叙永县| 景泰县| 达日县| 聂拉木县| 额济纳旗| 拉孜县| 陇南市| 大洼县| 怀来县| 扎鲁特旗| 南汇区| 昌吉市| 玉树县| 噶尔县| 永兴县|