“yum -y install nfs-utils nfs-utils-lib”在 CentOS vagrant 机器上安装 NFS 客户端时
Posted
技术标签:
【中文标题】“yum -y install nfs-utils nfs-utils-lib”在 CentOS vagrant 机器上安装 NFS 客户端时【英文标题】:"yum -y install nfs-utils nfs-utils-lib" when installing NFS client on a CentOS vagrant machine 【发布时间】:2017-01-01 18:17:52 【问题描述】:我试图“流浪”一台 CentOS 机器 (centos7-x64-vbox43
),VirtualBox 作为提供者,ansible 作为配置工具。我执行了以下命令:
vagrant up --provision-with ansible
但是我得到一个错误,这与在guest机器中执行以下命令yum -y install nfs-utils nfs-utils-lib
有关(我猜):
[project-name] > vagrant up
/opt/vagrant/embedded/gems/gems/vagrant-1.8.1/lib/vagrant/pre-rubygems.rb:31: warning: Insecure world writable dir /Applications/Qt in PATH, mode 040777
/opt/vagrant/embedded/gems/gems/bundler-1.10.6/lib/bundler/shared_helpers.rb:78: warning: Insecure world writable dir /Applications/Qt in PATH, mode 040777
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports...
default: 80 (guest) => 2000 (host) (adapter 1)
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Remote connection disconnect. Retrying...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
default: The guest additions on this VM do not match the installed version of
default: VirtualBox! In most cases this is fine, but in rare cases it can
default: prevent things such as shared folders from working properly. If you see
default: shared folder errors, please make sure the guest additions within the
default: virtual machine match the version of VirtualBox you have installed on
default: your host and reload your VM.
default:
default: Guest Additions Version: 4.3.14
default: VirtualBox Version: 5.0
==> default: Setting hostname...
==> default: Configuring and enabling network interfaces...
==> default: Installing NFS client...
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
yum -y install nfs-utils nfs-utils-lib
Stdout from the command:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.switch.ch
* extras: mirror.ratiokontakt.de
* updates: mirror.ratiokontakt.de
No package nfs-utils-lib available.
Resolving Dependencies
--> Running transaction check
---> Package nfs-utils.x86_64 1:1.3.0-0.21.el7_2.1 will be installed
--> Processing Dependency: libtirpc >= 0.2.3-1 for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: gssproxy >= 0.3.0-0 for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: rpcbind for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: quota for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: libnfsidmap for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: libevent for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: libdevmapper.so.1.02(DM_1_02_97)(64bit) for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: keyutils for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: libtirpc.so.1()(64bit) for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: libnfsidmap.so.0()(64bit) for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Processing Dependency: libevent-2.0.so.5()(64bit) for package: 1:nfs-utils-1.3.0-0.21.el7_2.1.x86_64
--> Running transaction check
---> Package device-mapper-libs.x86_64 7:1.02.84-14.el7 will be updated
--> Processing Dependency: device-mapper-libs = 7:1.02.84-14.el7 for package: 7:device-mapper-1.02.84-14.el7.x86_64
---> Package device-mapper-libs.x86_64 7:1.02.107-5.el7_2.5 will be an update
---> Package gssproxy.x86_64 0:0.4.1-7.el7 will be installed
--> Processing Dependency: krb5-libs >= 1.12.0 for package: gssproxy-0.4.1-7.el7.x86_64
--> Processing Dependency: libverto-tevent for package: gssproxy-0.4.1-7.el7.x86_64
--> Processing Dependency: libini_config.so.3(INI_CONFIG_1.1.0)(64bit) for package: gssproxy-0.4.1-7.el7.x86_64
--> Processing Dependency: libref_array.so.1()(64bit) for package: gssproxy-0.4.1-7.el7.x86_64
--> Processing Dependency: libini_config.so.3()(64bit) for package: gssproxy-0.4.1-7.el7.x86_64
--> Processing Dependency: libcollection.so.2()(64bit) for package: gssproxy-0.4.1-7.el7.x86_64
--> Processing Dependency: libbasicobjects.so.0()(64bit) for package: gssproxy-0.4.1-7.el7.x86_64
---> Package keyutils.x86_64 0:1.5.8-3.el7 will be installed
---> Package libevent.x86_64 0:2.0.21-4.el7 will be installed
---> Package libnfsidmap.x86_64 0:0.25-12.el7 will be installed
---> Package libtirpc.x86_64 0:0.2.4-0.6.el7 will be installed
---> Package quota.x86_64 1:4.01-11.el7_2.1 will be installed
--> Processing Dependency: quota-nls = 1:4.01-11.el7_2.1 for package: 1:quota-4.01-11.el7_2.1.x86_64
--> Processing Dependency: tcp_wrappers for package: 1:quota-4.01-11.el7_2.1.x86_64
---> Package rpcbind.x86_64 0:0.2.0-33.el7_2.1 will be installed
--> Processing Dependency: libsystemd.so.0(LIBSYSTEMD_209)(64bit) for package: rpcbind-0.2.0-33.el7_2.1.x86_64
--> Processing Dependency: libsystemd.so.0()(64bit) for package: rpcbind-0.2.0-33.el7_2.1.x86_64
--> Running transaction check
---> Package device-mapper.x86_64 7:1.02.84-14.el7 will be updated
--> Processing Dependency: device-mapper = 7:1.02.84-14.el7 for package: 7:device-mapper-event-1.02.84-14.el7.x86_64
---> Package device-mapper.x86_64 7:1.02.107-5.el7_2.5 will be an update
---> Package krb5-libs.x86_64 0:1.11.3-49.el7 will be updated
---> Package krb5-libs.x86_64 0:1.13.2-12.el7_2 will be an update
---> Package libbasicobjects.x86_64 0:0.1.1-25.el7 will be installed
---> Package libcollection.x86_64 0:0.6.2-25.el7 will be installed
---> Package libini_config.x86_64 0:1.2.0-25.el7 will be installed
--> Processing Dependency: libpath_utils.so.1(PATH_UTILS_0.2.1)(64bit) for package: libini_config-1.2.0-25.el7.x86_64
--> Processing Dependency: libpath_utils.so.1()(64bit) for package: libini_config-1.2.0-25.el7.x86_64
---> Package libref_array.x86_64 0:0.1.5-25.el7 will be installed
---> Package libverto-tevent.x86_64 0:0.2.5-4.el7 will be installed
--> Processing Dependency: libtevent.so.0(TEVENT_0.9.9)(64bit) for package: libverto-tevent-0.2.5-4.el7.x86_64
--> Processing Dependency: libtalloc.so.2(TALLOC_2.0.2)(64bit) for package: libverto-tevent-0.2.5-4.el7.x86_64
--> Processing Dependency: libtevent.so.0()(64bit) for package: libverto-tevent-0.2.5-4.el7.x86_64
--> Processing Dependency: libtalloc.so.2()(64bit) for package: libverto-tevent-0.2.5-4.el7.x86_64
---> Package quota-nls.noarch 1:4.01-11.el7_2.1 will be installed
---> Package systemd-libs.x86_64 0:208-11.el7_0.2 will be updated
--> Processing Dependency: systemd-libs = 208-11.el7_0.2 for package: systemd-208-11.el7_0.2.x86_64
---> Package systemd-libs.x86_64 0:219-19.el7_2.11 will be an update
---> Package tcp_wrappers.x86_64 0:7.6-77.el7 will be installed
--> Running transaction check
---> Package device-mapper-event.x86_64 7:1.02.84-14.el7 will be updated
---> Package device-mapper-event.x86_64 7:1.02.107-5.el7_2.5 will be an update
--> Processing Dependency: device-mapper-event-libs = 7:1.02.107-5.el7_2.5 for package: 7:device-mapper-event-1.02.107-5.el7_2.5.x86_64
---> Package libpath_utils.x86_64 0:0.2.1-25.el7 will be installed
---> Package libtalloc.x86_64 0:2.1.5-1.el7_2 will be installed
---> Package libtevent.x86_64 0:0.9.26-1.el7_2.1 will be installed
---> Package systemd.x86_64 0:208-11.el7_0.2 will be updated
--> Processing Dependency: systemd = 208-11.el7_0.2 for package: systemd-sysv-208-11.el7_0.2.x86_64
--> Processing Dependency: systemd = 208-11.el7_0.2 for package: libgudev1-208-11.el7_0.2.x86_64
---> Package systemd.x86_64 0:219-19.el7_2.11 will be an update
--> Processing Dependency: kmod >= 18-4 for package: systemd-219-19.el7_2.11.x86_64
--> Running transaction check
---> Package device-mapper-event-libs.x86_64 7:1.02.84-14.el7 will be updated
---> Package device-mapper-event-libs.x86_64 7:1.02.107-5.el7_2.5 will be an update
---> Package kmod.x86_64 0:14-9.el7 will be updated
---> Package kmod.x86_64 0:20-5.el7 will be an update
---> Package libgudev1.x86_64 0:208-11.el7_0.2 will be updated
---> Package libgudev1.x86_64 0:219-19.el7_2.11 will be an update
---> Package systemd-sysv.x86_64 0:208-11.el7_0.2 will be updated
---> Package systemd-sysv.x86_64 0:219-19.el7_2.11 will be an update
--> Processing Conflict: systemd-219-19.el7_2.11.x86_64 conflicts initscripts < 9.49.28-1
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package initscripts.x86_64 0:9.49.17-1.el7 will be updated
---> Package initscripts.x86_64 0:9.49.30-1.el7_2.2 will be an update
--> Processing Conflict: systemd-219-19.el7_2.11.x86_64 conflicts dracut < 033-243
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package dracut.x86_64 0:033-161.el7 will be updated
--> Processing Dependency: dracut = 033-161.el7 for package: dracut-config-rescue-033-161.el7.x86_64
--> Processing Dependency: dracut = 033-161.el7 for package: dracut-network-033-161.el7.x86_64
---> Package dracut.x86_64 0:033-360.el7_2.1 will be an update
--> Running transaction check
---> Package dracut-config-rescue.x86_64 0:033-161.el7 will be updated
---> Package dracut-config-rescue.x86_64 0:033-360.el7_2.1 will be an update
---> Package dracut-network.x86_64 0:033-161.el7 will be updated
---> Package dracut-network.x86_64 0:033-360.el7_2.1 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
nfs-utils x86_64 1:1.3.0-0.21.el7_2.1 updates 371 k
Updating:
dracut x86_64 033-360.el7_2.1 updates 311 k
initscripts x86_64 9.49.30-1.el7_2.2 updates 429 k
Installing for dependencies:
gssproxy x86_64 0.4.1-7.el7 base 84 k
keyutils x86_64 1.5.8-3.el7 base 54 k
libbasicobjects x86_64 0.1.1-25.el7 base 24 k
libcollection x86_64 0.6.2-25.el7 base 40 k
libevent x86_64 2.0.21-4.el7 base 214 k
libini_config x86_64 1.2.0-25.el7 base 59 k
libnfsidmap x86_64 0.25-12.el7 base 46 k
libpath_utils x86_64 0.2.1-25.el7 base 27 k
libref_array x86_64 0.1.5-25.el7 base 26 k
libtalloc x86_64 2.1.5-1.el7_2 updates 34 k
libtevent x86_64 0.9.26-1.el7_2.1 updates 33 k
libtirpc x86_64 0.2.4-0.6.el7 base 85 k
libverto-tevent x86_64 0.2.5-4.el7 base 9.0 k
quota x86_64 1:4.01-11.el7_2.1 updates 178 k
quota-nls noarch 1:4.01-11.el7_2.1 updates 90 k
rpcbind x86_64 0.2.0-33.el7_2.1 updates 58 k
tcp_wrappers x86_64 7.6-77.el7 base 78 k
Updating for dependencies:
device-mapper x86_64 7:1.02.107-5.el7_2.5 updates 252 k
device-mapper-event x86_64 7:1.02.107-5.el7_2.5 updates 167 k
device-mapper-event-libs x86_64 7:1.02.107-5.el7_2.5 updates 169 k
device-mapper-libs x86_64 7:1.02.107-5.el7_2.5 updates 305 k
dracut-config-rescue x86_64 033-360.el7_2.1 updates 50 k
dracut-network x86_64 033-360.el7_2.1 updates 90 k
kmod x86_64 20-5.el7 base 114 k
krb5-libs x86_64 1.13.2-12.el7_2 updates 843 k
libgudev1 x86_64 219-19.el7_2.11 updates 66 k
systemd x86_64 219-19.el7_2.11 updates 5.1 M
systemd-libs x86_64 219-19.el7_2.11 updates 358 k
systemd-sysv x86_64 219-19.el7_2.11 updates 53 k
Transaction Summary
================================================================================
Install 1 Package (+17 Dependent packages)
Upgrade 2 Packages (+12 Dependent packages)
Total size: 9.8 M
Downloading packages:
Running transaction check
Running transaction test
Stderr from the command:
Transaction check error:
file /usr/lib/systemd/system/blk-availability.service from install of device-mapper-7:1.02.107-5.el7_2.5.x86_64 conflicts with file from package lvm2-7:2.02.105-14.el7.x86_64
file /usr/sbin/blkdeactivate from install of device-mapper-7:1.02.107-5.el7_2.5.x86_64 conflicts with file from package lvm2-7:2.02.105-14.el7.x86_64
file /usr/share/man/man8/blkdeactivate.8.gz from install of device-mapper-7:1.02.107-5.el7_2.5.x86_64 conflicts with file from package lvm2-7:2.02.105-14.el7.x86_64
Error Summary
-------------
我不知道为什么会这样,因为我对vagrant
不是很熟悉,可以说我已经使用了两次或三次。我的第一个问题是:为什么会发生这种情况?
注意,我想我知道 NFS 是什么,即它应该是安装在客户机上的文件系统,它允许同一台机器和主机共享文件夹和文件,对吧?
在找到以下文章之前,我无法解决这个问题:
yum update or yum install fails with package conflict between 64 bit and 32 bit package architectures?
至少对我而言,其标题似乎与上述问题完全无关。
我意识到上面的命令失败后,vagrant机器实际上已经初始化了,我可以使用vagrant ssh
连接到它,这就是我所做的。然后,在访客 vagrant 机器中(在vagrant ssh
之后),我执行了以下命令(与我刚刚提到的文章中指定的命令相同):
sudo yum install yum-utils
sudo package-cleanup --dupes
sudo package-cleanup --cleandupes
添加了这一行:
exactarch=1
到文件/etc/yum.conf
,最后
yum clean all
sudo yum update
我通过输入exit
退出了流浪机器。我做了vagrant halt
来停止机器。我重新执行了初始命令:
vagrant up --provision-with ansible
并且错误不再发生。
我的第二个问题是:为什么执行上面教程中的命令以及我在上面明确提到的命令可以解决问题?
执行删除重复包的命令时,我注意到输出是,实际上没有重复包。就我而言,似乎唯一真正解决问题的命令是(不确定):
yum clean all
sudo yum update
为什么这实际上可以解决问题?
我的一个想法是这个盒子实际上已经过时了,因为将预安装的软件包更新到最新版本显然解决了这个问题......
【问题讨论】:
【参考方案1】:很遗憾,您输入的命令可能已经解决了一些不同的问题,而原始安装并没有提供太多信息。
可能是原始图像的包中存在阻止此安装的错误,但sudo yum update
通过安装更新的包修复了该问题。
也有可能是 yum 数据库已损坏并且它没有安装 nfs-utils 或 nfs-utils-lib 的先决条件,因为它认为它们已经安装,但“清理”修复了 yum 数据库。
关于 package-cleanup 的 Dito,它位于 yum-utils 内部。
exactarch=1 可能没有解决任何问题,因为您没有在任何地方指定特定架构(假设原始图像也没有)。
听起来您在问题结束时已经很清楚了。还有什么?
【讨论】:
【参考方案2】:CentOS 7 中有一个bug - 导致此错误的软件包:
仅更新 device-mapper 子包而不更新 lvm2 包时,如果在子包中移动文件,我们可能会遇到文件冲突。 ...为避免从旧版本更新时出现问题,现在在软件包中明确定义了直接冲突,如果命中,将提供有关解决此冲突所需的最低版本的信息。
因此,更新lvm2
是一种解决方案。我认为yum update
解决了这个问题,因为添加到包中的冲突是作为包信息的一部分从包存储库加载的。因此,lvm2
可能在 Vagrant 安装 device-mapper
时已更新,此更新避免了该错误。
【讨论】:
相关问题:***.com/questions/36439746/…。在我看来,我无法链接这些问题。是否可以手动添加链接?以上是关于“yum -y install nfs-utils nfs-utils-lib”在 CentOS vagrant 机器上安装 NFS 客户端时的主要内容,如果未能解决你的问题,请参考以下文章