亚洲AVI,黑人巨茎大战欧美白妇,初高中生洗澡自慰高清网站,欧美日韩无砖专区一中文字

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)

軟件包的管理(rpm和yum)

    軟件包在系統(tǒng)管理中,軟件包的管理是最重要的,是系統(tǒng)管理的基礎(chǔ)的基礎(chǔ);只有我們學(xué)會軟件包的管理才能談得上其它的應(yīng)用;本文以目錄式的文檔格式,列出新手弟兄所面對的軟件包的安裝、更新、查詢相對的文檔,以及幾個常用的軟件包管理工具。

創(chuàng)新互聯(lián)公司長期為超過千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為石獅企業(yè)提供專業(yè)的成都做網(wǎng)站、成都網(wǎng)站設(shè)計,石獅網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

軟件包管理:

    一,RPM包管理;

    二,yum包管理;

一,RPM包管理:

centos系統(tǒng)上RPM命令管理程序包:

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

    RPM命令:rpm [OPTIONS] [PACKAGE_FILE]

        安裝:-i ,--install

        升級:-U,--update, -F,--freshen

        卸載: -e,--erase

        查詢: -q,--query

        校驗: -v,--verify

        數(shù)據(jù)庫維護(hù):--builddb,--initdb

(1)安轉(zhuǎn):

rpm{-i | --install}[install-options] PACKAGE_FILE ...

GENERAL OPTIONS:

    -v:  verbose,詳細(xì)信息

    -vv:更詳細(xì)的輸出

    [install-options]

        -h:hash marks輸出進(jìn)度條;每個#表示2%的進(jìn)度;

        --test:測試安轉(zhuǎn),檢查并報告依賴關(guān)系及沖突消息等;

        --nodeps:忽略依賴關(guān)系,不建議使用;

        --replacepkgs:重新安裝

        --nosignature:不檢查包簽名信息,不檢查來源合法性;

        --nodigest:不檢查包完整性信息;

        --noscripts:

            preinstall: 安轉(zhuǎn)過程開始之前運行的腳本,%pre,--nopre

            postinstall:安裝過程完成之后運行腳本,%post,--nopost

            preunintall:卸載過程真正開始執(zhí)行之前運行的腳本,%preun,--nopreun

            postuninstall:卸載過程完成之后運行的腳本,%postun,--nopostun

注意:rpm可以自帶腳本;

(2)升級:

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

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

    -U:升級或安裝;

    -F:升級

    rpm -Uvh PACKAGE_FILE ....

    rpm -Fvh PACKAGE_FILE ....

        --oldpackage:降級;

        --force:強(qiáng)制升級;

注意:1,不要對內(nèi)核做升級操作;Linux支持多內(nèi)核版本并存,因此,直接安轉(zhuǎn)新版本內(nèi)核;

2,如果某原程序包的配置文件安裝后曾被修改過,升級時,新版本的程序提供的同一個配置文件不會覆蓋原有版本的配置文件,而是把新版本的配置文件重命名(FILENAME.rpmnew) 后保留;

(3)卸載:

rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test] PACKAGE_NAME ..

    --allmatches:卸載所有匹配指定名稱的程序包的各版本;

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

    --test:測試卸載,dry run模式

(4)查詢:

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

    [select-options]

        PACKAGE_NAME:查詢指定的程序包是否已經(jīng)安裝,及其版本;

        -a, --all:查詢所有已經(jīng)安裝過的包;

        -f, --file FILE:查詢所有指定的文件有那個程序包安裝生成;

        -p, --package PACKAGE_FILE:用于實現(xiàn)對未安裝的程序包執(zhí)行查詢操作;

        --whatprovides CAPABILITY:查詢指定的 CAPABILITY 由那個程序包提供;

        --whatrequires CAPABILITY:查詢指定的 CAPABILITY 由那個包依賴;

    [query-options]

        --changelog:查詢rpm包的changelog;

        -l, --list:程序安裝生成的所有文件列表;

        -i, --info:程序包相關(guān)的信息,版本號,大小,所屬的包組,等;

        -c, --configfiles:查詢指定的程序包提供的配置文件;

        -d, --docfiles:查詢指定的程序包提供的文檔;

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

        -R, --requires:查詢指定的程序包的依賴關(guān)系;

        --scripts:查看程序包自帶的腳本片段;

用法:

    -qi PACKAG, -qf FILE, -qc PACKAG, -ql PACKAG, -qd PACKAG,-qpl PACKAG_FILE

(5)校驗:

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

包來源合法性驗證和完整性驗證:

    來源合法性驗證:RSA

    完整性驗證:SHA256

獲取并導(dǎo)入信任的包制作者的秘鑰:

    對于centos發(fā)行版來說:rpm --import / etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

驗證:

    (1)安裝此組織簽名的程序時,會自動執(zhí)行驗證;

    (2)手動驗證:rpm -k PACKAGE_FILE (來源合法性和完整性)

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

rpm管理器數(shù)據(jù)庫路徑:/var/lib/rpm/

查詢操作:通過此處的數(shù)據(jù)庫進(jìn)行;

獲取幫助:

    centos 6:man rpm

    centos 7:man rpmdb

rpm {--initdb|--rebuilddb} [--dbpath DIRECTORY] [--root DIREC‐TORY]

    --initdb:初始化數(shù)據(jù)庫,當(dāng)前無任何數(shù)據(jù)庫可實始化創(chuàng)建一個新的;當(dāng)前有時不執(zhí)行任何操作;

    --rebuilddb:重新構(gòu)建,通過讀取當(dāng)前系統(tǒng)上所有已經(jīng)安裝過的程序包進(jìn)行重新創(chuàng)建;

二,yum包管理:

(1)yum 配置文件

