軟件包管理

RPM包管理器

二進制應用程序的組成部分:二進制文件禾唁、庫文件、配置文件螺戳、幫助文件

  • 包命名:
源代碼: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
包:分類和拆包
    Application-VERSION-ARCH.rpm:  主包
    Application-devel-VERSION-ARCH.rpm  開發(fā)子包
    Application-utils-VERSION-ARHC.rpm  其它子包
    Application-libs-VERSION-ARHC.rpm  其它 子包
包之間:可能存在依賴關系,甚至循環(huán)依賴
解決依賴包管理工具:
    yum :rpm 包管理器的前端工具
    apt-get :deb 包管理器前端工具
    zypper: suse 上的rpm 前端管理工具
    dnf: Fedora 18+ rpm 包管理器前端管理工具
  • 庫文件:
查看二進制程序所依賴的庫文件
    ldd /PATH/TO/BINARY_FILE
    which cp 
    ldd /bin/cp 

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

     ldconfig 讀取/etc/ld.so.conf.d下的所有庫文件
    /sbin/ldconfig -p:  顯示本機已經(jīng)緩存的所有可用庫文件名及文件路徑映射關系

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

  • 包管理器:

程序包管理器:

功能:將編譯好的應用程序的各組成文件打包一個或幾個程序包文件隆圆,從而方便快捷地實現(xiàn)程序包的安裝锦担、卸載、查詢凉倚、升級和校驗等管理操作

1. 包文件組成 ( 每個包獨有)
    RPM 包內的文件
    RPM 的元數(shù)據(jù)兼都,如名稱,版本稽寒,依賴性扮碧,描述等
    安裝或卸載時運行的腳本
2. 數(shù)據(jù)庫( 公共) :/var/lib/rpm
    程序包名稱及版本
    依賴關系
    功能說明
    包安裝后生成的各文件路徑及校驗碼信息
  • 程序包的來源:

管理程序包的方式:

使用包管理器:rpm
使用前端工具:yum, dnf

  • 獲取程序包的途徑:
1. 系統(tǒng)發(fā)版的光盤或官方的服務器;
    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…
    -i :安裝
    -v: verbose   顯示詳細信息
    -vv:  顯示更多的信息
    -h:  以#顯示程序包管理執(zhí)行進度
rpm -ivh PACKAGE_FILE ... 
rpm -ivh dhcp-4.2.5-47.el7.centos.x86_64.rpm    安裝dhcp包
rpm -e dhcpd   卸載dhcpd包
  • rpm包安裝:
[install-options]
    --test:  測試安裝负芋,但不真正 執(zhí)行安裝漫蛔,即dry run 模式
    --nodeps :忽略依賴關系
    --replacepkgs  重新安裝整個包
        eg:rpm -ivh /mnt/Packages/tree-1.6.0-10.e17.x86_64.rpm --replacepkgs
    --replacefiles  重新安裝某個指定文件
    --nosignature:  不檢查來源合法性
    --nodigest :不檢查包完整性
    --noscripts :不執(zhí)行程序包腳本
        %pre: 嗜愈; 安裝前腳本; --nopre
        %post: 莽龟; 安裝后腳本蠕嫁; --nopost
        %preun: ; 卸載前腳本毯盈; --nopreun
        %postun:  卸載后腳本剃毒; --nopostun
  • rpm包升級:

升級:升級程序時會將原來的舊程序刪除,減少升級內核

rpm {-U|--upgrade} [install-options]  PACKAGE_FILE ...
rpm {-F|--freshen} [install-options]  PACKAGE_FILE ...
    U/upgrade :安裝有舊版程序包搂赋,則“升級”
如果不存在舊版程序包赘阀,則“安裝”
    F/freshen :安裝有舊版程序包,則“升級”
如果不存在舊版程序包脑奠,則不執(zhí)行升級操作
    rpm -Uvh PACKAGE_FILE ...
    rpm -Fvh PACKAGE_FILE ...
    --oldpackage :降級安裝基公,安裝比當前版本低的程序
    --force: 強制安裝,不用于卸載


升級注意項:

