成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

CentOS系統(tǒng)上如何實現(xiàn)軟件包管理-創(chuàng)新互聯(lián)

這篇文章主要介紹了CentOS系統(tǒng)上如何實現(xiàn)軟件包管理,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、成都微信小程序、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了寧江免費建站歡迎大家使用!

       軟件包管理
CentOS系統(tǒng)上使用rpm命令管理程序包
安裝、卸載、升級、查詢、檢驗、數(shù)據(jù)庫維護

rpm安裝:
       rpm {-i|--install} [安裝-選項] 打包;包
       -h 以#符號表示安裝進度
       -v 顯示安裝過程中的詳細信息
       -vv
       -vvv
       經(jīng)常使用組合:-ivh,ivvh
       例如 rpm -ivh 包文件
       安裝時的選項:
       --test   測試安裝,但不真正執(zhí)行安裝,僅報告依賴關(guān)系以及沖突信息等
       --nodeps 忽略依關(guān)系,副作用是能安裝成功,但未必能運行成功
       --replacepkgs 覆蓋安裝--重新安裝并覆蓋原有的文件
       --nosignature 不被監(jiān)測來源合法性
       --nodigest    不檢查包完整性
       --noscipts    不執(zhí)行程序包腳本的片斷
       --foree       強制安裝
       
rpm包升級:
        rpm {-U|--upgrade} [安裝-選項] 打包;包
             -U  升級或安裝
              upgrade:安裝有舊版程序包,則“升級” 如果不存在舊版程序包,則“升級”
        rpm {-F|--freshen} [安裝-選項] 打包;包
             -F  升級
              freshen:安裝有舊版程序包,則“升級” 如果不存在舊版程序包,則不執(zhí)行升級操作
       常用組合:-Uvh,Fvh
       例如 rpm -Uvh 包文件
       升級選項:
       --oldpackage     降級
       --force          強制升級
升級時需要注意事項:
1 不要對內(nèi)核執(zhí)行升級,Linux 支持多個內(nèi)核共存,可以對此直接安裝新版本內(nèi)核或不同版本的內(nèi)核
2  如果程序包的配置文件安裝后被修改,升級時,新版本的文件不會覆蓋老版本的配置文件。而是把新版本的文件重命名加上后綴(.rpmnew) 之后保留

rpm包查詢:
        rpm {-q|--query}[選擇-選項][查詢選項]
        安裝選項                                                    ~]# rpm -q tree 后面準確查找包名   
        -a 所有包、                                               ~]# rpm -qa    查詢當前系統(tǒng)安裝的所有包 ~]# rpm -qa |grep "^tr" 管道給關(guān)鍵字查找,以tr開頭的包名
        -f 查看指定的文件由哪個程序安裝生成                         ~]# rpm -qf /etc/issue  查詢文件是哪個包生成  
        -p rpmfuile 針對尚未安裝程序包文件做查詢操作;             ~]# rpm -qp tree-1.6.0-10.el7.x86_64.rpm
        --whatprovides 性能進程 查詢指定的性能進程有哪個包所提供    ~]# rpm -q tree --whatprovides 查詢這個功能是由哪個包所提供
        --whatrequires 性能進程 查詢指定的性能進程被哪個包所依賴    ~]# rpm -q bash --whatrequires 查詢這個功能是被哪個包所依賴 
        rpm2cpio 包文件|cpio -itv 預(yù)覽包內(nèi)的文件                   ~]# rpm2cpio tree-1.6.0-10.el7.x86_64.rpm |cpio -itv
rpm2cpio 包文件|cpio -id  "*.conf" 釋放包內(nèi)文件
        查詢選項:
        --changelog 查詢rpm包的變動日志                             ~]# rpm -qc tree --changelog
        -c  查詢程序的配置文件  
        -d  查詢程序的文檔                                         ~]# rpm -qd tree
        -i  信息                                                   ~]# rpm -qi tree
        -l  查看指定的程序包安裝后生成的所有文件                   ~]# rpm -ql tree
        --scripts 程序包自帶的腳本片斷                              ~]# rpm -q bash --scripts
        -R  查詢指定的程序包所依賴的 性能進程                      ~]# rpm -qR bash
        --provides ;列出指定程序包所提供的 性能進程               ~]# rpm -q bash --provides

rpm卸載:
       rpm {-e|--erase}
        --allmatches     移除所有符合 <package> 的軟件包(如果<package> 被指定未多個軟件包,常常會導(dǎo)致錯誤出現(xiàn))
        --nodeps                        不驗證軟件包依賴
        --noscripts                     不執(zhí)行軟件包腳本
        --notriggers                    不執(zhí)行本軟件包觸發(fā)的任何腳本
        --test                          不真正安裝,只是判斷下是否能安裝
包檢驗:rpm {-V|--verify}
              --nofiledigest                  不驗證文件摘要
              --nofiles                       不驗證軟件包中文件
              --nodeps                        不驗證包依賴
              --noscript                      不執(zhí)行驗證腳本

導(dǎo)入所需要公鑰:
 ~]# rpm -K tree-1.6.0-10.el7.x86_64.rpm  檢查包的完整性和簽名
      
rpm數(shù)據(jù)庫:
       數(shù)據(jù)庫重建: /var/lib/rpm
       rpm {--initdb|--rebuilddb}
       initdb 初始化
       如果時間不存在數(shù)據(jù)庫,則新建之,否則 不執(zhí)行任何操作
       rebuilddb 重建數(shù)據(jù)庫 無論當前存在與否,直接重新創(chuàng)建數(shù)據(jù)庫            
 
 
 
rpm命令實現(xiàn)程序管理  主要核心命令
安裝:-vih,--nodeps,--replacepkgs
卸載:-e,--nodeps
升級:-Uvh,-Fvh,--nodeps,--oldpackage
查詢:-q,-qa,-qf,-qi,-qc,-q --scripts, -q --chanlog, -q --provides,-q--requires
校驗:-V
導(dǎo)入GPG密鑰:--import,-K,--nodigest,--nosignature
數(shù)據(jù)庫重建:--initdb,--rebuilddb                                  
===========================================================

yum

   yum是rpm的前端程序,用來解決軟件包相關(guān)依賴性,可以在多個庫之間定位軟件包,
資源庫: 存儲了眾多rpm包,以及包的相關(guān)的元數(shù)據(jù)文件(放置于特定目錄repodata下)
   文件服務(wù)器:ftp:
               http://
               file:///