1,yum 客戶端配置文件:

    /etc/yum.conf :為所有倉庫提供公共配置

    /etc/yum.repos.d/*.repo :為倉庫的指向提供配置

倉庫指向的定義:

    [repositoryID](倉庫ID)

    name=Some name for this repository  (倉庫名)

    baseurl=url://path/to/repository/   (地址)

    enabled={1|0}  (是否啟用)

    gpgcheck={1|0}  (是否檢查)

    gpgkey=URL

文件服務(wù)器(URL):

    ftp://

    http://

    file:///

2,如何使用光盤當(dāng)作本地yum 倉庫:

掛載光盤至某目錄,例如/media/cdrom

    # mount /dev/cdrom /media/cdrom

創(chuàng)建配置文件,vim /etc/yum.repos.d/centos-local.repo

    [CentOS7]

    name=

    baseurl=

    gpgcheck=

    enabled=

軟件包的管理(rpm和yum)

3,如何使用網(wǎng)絡(luò)源做yum倉庫:

創(chuàng)建配置文件,vim /etc/yum.repos.d/bash.repo

    [CentOS7]

    name=

    baseurl=

    gpgcheck=

    enabled=

軟件包的管理(rpm和yum)

(2)yum的命令管理:

yum 的命令行選項:

    -y:  自動回答為“yes”

    -q :靜默模式

    --nogpgcheck :禁止進(jìn)行g(shù)pg check

    --disablerepo=repoidglob :臨時禁用此處指定的repo

    --enablerepo=repoidglob :臨時啟用此處指定的repo

    --noplugins :禁用所有插件

顯示倉庫列表:

    yum repolist [ all | enabled | disabled ]  [全部 | 啟用 | 禁止]

顯示程序包:

    yum list

    yum list [all ]

    yum list [available | installed | updates]  [可用的 | 安裝過的 | 升級的]

安裝程序包:

    yum install package1

    yum reinstall package1  ( 重新安裝)

升級程序包:

    yum update package1

    yum downgrade package1 ( 降級)

檢查可用升級:

    yum check-update

卸載程序包:

    yum [remove | erase] package1   [卸載 | 抹除]

查看包的詳細(xì)信息

    yum info package

查看指定的特性( 可以是某文件) 是由哪個程序包所提供:

    yum provides  feature1

清理本地緩存:

    yum clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

    [程序包 | 元數(shù)據(jù) | 過期的緩存 | rpmdb | 插件 | 全部的]

構(gòu)建緩存:

    yum makecache

搜索:以指定的關(guān)鍵字搜索程序包名及summary(簡要) 信息

    yum search string1

查看yum 事務(wù)歷史:

    yum history

    yum history list #     (可以顯示某個處理過程)

    yum history info #  (可以顯示某個歷史安裝包的詳細(xì)信息)

    yum history redo #  (可以重新安裝某個歷史的所有安裝包)

    yum history undo #  (可以撤銷某個歷史的所有安裝包,類同卸載  (不適用包組))

安裝及升級本地程序包:

    yum install rpmfile  (安裝本地程序包)

    yum update rpmfile  (升級本地程序包)

包組管理的相關(guān)命令:

    yum grouplist   (查看包組)

    yum groupinfo group   (查看包組的詳細(xì)信息)

    yum groupinstall group   (安裝包組)

    yum groupupdate group  (升級包組)

    yum groupremove group  (卸載包組)

(3)編譯安裝:

c/c++ 編譯器: gcc (GNU C Complier)

編譯C源代碼:

    準(zhǔn)備: 提供開發(fā)工具及開發(fā)環(huán)境

        開發(fā)工具:make, gcc等

        開發(fā)環(huán)境:開發(fā)庫,頭文件

        glibc :標(biāo)準(zhǔn)庫

    實現(xiàn):通過 “包組”提供開發(fā)組件

        CentOS 6:

            Development Tools

            Server Platform Development

        CentOS 7:

            Development Tools

            Development and Creative Workstation

( get命令 是把目錄或文件放到桌面 )

第一步:./configure 腳本

    選項:指定安裝位置、指定啟用的特性--help:  獲取其支持使用的選項

選項分類:

    安裝路徑設(shè)定:

        --prefix=/PATH:  指定默認(rèn)安裝位置, 默認(rèn)為/usr/local/

        --sysconfdir=/PATH :配置文件安裝位置

        System types: 支持交叉編譯

        Optional Features:  可選特性

        --disable-FEATURE

        --enable-FEATURE[=ARG]

        Optional Packages:  可選包,

        --with-PACKAGE[=ARG], 依賴包

        --without-PACKAGE, 禁用依賴關(guān)系

第二步:make:根據(jù)makefile 文件,構(gòu)建應(yīng)用程序

第三步:make install : 復(fù)制文件到相應(yīng)路徑

安裝后的配置:

    (1)  二進(jìn)制程序目錄導(dǎo)入至PATH 環(huán)境變量中;

        編輯文件/etc/profile.d/NAME.sh

        PATH=/PATH/TO/BIN:$PATH

軟件包的管理(rpm和yum)

(2)  導(dǎo)入庫文件路徑

    編輯/etc/ld.so.conf.d/NAME.conf

        添加新的庫文件所在目錄至此文件中

    讓系統(tǒng)重新生成緩存:

        ldconfig [-v]

(3)  導(dǎo)入頭文件

    基于鏈接的方式實現(xiàn):

        ln -sv

(4)  導(dǎo)入幫助手冊

    編輯/etc/man.config|man_db.conf 文件

        添加一個MANPATH

軟件包的管理(rpm和yum)


當(dāng)前名稱:軟件包的管理(rpm和yum)
鏈接地址:http://news.spvevtbd.cn/article/jehpje.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP