天天看點

2018.8.11日,直播筆記,rpm安裝

課程内容:

  1. 安裝軟體包的三種方法
  2. rpm包介紹
  3. rpm工具用法
  4. yum工具用法
  5. yum搭建本地倉庫
  6. yum更換國内源
  7. yum下載下傳rpm包
  8. 源碼包安裝

安裝軟體包的三種方法

  • rpm工具
  • yum工具
  • 源碼包

rpm工具使用

概念:RMP包的名稱都是由-和.分成了若幹部分。

設定光驅并挂載

2018.8.11日,直播筆記,rpm安裝

挂載光驅

挂載CD光牒

[root@localhost ~]# mount /dev/cdrom /mnt/

mount: /dev/sr0 寫保護,将以隻讀方式挂載 #因為光驅是隻讀的,不可以寫東西

檢視rpm包都在哪

[root@localhost Packages]# ls #進入到/mnt/Packages目錄裡,ls出來的都是rpm包

rmp是由包名,版本号(主版本、次版本、修正版本)、釋出版本号、平台

rpm包工具用法

rpm包選項: -i 表示安裝 -U 表示更新一個包 -v 表示可視化 -h 表示顯示安裝進度 -e 解除安裝一個包 -q 查詢一個包是否已經安裝 -qi 查詢指定包資訊 -ql 列出一個包安裝的檔案 -qf 查詢檔案絕對路徑 //檢視一個嗯我呢見是由哪個包安裝的 rpm -qf `which cd` 檢視這指令的路徑包在哪 另在,在安裝RPM包時,常用的附帶參數還包括如下幾項。 --force 表示強制安裝,即使覆寫屬于其他包的檔案也要安裝。 --nodeps 表示當要安裝的RPM包依賴于其他包時,即使其他包沒有安裝,也要安裝這個包

安裝rpm封包件 -ivh

[root@localhost Packages]# rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm

更新rpm封包件 -Uvh

[root@localhost Packages]# rpm -Uvh zsh-5.0.2-28.el7.x86_64.rpm 

準備中... ################################# [100%]

軟體包 zsh-5.0.2-28.el7.x86_64 已經安裝

安裝最新版本

解除安裝rpm包 -e

[root@localhost Packages]# rpm -e zsh

查詢指定包是否安裝 -q

[[email protected] Packages]# rpm -q ppp

未安裝軟體包 ppp

查詢指定包資訊 -qi

[[email protected] Packages]# rpm -qi vim-enhanced

Name : vim-enhanced 

Epoch : 2

Version : 7.4.160

Release : 2.el7

Architecture: x86_64

Install Date: 2018年04月12日 星期四 22時07分45秒

Group : Applications/Editors

Size : 2292098

License : Vim 

Signature : RSA/SHA256, 2017年08月11日 星期五 04時15分38秒, Key ID 24c6a8a7f4a80eb5

Source RPM : vim-7.4.160-2.el7.src.rpm

Build Date : 2017年08月02日 星期三 08時46分12秒

Build Host : c1bm.rdu2.centos.org

Relocations : (not relocatable)

Packager : CentOS BuildSystem <http://bugs.centos.org>;

Vendor : CentOS

URL : http://www.vim.org/

Summary : A version of the VIM editor which includes recent enhancements

Description :

VIM (VIsual editor iMproved) is an updated and improved version of the

vi editor. Vi was the first real screen-based editor for UNIX, and is

still very popular. VIM improves on vi by adding new features:

multiple windows, multi-level undo, block highlighting and more. The

vim-enhanced package contains a version of VIM with extra, recently

introduced features like Python and Perl interpreters.

Install the vim-enhanced package if you'd like to use a version of the

VIM editor which includes recently added enhancements like

interpreters for the Python and Perl scripting languages. You'll also

need to install the vim-common package.

列出一個RMP包的安裝檔案的指令rpm -ql 包名

[[email protected] Packages]# rpm -ql vim-enhanced

/etc/profile.d/vim.csh

/etc/profile.d/vim.sh

/usr/bin/rvim

/usr/bin/vim

/usr/bin/vimdiff

/usr/bin/vimtutor

檢視一個指令,是由誰安裝的

[[email protected] Packages]# rpm -qf /usr/bin/vim

vim-enhanced-7.4.160-2.el7.x86_64

查一個指令的包是由誰安裝的,如不知道絕對路徑的

[[email protected] Packages]# rpm -qf which cd # which cd兩邊有倆個反引号`

bash-4.2.46-28.el7.x86_64

yum工具

使用yum自動安裝依賴包,直接直接跟包名就行

[[email protected] Packages]# yum install -y texlive

yum list可以列出所有的RPM包的資源

[[email protected] Packages]# yum list |head -n 20

搜尋一個相關關鍵字的包 yum search vim

[[email protected] Packages]# yum search vim

除此之外,還可以用grep來過濾,進而找到相應的RPM包

[[email protected] Packages]# yum list |grep 'vim'

vim-common.x86_64 2:7.4.160-2.el7 @base 

vim-enhanced.x86_64 2:7.4.160-2.el7 @base 

vim-filesystem.x86_64 2:7.4.160-2.el7 @base 

vim-minimal.x86_64 2:7.4.160-2.el7 @anaconda

protobuf-vim.x86_64 2.5.0-8.el7 base 

vim-X11.x86_64 2:7.4.160-2.el7 base 

2018.8.11日,直播筆記,rpm安裝

解除安裝RPM包及相連的包 yum remove -y 包名

[[email protected] Packages]# yum remove -y protobuf-vim

已加載插件:fastestmirror

參數 protobuf-vim 沒有比對

不删除任何軟體包

yum搭建本地倉庫

yum本地倉庫,為了友善Linux系統不能聯網,此時我們不能很友善的使用聯網的yum源了,這時候就需要卧兒們自己在Linux系統下使用CD光牒制作yum源。

挂載鏡像到/mnt目錄

[[email protected] /]# mount /dev/cdrom /mnt/

備份一個檔案 友善恢複。

[[email protected] ~]# cp -r /etc/yum.repos.d/ /etc/yum.repos.d.bak

删除所有的.repo檔案

[[email protected] ~]# cd /etc/yum.repos.d #進入到yum.repos.d目錄

[[email protected] yum.repos.d]# ls #檢視

CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Sources.repo CentOS-fasttrack.repo

CentOS-CR.repo CentOS-Media.repo CentOS-Vault.repo

[[email protected] yum.repos.d]# rm -rf ./* #删除所有的檔案

建立一個dvd.repo的檔案,并且添加以下内容

[[email protected] yum.repos.d]# vi dvd.repo

[dvd] #倉庫的名字

name=install dvd #描述

baseurl=file:///mnt #rpm在光驅的路徑

enable=1 #是否可用

gpgcheck=0 #是否需要檢測,不需要

~

重新整理repos生成緩存

[[email protected] yum.repos.d]# yum clean all

Failed to set locale, defaulting to C

Loaded plugins: fastestmirror

Cleaning repos: dvd

Cleaning up everything

Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos

Cleaning up list of fastest mirrors

yum更換國内源

首先先恢複昨天的實驗,把yum備份恢複回來

[[email protected] ~]# cd /etc/yum.repos.d #進入到目錄

[[email protected] yum.repos.d]# ls #檢視目前檔案

dvd.repo

[[email protected] yum.repos.d]# rm -f dvd.repo #rm 删除 dvd.repo檔案

[[email protected] yum.repos.d]# cp /etc/yum.repos.d.bak/* /etc/yum.repos.d 

#cp拷貝的檔案下所有的配置檔案,到本目錄下。

更換yum源,把源碼包删除掉

[[email protected] yum.repos.d]# ls #檢視檔案的第一個包是源碼包裡最核心的一個

CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo

CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo

[[email protected] yum.repos.d]# rm -f CentOS-Base.repo #删除這個檔案

緊接着,去下載下傳一個源碼包,國内的

[[email protected] yum.repos.d]# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo #在這裡,由于源碼包被删除,wget就使用不了

-bash: wget: 未找到指令

[[email protected] yum.repos.d]# curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo #下載下傳,後面是大“O"

檢視是否下載下傳完成

[[email protected] yum.repos.d]# ls

CentOS7-Base-163.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo

CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo

測試一下可以用yum安裝

[[email protected] yum.repos.d]# yum install zsh

[[email protected] yum.repos.d]# yum clean all #清除緩存