yum配置文件:
          /etc/yum.conf             主配置文件為所有倉庫提供數(shù)據(jù)
          /etc/yum.repos.d/*.repo   為倉庫的指向提供配置
          創(chuàng)庫指向的定義:
          文件以.repo 結(jié)尾;
          root@Compro ~]# cat /etc/yum.repos.d/base.repo
          [base]                      提供配置信息
          name=CentOS 7               當前倉庫的名稱
          baseurl=http://10.1.0.1/cobbler/ks_mirror/CentOS-7-x86_64/   教室里的yum源
          enabled=1                   此倉庫是否為可用
          gpgcheck=0                  是否對程序包做校驗
          gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7   指明訪問密鑰路徑的路徑

          [倉庫ID]    對于當前系統(tǒng)的yum來將,此倉庫ID用于唯一標識此倉庫指向,因此,必須唯一
          name=name   當前倉庫描述信息名稱
          baseurl=url://path/to/repository/  
          enabled={1|0}   此倉庫是否可被使用 1是 禁用0是可以 不寫是默認
          gpgcheck={1|0}  是否對程序包做校驗 
          gpgkey=         指明gpgkey文件路徑
          cost= 默認為1000

如果使用光盤當作本地yum倉庫:
掛載光盤至某目錄,例如/media/cdrom
#mount /dev/cdrom /media/cdrom
創(chuàng)建配置文件:
[CentOS7]
name=自定義                 當前倉庫描述信息
baseurl=指明資源庫的訪問路徑,通常為一個文件服務(wù)器上輸出的某資源庫,支持的類型:ftp://;http://;file:///
gpgcheck={1|10}         是否對程序包做校驗
enabled={1|10}        此倉庫上是否可用,默認為可用

yum命令的語法: yum [選項] [命令] [包]
yum顯示倉庫列表:
               yum repolist [all|enabled|disabled]
顯示程序包:
         yum list
         yum list [all | glob_ exp1 ] [glob_exp2] ...            
         yum list {available|installed|updates}[glob_exp1]...     
安裝程序包:
         yum install 包1 [包2] ...
         yum reinstall 包1 [包2]...        重新安裝
升級程序包:
         yum update [包1][包2]...
         yum downgrade 包1 [包2]...     降級
卸載程序包:
         yum remove | erase 包1 [包2] ...                     
               
查看程序包的信息:
         yum info name
查看指定的特性(可以是某文件)是由那個程序包所提供
yum provides | whatprovides 特性1 [特性2] ...

清理本地緩存:
         yum clean [包|元數(shù)據(jù)|expire-cache|rpmdf|plugins|all]
構(gòu)建緩存:
        yum makecache           
 
搜索:
   yum search 字符串1 [字符串2]
   以指定的關(guān)鍵字搜索程序包名及summary信息 
查看指定包所依賴的capabilities
       yum deplist 包1 [包2] ...
查看 yum事務(wù)歷史
              yum history
              
日志:
    /var/log/yum.log
    
安裝及升級本地程序包
        yum install rpmfile1 [rpmfile2] ...
        yum update rpmfile1 [rpmfile2] ...
包組管理的相關(guān)命令:
        yum groupinstall group1
        yum groupupdate group1
        yum grouplist [hidden][groupwildcard]
        yum groupremove group1
        yum groupinfo group1
        
    
如何使用光盤當作本地yum倉庫
 
掛載光盤至某目錄
         例如 /media/crom # mount /dev/cdrom /media/crom
         創(chuàng)建配置文件
         [CentOS7]
         name=name
         baseurl=file:/// 
         gpgcheck=0
         enabled=1   
yum 的命令行選項
yum [選項] 包
    --nogpgcheck    禁止進行g(shù)pg check
    -y              自動回答為"yes"
    -q              靜默模式
    --disablerepo=repoidglob    臨時禁用此處指定的repo
    --enablerepo=repoidglob    臨時啟動此處指定的repo
    --noplugins                禁用所有插件
    
 
 =================================================================

                   源碼編譯 
程序包編譯安裝:
Application-VERSION-release.src.rpm-->
安裝后,使用rpmbuild命令制作成二進制格式的rpm包,而后再安裝
源代碼-->預(yù)處理-->編譯-->匯編-->鏈接-->執(zhí)行

源代碼組織格式:
多文件:文件中的代碼之間,很可能存在跨文件依賴關(guān)系
C、C++:make (項目管理器,configure -->
Makefile.in --> makefile)
java: maven

C代碼編譯安裝三步驟:
                   ./configure
                   通過選項傳遞參數(shù),指定啟動特性、安裝路徑等;
                   執(zhí)行時會參考用戶的指定以及makefile.in文件生成makefile
                   檢查依賴到的外部環(huán)境,如依賴的軟件包
                   [cdrom]
                   name=centos 7 cdrom
                   baseurl=file:///mnt/cdrom
                   gpgcheck=0
                   enabled=0                  
                   make   根據(jù)makefile文件,構(gòu)建應(yīng)用程序
                   make install  復(fù)制文件到相應(yīng)路徑
開發(fā)工具:
        autoconf: 生成configure腳本
        automake:生成Makefile.in
        注意:安裝前查看 安裝自帶文檔
開源程序源代碼的獲?。?br/>官方自建站點:
apache.org (ASF:Apache Software Foundation)
mariadb.org
...
代碼托管:
SourceForge.net
Github.com
code.google.com
c/c++編譯器: gcc(GNU C Complier)

編譯C源代碼:
      準備:提供開發(fā)工具及開發(fā)環(huán)境
            開發(fā)工具:make,gcc等
            開發(fā)環(huán)境:開發(fā)庫,頭文件
            glibc:標準庫
      實現(xiàn):通過“包組”提供開發(fā)組件
CentOS 6:
Development Tools
Server Platform Development
CentOS 7:
Development Tools
Development and Creative Workstation

編譯安裝:
       第一步:configure 腳本
       選項:指定安裝位置、指定啟用的特性
       安裝路徑設(shè)定:./configure --prefix=/usr/local/http2 --sysconfdir=/etc/http2/
可選特性:
--disable-FEATURE
--enable-FEATURE[=ARG]
可選包:
--with-PACKAGE[=ARG],依賴包
--without-PACKAGE,禁用依賴關(guān)系    
    
安裝后的配置:
二進制程序目錄導(dǎo)入至PATH環(huán)境變量中;
編輯文件:
 [root@Compro ~]# vim /etc/profile.d/http2.sh
 PATH=$PATH:/usr/local/http2/bin

導(dǎo)入庫文件路徑:
 編輯/etc/ld.so.conf.d/NAME.conf
 添加新的庫文件所在目錄至此文件中
讓系統(tǒng)重新生成緩存:
 ldconfig[-v]   
    
導(dǎo)入頭文件
基于鏈接的方式實現(xiàn):
ln -sv

導(dǎo)入幫助手冊
編輯/etc/man.config|man_db.conf文件
添加一個MANPATH    
[root@Compro ~]# vim /etc/man_db.conf
MANDATORY_MANPATH /usr/local/http2/ma

感謝你能夠認真閱讀完這篇文章,希望小編分享的“CentOS系統(tǒng)上如何實現(xiàn)軟件包管理”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習!

另外有需要云服務(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)用場景需求。

網(wǎng)站欄目:CentOS系統(tǒng)上如何實現(xiàn)軟件包管理-創(chuàng)新互聯(lián)
轉(zhuǎn)載來源:http://jinyejixie.com/article44/diocee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)商城網(wǎng)站、標簽優(yōu)化ChatGPT、網(wǎng)站設(shè)計公司網(wǎng)頁設(shè)計公司

廣告

聲明:本網(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)

小程序開發(fā)
华安县| 蛟河市| 望城县| 商南县| 聊城市| 墨玉县| 新龙县| 慈利县| 哈尔滨市| 平和县| 靖江市| 麻阳| 九寨沟县| 蓬溪县| 星子县| 禄丰县| 南昌县| 固原市| 济南市| 金阳县| 嘉定区| 瑞金市| 沙坪坝区| 洮南市| 西峡县| 小金县| 平塘县| 西青区| 大埔区| 丰台区| 安国市| 兴隆县| 和政县| 阿勒泰市| 定襄县| 阜平县| 图木舒克市| 卢湾区| 丰原市| 茂名市| 常熟市|