注意:
(1) 不要對內核做升級操作宋欺;Linux 支持多內核版本并存轰豆,因此,對直接安裝新版本內核齿诞;
(2) 如果原程序包的配置文件安裝后曾被修改酸休,升級時,新版本的提供的同一個配置文件并不會直接覆蓋老版本的配置文件掌挚,而把新版本的文件重命名(FILENAME.rpmnew) 后保留包查詢:

  • 包查詢:
rpm {-q|--query} [select-options] [query-options]
    -q:查詢安裝過的軟件包
[select-options]
    -a:所有包
    -f:查看指定的文件由哪個程序包安裝生成
    -p rpmfile :針對尚未安裝的程序包文件做查詢操作
    --whatprovides CAPABILITY :查詢指定的 CAPABILITY(能力)由哪個包所提供
    --whatrequires CAPABILITY :查詢指定的 CAPABILITY被哪個包所依賴
    --provides:  列出指定程序包所提供的CAPABILITY雨席,即查詢程序包所具有的功能
    -R:  查詢指定的程序包所依賴的CAPABILITY,查詢包依賴的能力

[query-options]
    --changelog :查詢rpm包的修改歷史記錄吠式,查詢的是數(shù)據(jù)庫/var/lib/rpm
    -c:  查詢程序的配置文件
    -d:  查詢程序的文檔
    -i: 查詢詳細信息
    -p:查詢或驗證包文件
    -l:  查看指定的程序包安裝后生成的文件列表
    --scripts :程序包自帶的腳本    
    rpm -q --scripts bahs   查看bash包的自帶的腳本
    --provides:  列出指定程序包所提供的CAPABILITY陡厘,即查詢程序包所具有的功能
    -R:  查詢指定的程序包所依賴的CAPABILITY,查詢包依賴的能力

常用查詢用法:
    -qi PACKAGE    查詢包的描述信息   rpm -qi tree   查詢tree包的信息
    -ql:查看指定程序包安裝后生成的文件列表   rpm -ql tree   查詢tree包安裝后的文件列表
    -qf FILE  查詢文件屬于哪個安裝包      rpm -qf /usr/bin/rpm  查詢/usr/bin/rpm文件屬于哪個包
    -qc PACKAGE    rpm -qc bash   查詢bash程序的配置文件
    -qd PACKAGE   rpm -qd bash   查詢bash程序的目錄文件
    -qpi PACKAGE_FILE  rpm -qpi /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm   查詢包文件的詳細信息
    -qpl PACKAGE_FILE   rpm -qpl /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm 查詢未安裝包文件的文件列表
    -qa:查詢安裝的所有程序包 

rpm2cpio  包文件|cpio –itv 預覽包內文件
rpm2cpio  包文件|cpio –id “*.conf”









  • 包卸載:
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test] PACKAGE_NAME ...
    --nodeps  忽略依賴  
    --noscripts   卸載時不運行腳本
    --notriggers   不允許觸發(fā)器 
    --allmatches  多個相同的包全部卸載   rpm -e --allmatches kernel  卸載同為kernel的多個包
    --test 測試
  • 包校驗:
rpm {-V|--verify} [select-options] [verify-options]   
    rpm -V tree   查詢tree程序包文件屬性是否發(fā)生變化
    rpm -Va        查詢所有包屬性是否發(fā)生變化
        S  file Size differs    文件大小發(fā)生變化
        M Mode differs (includes permissions and file type)
        5 digest (formerly MD5 sum) differs    MD5值變化特占,表示內容發(fā)生變化
        D Device major/minor number mismatch
        L readLink(2) path mismatch
        U User ownership differs
        G Group ownership differs
        T mTime differs     mtime發(fā)生變化
        P capabilities differ

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

完整性驗證:SHA256
來源合法性驗正:RSA

公鑰加密

對稱加密:加密糙置、解密使用同一密鑰
非對稱加密:密鑰是成對兒的

public key: 公鑰,公開所有人
secret key: 私鑰, 不能公開

導入所需要公鑰

rpm -K|checksig rpmfile 檢查包的完整性和簽名
rpm --import / etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7    導入所需秘鑰是目,/etc/pki/rpm-gpg目錄下有公鑰文件 
CentOS 7 發(fā)行版光盤提供公鑰: RPM-GPG-KEY-CentOS-7
rpm -qa “gpg-pubkey*“  查詢安裝秘鑰文件
rpm -qi gpg-pubkey-352c64e5-52ae6884  查看秘鑰的詳細信息
秘鑰卸載后谤饭,rpm -K 完整性為not OK, rpm --import 導入秘鑰后懊纳,rpm -K 完整性就為OK 