[[email protected] yum.repos.d]# yum list #這一步是必須要執行的,這樣可以生成緩存,友善下次使用。

yum安裝RMP包,epel

安裝擴充源epel(備用的源碼包)

[[email protected] yum.repos.d]# yum install -y epel-release

[[email protected] yum.repos.d]# yum list #這一步是必須要執行的,這樣可以生成緩存,友善下次使用。

[[email protected] yum.repos.d]# yum list |grep epel

怎麼安裝一個rpm包;

  • yum install -y 包名 --downloadonly

[[email protected] yum.repos.d]# yum install -y zsh --downloadonly

檢視rpm預設下載下傳路徑

[[email protected] yum.repos.d]# ls /var/cache/yum/x86_64/7/updates/

794f09bfe14c121f746efba16bb0aa24b38c2506bb93d0939e01df1158efc56d-primary.sqlite.bz2 packages

cachecookie repomd.xml

gen

2018.8.11日,直播筆記,rpm安裝

如果指定下載下傳的rpm路徑(如已安裝的就指定不了)

[[email protected] yum.repos.d]# yum install -y znc --downloadonly --downloaddir=/tmp/

[[email protected] yum.repos.d]# ls /tmp/

1.txt.gz

d6z

dior1

ks-script-5ToQJK

systemd-private-d4565e90fd384c749a36d51b19e3e377-chronyd.service-91Lo0Y

systemd-private-d4565e90fd384c749a36d51b19e3e377-vgauthd.service-XKotz4

systemd-private-d4565e90fd384c749a36d51b19e3e377-vmtoolsd.service-NZwSqa

yum.log

yum_save_tx.2018-04-15.15-35.qfXziD.yumtx

yum_save_tx.2018-04-16.23-44.QDLlX9.yumtx

znc-1.6.6-1.el7.x86_64.rpm

2018.8.11日,直播筆記,rpm安裝

源碼包安裝,首先要先下載下傳一個源碼包,根據自己需求

[[email protected] httpd-2.4.33]# echo $? 表示上一條指令是否正确

安裝源碼包通常需要以下3個步驟: 1. ./configyre。這一步可以定制功能,加上相應的選項即可; 具體有什麼選項可以通過指令 ./configure --help檢視。 這一步會自動檢測你的Linux系統于相關的套件是否有編譯該源碼包時所需要的庫, 因為一但缺少某個庫,就能完成編譯。 2. make。使用這個指令,會進行預設參數編譯。 3. make install,用于安裝,用于建立相關軟體的存放目錄和配置檔案

源碼包預設下載下傳路徑 /usr/local/src/ 這個目錄下

下載下傳一個apache的包,r.aminglinux.com 在這個網址上找

[[email protected] src]# wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.33.tar.gz

然後解壓,tar

[[email protected] src]# ls

httpd-2.4.33.tar.gz

[[email protected] src]# tar -zxvf httpd-2.4.33.tar.gz

進入到解壓的文檔

2018.8.11日,直播筆記,rpm安裝

/configuer --prefix=/usr/local/apache2,prefix指定安裝路徑,apache2表示版本

[[email protected] httpd-2.4.33]# ./configure --prefix=/usr/local/apache2

[[email protected] httpd-2.4.33]# echo $? #由于上條指令出現錯誤,

1 #在這裡表示非0的數字,都代表有錯誤

由于上條指令,缺少依賴包(gcc編譯器),繼續安裝。

[[email protected] src]# tar -zxvf apr-1.6.3.tar.gz 

[[email protected] apr-1.6.3]# yum install -y apr

[[email protected] apr-1.6.3]# ./configure --prefix=/usr/local/apache2

[[email protected] apr-1.6.3]# echo $?

此時就成功生成Makefile。檢視結果如下:

[[email protected] apr-1.6.3]# ls -l Makefile

-rw-r--r--. 1 root root 5092 4月 17 00:30 Makefile

進行編譯及安裝

[[email protected] apr-1.6.3]# make & make install

檢視該源碼包是否安裝完成,去所對應的路徑下/usr/local/apache2 目錄下有沒有很多的目錄即可。

[[email protected] apr-1.6.3]# cd /usr/local/apache2/

[[email protected] apache2]# ls

bin build-1 include lib

轉載于:https://my.oschina.net/u/3912766/blog/1926638

繼續閱讀