1. 程式人生 > >安裝軟件包

安裝軟件包

nsa failover rim 信息 rom alink type vsftpd ima

安裝軟件包命令:

一、rpm -i 命令

[root@localhost Packages]# rpm -i vsftpd-3.0.2-22.el7.x86_64.rpm

警告:vsftpd-3.0.2-22.el7.x86_64.rpm: 頭V3 RSA/SHA256 Signature, 密鑰 ID f4a80eb5: NOKEY

查看軟件包的詳細信息:

[root@localhost Packages]# rpm -qi vsftpd

Name : vsftpd

Version : 3.0.2

Release : 22.el7

Architecture: x86_64

Install Date: 2017年11月02日 星期四 06時08分55秒

Group : System Environment/Daemons

Size : 356236

License : GPLv2 with exceptions

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

Source RPM : vsftpd-3.0.2-22.el7.src.rpm

Build Date : 2017年08月03日 星期四 14時10分20秒

Build Host : c1bm.rdu2.centos.org

Relocations : (not relocatable)

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

Vendor : CentOS

URL : https://security.appspot.com/vsftpd.html

Summary : Very Secure Ftp Daemon

Description :

vsftpd is a Very Secure FTP daemon. It was written completely from

scratch.

[root@localhost Packages]#

軟件包安裝在哪裏

[root@localhost Packages]# rpm -ql vsftpd

系統中安裝了多少個rpm包,可以驗證到底是否成功安裝

[root@localhost Packages]# rpm -qa

[root@localhost Packages]# rpm -qa | grep vsf

vsftpd-3.0.2-22.el7.x86_64

[root@localhost Packages]#

知道了某個文件,要查哪個軟件包產生:

[root@localhost Packages]# rpm -qf slapi-nis-0.56.0-4.el7.x86_64.rpm

文件 /run/media/root/CentOS 7 x86_64/Packages/slapi-nis-0.56.0-4.el7.x86_64.rpm 不屬於任何軟件包

[root@localhost Packages]#

技術分享

刪除軟件

[root@localhost Packages]# rpm -e vsftpd

查看是否刪除成功

[root@localhost Packages]# rpm -q vsftpd

未安裝軟件包 vsftpd

[root@localhost Packages]#

rpm –i的問題:httpd-2.4.6-67.el7.centos.x86_64.rpm依賴別的軟件包,需要先按照別的軟件包

[root@localhost Packages]# rpm -i httpd-2.4.6-67.el7.centos.x86_64.rpm

警告:httpd-2.4.6-67.el7.centos.x86_64.rpm: 頭V3 RSA/SHA256 Signature, 密鑰 ID f4a80eb5: NOKEY

錯誤:依賴檢測失敗:

/etc/mime.types 被 httpd-2.4.6-67.el7.centos.x86_64 需要

httpd-tools = 2.4.6-67.el7.centos 被 httpd-2.4.6-67.el7.centos.x86_64 需要

libapr-1.so.0()(64bit) 被 httpd-2.4.6-67.el7.centos.x86_64 需要

libaprutil-1.so.0()(64bit) 被 httpd-2.4.6-67.el7.centos.x86_64 需要

[root@localhost Packages]#

二、yum命令

解決這個問題的方法:
yum 需要有目錄,幫你解決依賴性,不過依賴性需要提前在目錄上寫好

依賴性文件repodata

由於目錄如果有空格就會影響結果,

[root@localhost CentOS 7 x86_64]# pwd

/run/media/root/CentOS 7 x86_64

[root@localhost CentOS 7 x86_64]# df

文件系統 1K-塊 已用 可用 已用% 掛載點

/dev/sda3 18351104 6310516 12040588 35% /

devtmpfs 485108 0 485108 0% /dev

tmpfs 499848 0 499848 0% /dev/shm

tmpfs 499848 7308 492540 2% /run

tmpfs 499848 0 499848 0% /sys/fs/cgroup

/dev/sda1 508580 154480 354100 31% /boot

tmpfs 99972 8 99964 1% /run/user/42

tmpfs 99972 20 99952 1% /run/user/0

/dev/sr0 4414592 4414592 0 100% /run/media/root/CentOS 7 x86_64

所以掛載到沒有空格的目錄中

[root@localhost CentOS 7 x86_64]# mount /dev/sr0 /opt

進入下面這個目錄,這個目錄存放yum的配置文件

[root@localhost CentOS 7 x86_64]# cd /etc/yum.repos.d/