yum

CentOS: yum, dnf
YUM: Yellowdog Update Modifier 揉抵,rpm 的前端程序,可解決軟件包相關依賴性嗤疯,可在多個庫之間定位軟件包冤今,up2date的替代工具

yum repository: yum repo ,存儲了眾多rpm 包茂缚,以及包的相關的元數(shù)據(jù)文件(放置于特定目錄repodata 下)

文件服務器:
    http://
    https://
    ftp://
    file://
  • yum配置文件

yum客戶端配置文件:

/etc/yum.conf :為所有倉庫提供公共配置
/etc/yum.repos.d/*.repo :為倉庫的指向提供配置
/var/log/yum.log       yum安裝日志文件
倉庫指向的定義:
    [repositoryID]  repo名稱
    name=Some name for this repository    描述信息
    baseurl=url://path/to/repository/             yum安裝源
    enabled={1|0}         0表示臨時禁用該倉庫戏罢,1表示yum倉庫
    gpgcheck={1|0}       0為不檢查秘鑰     1表示檢查秘鑰 
    gpgkey=URL    秘鑰導入屋谭,URL為秘鑰路徑,若已導入秘鑰可省略
    enablegroups={1|0}     1 啟用包組    0禁用包組
    failovermethod={roundrobin|priority}    安裝源為多個路徑時龟糕,選擇策略
        roundrobin:意為隨機挑選桐磁,默認值
        priority: 按順序訪問
    cost= 默認為1000      設置優(yōu)先值,cost值越小讲岁,越優(yōu)先
server.repo倉庫文件中可編輯多個倉庫

  • yum倉庫

yum的repo 配置文件中可用的變量:

$releasever:  當前OS的發(fā)行版的主版本號
$arch: 平臺我擂,i386,i486,i586,x86_64等 等
$basearch :基礎平臺;i386, x86_64
$YUM0-$YUM9: 自定義變量

實例:

http://server/centos/$releasever/$basearch/
http://server/centos/7/x86_64
http://server/centos/6/i384

yum源:repodate目錄的父目錄作為yum的安裝源
阿里云repo 文件:

http://mirrors.aliyun.com/repo/

CentOS 系統(tǒng)yum源

阿里云:
https://mirrors.aliyun.com/centos/$releasever/os/x86_64/

教學環(huán)境:

http://172.16.0.1/cobbler/ks_mirror/$releasever/

Epel的yum 源:
阿里云:

https://mirrors.aliyun.com/epel/$releasever/x86_64

教學環(huán)境:

http://172.16.0.1/fedora-epel/$releasever/x86_64/
  • yum-config-manager 命令生成yum庫文件

生成172.16.0.1_cobbler_ks_mirror_CentOS-X-x86_64_.repo

yum-config-manager --add-repo=http://172.16.0.1/cobbler/ks_mirror/7/

  yum-config-manager --disable “ 倉庫名"     禁用倉庫
  yum-config-manager --enable “ 倉庫名”      啟用倉庫
  • yum命令

yum 命令的用法:
yum [options] [command] [package ...]

   顯示倉庫列表:
    yum repolist [all|enabled|disabled]
    yum repolist all   顯示所有repo倉庫催首,包括禁用的
顯示程序包:
    yum list
    yum list [all | glob_exp1] [glob_exp2] [...]
    yum list {available|installed|updates} [glob_exp1][...]
        available  可用的包扶踊,沒有安裝的包
        installed  已安裝的包
        updates  有更新的包
安裝程序包:
    yum install package1 [package2] [...]
    yum reinstall package1 [package2] [...] (重新安裝)
    yum reinstall tree lrzsz  重新安裝程序
升級程序包:
    yum update 升級所有的包
    yum update [package1] [package2] [...]
    yum downgrade package1 [package2] [...] ( 降級)
檢查可用升級:
    yum check-update
卸載程序包:
    yum remove | erase package1 [package2] [...]、
    yum remove tree  卸載tree程序
查看程序包詳細信息: :
    yum info [...]
    yum info tree
查看指定的特性( 可以是某文件) 是由哪個程序包所提供:
    yum provides | whatprovides feature1 [feature2][...]
    yum provides tree      查看tree是由哪個包提供
    yum whatprovides tree    
清理本地緩存:
    清除/var/cache/yum/$basearch/$releasever 緩存
    yum clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
    yum clean all   清除所有緩存數(shù)據(jù)
構建緩存:
    yum makecache
搜索:yum search string1 [string2] [...]以指定的關鍵字搜索程序包名及summary 信息
    yum search http   搜索http的程序包
查看指定包所依賴的capabilities:
    yum deplist package1 [package2] [...]
查看yum事務歷史:
    yum history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|
                               rollback|new|sync|stats]
    yum history   列出yum安裝的歷史
    yum history info 6   查看yum安裝歷史中序號為6的詳細信息
    yum history undo 6   卸載yum安裝歷史中序號為6的安裝的所有程序
    yum history redo 6   重新安裝序號為6的操作郎任,即重新安裝序號為6的程序   
  • 日志 :/var/log/yum.log

  • 元數(shù)據(jù):/var/lib/yum

  • 安裝及升級本地程序包:

yum localinstall rpmfile1 [rpmfile2] [...]    ( 用install 替代)
yum localupdate rpmfile1 [rpmfile2] [...]   ( 用update 替代)
  • 包組管理的相關命令:
yum groupinstall group1 [group2] [...]
yum groupupdate group1 [group2] [...]
yum grouplist [hidden] [groupwildcard] [...]
yum groupremove group1 [group2] [...]
yum groupinfo group1 [...]
yum groups list   查看所有包組的名稱 
yum groupinfo "Development Tools"   查看Development Tools軟件包的詳細信息
yum groupinstall "Development Tools"   安裝程序包組
yum groupremove "Development Tools"   卸載程序包組
  • yum 的命令行選項:
    --nogpgcheck :禁止進行gpg check,不檢查秘鑰
    -y: 自動回答為“yes”
    -q :靜默模式
    --disablerepo=repoidglob :臨時禁用此處指定的repo
    --enablerepo=repoidglob :臨時啟用此處指定的repo
    --noplugins:禁用所有插件
  • 系統(tǒng)光盤yum倉庫:

系統(tǒng)安裝光盤作為本地yum 倉庫:

1. 掛載光盤至某目錄备籽,例如/media/cdrom    
# mount /dev/cdrom /mnt
2. 創(chuàng)建配置文件
    (a) [CentOS7]
        name=danran
        baseurl=file:///mnt
        gpgcheck=0
        enabled=1
    (b)使用版本變量$releasever替換
        [ftp]
        name=danrna
        baseurl=ftp://192.168.198.134/pub/$releasever
        enabled=0

創(chuàng)建yum 倉庫:
    createrepo [options] <directory>

程序包編譯

程序包編譯安裝

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

多文件:文件中的代碼之間车猬,很可能存在跨文件依賴關系
C 霉猛、C++ :make項目管理器

configure --> Makefile.in --> makefile

java: maven

  • 編譯安裝:
C 語言源代碼編譯安裝三步驟:
    1、 ./configure
        a珠闰、 通過選項傳遞參數(shù)惜浅,指定啟用特性、安裝路徑等伏嗜;執(zhí)行時會參考用戶的指定以及makefile.in 文件生成makefile
        b坛悉、 檢查依賴到的外部環(huán)境,如依賴的軟件包   
    2承绸、 make 根據(jù)makefile 文件裸影,構建應用程序
    3、make install 復制文件到相應路徑
開發(fā)工具:
    autoconf:  生成configure 腳本
    automake :生成Makefile.in
注意:安裝前查看INSTALL 军熏,README
開源程序源代碼的獲刃伞:
    官方自建站點:
        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ā)組件

Development Tools
Server Platform Development

第一步:configure 腳本
    選項:指定安裝位置荡澎、指定啟用的特性
        --help:  獲取其支持使用的選項
    選項分類:
        安裝路徑設定:
            --prefix=/PATH:  指定默認安裝位置, 默認為/usr/local/
            --sysconfdir=/PATH :配置文件安裝位置
            System types:
            Optional Features:  可選特性
                --disable-FEATURE
                --enable-FEATURE[=ARG]
            Optional Packages:  可選包
                --with-PACKAGE[=ARG], 依賴包
                --without-PACKAGE, 禁用依賴關系
第二步:make
第三步:make install
安裝后的配置:
    1均践、二進制程序目錄導入至PATH 環(huán)境變量中
        編輯文件/etc/profile.d/NAME.sh
            export PATH=/PATH/TO/BIN:$PATH
    2、導入庫文件路徑
        編輯/etc/ld.so.conf.d/NAME.conf
            添加新的庫文件所在目錄至此文件中
        讓系統(tǒng)重新生成緩存:
            ldconfig [-v]
    3摩幔、導入頭文件
        基于鏈接的方式實現(xiàn):
            ln -sv
    4彤委、導入幫助手冊
        編輯/etc/man.config|man_db.conf 文件
        添加一個MANPATH
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市热鞍,隨后出現(xiàn)的幾起案子葫慎,更是在濱河造成了極大的恐慌衔彻,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件偷办,死亡現(xiàn)場離奇詭異艰额,居然都是意外死亡,警方通過查閱死者的電腦和手機椒涯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進店門柄沮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人废岂,你說我怎么就攤上這事祖搓。” “怎么了湖苞?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵拯欧,是天一觀的道長。 經(jīng)常有香客問我财骨,道長镐作,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任隆箩,我火速辦了婚禮该贾,結果婚禮上,老公的妹妹穿的比我還像新娘捌臊。我一直安慰自己杨蛋,他們只是感情好,可當我...
    茶點故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布理澎。 她就那樣靜靜地躺著逞力,像睡著了一般。 火紅的嫁衣襯著肌膚如雪矾端。 梳的紋絲不亂的頭發(fā)上掏击,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天,我揣著相機與錄音秩铆,去河邊找鬼砚亭。 笑死,一個胖子當著我的面吹牛殴玛,可吹牛的內容都是我干的捅膘。 我是一名探鬼主播,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼滚粟,長吁一口氣:“原來是場噩夢啊……” “哼寻仗!你這毒婦竟也來了?” 一聲冷哼從身側響起凡壤,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤署尤,失蹤者是張志新(化名)和其女友劉穎耙替,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體曹体,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡俗扇,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了箕别。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片铜幽。...
    茶點故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖串稀,靈堂內的尸體忽然破棺而出除抛,到底是詐尸還是另有隱情,我是刑警寧澤母截,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布到忽,位于F島的核電站,受9級特大地震影響微酬,放射性物質發(fā)生泄漏绘趋。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一颗管、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧滓走,春花似錦垦江、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至姨涡,卻和暖如春衩藤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背涛漂。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工赏表, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人匈仗。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓瓢剿,卻偏偏與公主長得像,于是被迫代替她去往敵國和親悠轩。 傳聞我的和親對象是個殘疾皇子间狂,可洞房花燭夜當晚...
    茶點故事閱讀 42,877評論 2 345

推薦閱讀更多精彩內容

  • 目錄:軟件運行環(huán)境介紹包管理器rpm 包管理器的使用yum rpm包管理器前端工具的使用編譯安裝 一、軟件運行環(huán)境...
    哈嘍別樣閱讀 574評論 0 0
  • 各大Linux發(fā)行版軟件包管理參考(http://www.freeoa.net/osuport/botinstal...
    IRONYT閱讀 7,256評論 0 12
  • RPM/DPKG 兩大陣營簡介在 GNU/Linux( 以下簡稱 Linux) 操作系統(tǒng)中火架,RPM 和 DPKG ...
    空語閱讀 1,416評論 0 4
  • 在 Linux(GNU/Linux)操作系統(tǒng)中鉴象,RPM 和 DPKG 為最常見的兩類軟件包管理工具忙菠,他們分別應用于...
    geekdeedy閱讀 624評論 0 0
  • 第一節(jié) 軟件包管理簡介 1.軟件包分類 1)源碼包 腳本安裝包 2)二進制包 系統(tǒng)默認包,對于redhat系列是r...
    littlexjing閱讀 451評論 0 0