rpm以及yum基礎

第四周

### RPM包管理以及yum的基本用法

> rpm包管理
常用選項:
-v:顯示過程
-h:以#格式顯示包管理執行進度
-i:安裝程序包

-V校驗功能

升級選項

“`
-U:裝有舊版程序包就升級,沒有則安裝。
-F:有舊版則升級沒有則不執行
–oldpackarg:降級
–force:強制
“`
查詢操作:-q:【查詢選項】或【挑選選項】

“`
查詢選項有:
a:查詢所有包
f:由哪個包安裝生成
g:包組的相關程序包

–whatproveides:查看指定的能力由哪個包提空
–whattrequires:查看指定的能力被哪個包依賴
–changglog:查詢rpm包的改變日志
–conflicfs:查看與誰沖突
-c:查看程序配置文件
-i:查看包信息
-d:查看程序文檔
-l:列出文件包安裝后生成的所有文件
–script:安裝或者卸載時有可能執行的腳本
-R:查看程序包所依賴
–provides:列出指定程序包所提供的能力
“`

示例:

“`
[root@zhangxiao ~]# rpm -ivh /media/CentOS_6.9_Final/Packages/httpd-2.2.15-59.el6.centos.x86_64.rpm
Preparing… ########################################### [100%]
package httpd-2.2.15-59.el6.centos.x86_64 is already installed
[root@zhangxiao ~]#
“`
> 注意:1、不要對內核進行升級,LINUX支持多版本內核并存,如果需要升級則直接安裝
> 2、如果原程序包的配置文件曾被修改升級時,新版本的配置文件并不會覆蓋老版本的文件,而是會把老版本文件重新命名后保留

安裝選項:
“`
–test:測試模式安裝
–nodeps:忽略依賴關系
–replacepkgs:重新安裝
–nosignature:不檢查來源合法性
–nodigest:不檢查包的完整性
–noscript:安裝不行行腳本
%pre 安裝前腳本
%post 后腳本
%preun 卸載前腳本
%postun 后腳本
“`
示例
“`
[root@zhangxiao ~]# rpm -ivh /media/CentOS_6.9_Final/Packages/httpd-2.2.15-59.el6.centos.x86_64.rpm –replacepkgs
Preparing… ########################################### [100%]
1:httpd ########################################### [100%]
[root@zhangxiao ~]#
“`
示例
“`
[root@zhangxiao ~]# rpm -e httpd
error: Failed dependencies:
httpd >= 2.2.0 is needed by (installed) gnome-user-share-2.28.2-3.el6.x86_64
[root@zhangxiao ~]# rpm -e httpd –nodeps
[root@zhangxiao ~]# httpd
-bash: httpd: command not found
“`
常用的組合
“`
-qi Package ,-qf File
-qc Pachage ,-ql Package
-qd Package ,-qpi Pachage_File,-qpl:Pachage_File
“`
卸載:-e
–nodeps
–test
–noscripts

“`
示例[root@zhangxiao ~]# rpm -e tree
[root@zhangxiao ~]# tree
-bash: tree: command not found
“`

完整性校驗:
rpm –import 導入秘鑰(/media/centos6.9/KEY….)(一般是gpg-pubkey)

-K:檢驗來源合法性和完整性

### yum

> yum(全稱為 Yellow dog Updater Modified)是一個在Fedora和RedHat以及SUSE中的Shell前端軟件包管理器,基於RPM包管理,能夠從指定的服務器自動下載RPM包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。

yum:基本工作組件依賴于yum倉庫,yum倉庫存儲了許多rom包,以及包所相關的元數據(放置于repodata)所以倉庫應該指向的路徑應該為ropodata的父目錄

文件服務器:通常格式為
ftp://
http://
file://