[root@localhost 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

我們為了學習寫配置文件,現在把他們都移到一個文件夾中,讓這個文件夾為空

[root@localhost yum.repos.d]# mkdir /tmp/bak

[root@localhost yum.repos.d]# mv * /tmp/bak

[root@localhost yum.repos.d]# ls

要以repo結尾

vim local.repo

[local] -- 隨便寫

name=local repo -- 隨便寫

baseurl=file:///opt

enable=1 -- 開啟

gpgchek=0 -- 不檢測

上面配完本地yum

清除yum的本地緩存

yum clean all

安裝httpd

yum install httpd

如果不是按yes的話,就yum install httpd -y

卸載

yum -y erase httpd或者rpm -e httpd

[root@localhost yum.repos.d]# mv /tmp/bak/*

mv: 目標"/tmp/bak/CentOS-Vault.repo" 不是目錄

[root@localhost yum.repos.d]# ls

local.repo

記住要加點

[root@localhost yum.repos.d]# mv /tmp/bak/* .

[root@localhost 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 local.repo

yum能解決依賴性,是因為yum倉庫cd /opt 中有repodata

[root@bogon yum.repos.d]# yum -y install httpd

已加載插件:fastestmirror, langpacks

local | 3.6 kB 00:00:00

(1/2): local/primary_db | 5.7 MB 00:00:00

(2/2): local/group_gz | 156 kB 00:00:00

Loading mirror speeds from cached hostfile

正在解決依賴關系

--> 正在檢查事務

---> 軟件包 httpd.x86_64.0.2.4.6-67.el7.centos 將被 安裝

--> 正在處理依賴關系 httpd-tools = 2.4.6-67.el7.centos,它被軟件包 httpd-2.4.6-67.el7.centos.x86_64 需要

--> 正在處理依賴關系 /etc/mime.types,它被軟件包 httpd-2.4.6-67.el7.centos.x86_64 需要

--> 正在處理依賴關系 libaprutil-1.so.0()(64bit),它被軟件包 httpd-2.4.6-67.el7.centos.x86_64 需要

--> 正在處理依賴關系 libapr-1.so.0()(64bit),它被軟件包 httpd-2.4.6-67.el7.centos.x86_64 需要

--> 正在檢查事務

---> 軟件包 apr.x86_64.0.1.4.8-3.el7 將被 安裝

---> 軟件包 apr-util.x86_64.0.1.5.2-6.el7 將被 安裝

---> 軟件包 httpd-tools.x86_64.0.2.4.6-67.el7.centos 將被 安裝

---> 軟件包 mailcap.noarch.0.2.1.41-2.el7 將被 安裝

--> 解決依賴關系完成

依賴關系解決

=======================================================================================

Package 架構 版本 源 大小

=======================================================================================

正在安裝:

httpd x86_64 2.4.6-67.el7.centos local 2.7 M

為依賴而安裝:

apr x86_64 1.4.8-3.el7 local 103 k

apr-util x86_64 1.5.2-6.el7 local 92 k

httpd-tools x86_64 2.4.6-67.el7.centos local 87 k

mailcap noarch 2.1.41-2.el7 local 31 k

事務概要

=======================================================================================

安裝 1 軟件包 (+4 依賴軟件包)

總下載量:3.0 M

安裝大小:10 M

Downloading packages:

---------------------------------------------------------------------------------------

總計 6.3 MB/s | 3.0 MB 00:00

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

正在安裝 : apr-1.4.8-3.el7.x86_64 1/5

正在安裝 : apr-util-1.5.2-6.el7.x86_64 2/5

正在安裝 : httpd-tools-2.4.6-67.el7.centos.x86_64 3/5

正在安裝 : mailcap-2.1.41-2.el7.noarch 4/5

正在安裝 : httpd-2.4.6-67.el7.centos.x86_64 5/5

驗證中 : httpd-2.4.6-67.el7.centos.x86_64 1/5

驗證中 : mailcap-2.1.41-2.el7.noarch 2/5

驗證中 : apr-1.4.8-3.el7.x86_64 3/5

驗證中 : httpd-tools-2.4.6-67.el7.centos.x86_64 4/5

驗證中 : apr-util-1.5.2-6.el7.x86_64 5/5

已安裝:

httpd.x86_64 0:2.4.6-67.el7.centos

作為依賴被安裝:

apr.x86_64 0:1.4.8-3.el7 apr-util.x86_64 0:1.5.2-6.el7

httpd-tools.x86_64 0:2.4.6-67.el7.centos mailcap.noarch 0:2.1.41-2.el7

完畢!

[root@bogon yum.repos.d]#

現在把之前剪切到/tmp/bak/,移到mv /tmp/bak/* .

[root@bogon opt]# cd /etc/yum.repos.d/

[root@bogon yum.repos.d]# ls

local.repo

[root@bogon yum.repos.d]# mv /root/aa/* .

[root@bogon 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 local.repo

[root@bogon yum.repos.d]#

查看是否安裝成功

[root@bogon yum.repos.d]# rpm -qa |grep httpd

httpd-tools-2.4.6-67.el7.centos.x86_64

httpd-2.4.6-67.el7.centos.x86_64

[root@bogon yum.repos.d]#

卸載軟件

[root@bogon /]# yum -y erase httpd

從下面看到,包已經卸載完,依賴性包沒卸載

root@bogon /]# rpm -qa |grep httpd

httpd-tools-2.4.6-67.el7.centos.x86_64

[root@bogon /]#

local.repo的格式都差不多

[root@bogon /]# cd /etc/yum.repos.d/

[root@bogon yum.repos.d]# vim CentOS-Base.repo

清理一下

[root@bogon yum.repos.d]# yum clean all

重啟網絡服務

[root@bogon yum.repos.d]# service network restart

安裝ceph

[root@bogon yum.repos.d]# yum -y install ceph

[root@bogon ceph]# yum -y install epel安裝不成功,因為名字錯了

但是如果不知道後面是什麽,就加-*

[root@bogon ceph]# yum -y install epel-*

得到了擴展源

技術分享

建緩存,讓安裝速度提高

[root@bogon yum.repos.d]# yum makecache -y

三、一般yum安裝完的話,就會把軟件包刪掉,如果我們要保留這些軟件包的話,可以這樣:這樣我們不受官網老更新的影響。

vim /etc/yum.conf

把紅框和上面一行修改為

cachedir=/rpm_bak

keepcache=1

意思是把軟件包保存到/rpm_bak文件夾中

技術分享

技術分享

查看是否修改成功

[root@bogon yum.repos.d]# vim /etc/yum.conf

[root@bogon yum.repos.d]# head -10 /etc/yum.conf

建保存目錄,那以後安裝什麽包都會保存到這裏,不會被刪

[root@bogon yum.repos.d]# mkdir /rpm_bak

查看是否下載成功

[root@localhost yum.repos.d]# cd /rpm_bak

[root@localhost rpm_bak]# ls

base epel extras local timedhosts timedhosts.txt updates

[root@localhost rpm_bak]# cd epel

[root@localhost epel]# ls

[root@localhost epel]# cd packages

[root@localhost packages]# ls

epel-release-7-11.noarch.rpm

清理yum的程序

yum clean all

重新安裝

yum reinstall

如果epel安裝不成功,就用下面的程序

yum reinstall epel-release -y

更新操作系統

yum update

四、yum連接網上的URL來安裝

看看epel.repo文件,紅色字的URL跟直接上網打網址的效果是一樣的。

[root@localhost ~]# cd /etc/yum.repos.d/

[root@localhost yum.repos.d]# ls

CentOS6-Base-163.repo CentOS-CR.repo CentOS-Media.repo epel.repo

CentOS7-Base-163.repo CentOS-Debuginfo.repo CentOS-Sources.repo epel-testing.repo

CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo local.repo

[root@localhost yum.repos.d]# cat epel.repo

[epel]

name=Extra Packages for Enterprise Linux 7 - $basearch

#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch

metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch

failovermethod=priority

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

可以建httpd的yum倉庫和yum源

mkdir /cangku_httpd(看截圖)

createrepo /cangku_httpd

cd /cangku_httpd

ls

cd /etc/yum.repos.d/

ls

mv * /tmp/bak/

ls

vim httpd.repo

[httpd]

name=httpd server

baseurl=file:///cangke_httpd

enabled=1

gpgcheck=0

yum install httpd -y

技術分享

技術分享

添加完後記得要刷新下,命令是createrepo /cangku_httpd

技術分享

技術分享

如果倉庫url是來自網絡的話,可以這樣做:

[root@localhost media]# cd /etc/yum.repos.d/

[root@localhost yum.repos.d]# ls

CentOS6-Base-163.repo CentOS-CR.repo CentOS-Media.repo epel.repo

CentOS7-Base-163.repo CentOS-Debuginfo.repo CentOS-Sources.repo epel-testing.repo

CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo local.repo

[root@localhost yum.repos.d]# cat CentOS-Base.repo

技術分享

技術分享

復制紅框的網址http://mirror.centos.org/centos/

如何知道Cento是哪個版本

[root@localhost yum.repos.d]# cat /etc/redhat-release

CentOS Linux release 7.4.1708 (Core)

技術分享

點擊進入下面網址

http://mirror.centos.org/centos/7.4.1708/os/x86_64/repodata/

我們可以用這個網址來配置網絡yum名

http://mirror.centos.org/centos/7.4.1708/os/x86_64

建repo

[root@localhost yum.repos.d]# vim centos-7.repo

[centos]

name=centos

baseurl=http://mirror.centos.org/centos/7.4.1708/os/x86_64/

enable=1

gpgcheck=0

[root@localhost yum.repos.d]# cat centos-7.repo

[root@localhost yum.repos.d]# yum install lrzsz –y

安裝軟件包