“`
yum客戶端配置文件有
/etc/yum.conf
:為所有倉庫提供配置服務
/etc/yum.repors.d/*.repo
:為倉庫指向提供配置

“`
通常yum的基本配置不會變化,變化的一般是倉庫指向文件
我們需要在/etc/yum.repors.d/*.repo 新建一個文件,名字隨意,一般都叫base.repo(必須以.repo結尾)

“`
[base]
name=base #####此行表示名稱
baseurl=file:///media/CentOS_6.9_Final ###表示yum數據庫的路徑指向
gpgcheck=0 ###表示是否檢查文件的來源合法性(1表示檢查0表示不檢查)

~
“`

yum的用法格式

list
“`
yum [選項]【命令】[包名]…
yum list :顯示所有的包
yum list installed :顯示所有已安裝的包
yum list available
:顯示可用的包
“`

常用選項:

“`
install :安裝
remove:刪除
updata:升級
info:查看信息
clean:清理緩存
常用clean all
history:查看相關yum事務歷史

包組:
groupinstall 組名
安裝包組內的所有包
groupupdate 組名
升級包組
grouplist
包組清單
groupremove
卸載包組
groupinfo
查看包組信息
“`
如何使用光盤當做本地yum倉庫
1.掛載光盤到某目錄
2.創建配置文件

YUM 中命令行的優先級高于配置文件

命令行選項:

“`
–nogpgcheck:不進行檢查
-y :自動回答為yes
-q:靜默模式
–disablerepo:臨時禁用某個倉庫指向
–enablerepo:臨時啟動倉庫指向

repo配置文件中的可用變量
$releasever:os主版本
$arch:平臺
$basesearch:基礎平臺
$YUM0-$YUM9
“`

創建本地文件夾做倉庫

“`
首先復制需要的rpm包到文件夾下
輸入
createrepo dirname
元數據就生成了在diename/會生成文件repodata
“`

這時修改yum配置就可以了
(url地址改成file://PATH/dirname)

搭建yum服務器

首先準備兩臺服務器,兩臺機器版本可以不同

“`
啟動網絡服務
命令:systemctl start httpd
關閉防火墻
systemctl stop firewalld
下次開機不開啟防火墻
systemctl disable firewalld

在文件/var/www/html文件夾下新建index.html
[root@localhost html]# ls
[root@localhost html]# echo welcome > index.htm

在文件夾下新建文件夾
centos/6/x86_64/

需要的rpm包復制到文件中

或重新在虛擬機上掛載一塊管公安
添加光盤時,添加后沒有顯示啟用
echo ‘- – -‘ > /sys/class/scsi_host/host2/scan

“`

剩下參考創建本地倉庫

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/96873

(0)
a.張笑a.張笑
上一篇 2018-04-22 21:04
下一篇 2018-04-22 21:11

相關推薦

  • 2018年7月16日~7月22日(第五周作業)

    一、簡述rpm和yum命令的常用選項并舉例說明。 1)rpm命令:rpm [OPTIONS] [PACKAGE_FILE] 安裝:-i,–install 升級: -U,–upgrade,-F,–freshen 卸載: -e,–erase 查詢: -q,–query 校驗:-V,verify 數據庫維…

    Linux筆記 2018-07-28
  • 源碼編譯安裝httpd

    安裝三大步驟
    一、下載源碼包,并建立專門目錄管理
    二、 make
    三、make install

    2018-05-26
  • Linux用戶管理和組管理

    Linux用戶管理和組管理

    2018-04-09
  • DNS服務

    上課筆記

    2018-06-03
  • Linux集群類型、系統擴展方式及lvs調度方法

    linux集群相關知識總結: linux集群種類:(1)負載均衡集群LB(2)高可用集群HA(3)高性能集群HP 分布式系統:分布式存儲和分布式計算 系統擴展方式:向上擴展和向外擴展 LB cluster高可用實現方式: (1).硬件:F5 BIG ,IP Citrix Netscaler A10 (2)軟件:lvs:Linux Virtual Server…

    Linux筆記 2018-06-24
  • LINUX防火墻

    防火墻的分類 systemctl stop firewalld.service :service iptables stop 關閉本機的防火墻并不意味者將防火墻禁用了,只是禁用系統默認的防火墻設置,自己可以再重新配置防火墻策略。   主機防火墻:服務范圍為當前主機 網絡防火墻:服務范圍為防火墻一側的局域網 硬件防火墻:在專用硬件級別實現部分功能的防…

    Linux筆記 2018-06-28
欧美性久久久久