web-dev-qa-db-ja.com

Yum VMwareゲストとして最小のCentOS 6.5での更新の問題

INFO:VMware Workstationバージョン10.0.1でWindows 7 Pro(64ビット)を使用しています。 CentOS(64bit)6.5minimalを初めて使っています。プロキシサーバーを使用している可能性がある職場のネットワークからこれを実行しています。

背景:私はこのチュートリアルに従っています( http://1stopit.blogspot.com/2013/11/creating-centos-64 -minimal-vm-with.html

チュートリアルで推奨されているように、VM(デフォルト))ではなく、NATを使用してブリッジネットワークを構成しました。

最初にyum updateを実行しようとすると、PYCURL ERROR 6を受け取りました。次のようになります。

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
could not retreive mirrorlist http://mirrorlist.centos.org/?release=6&Arch=x86_64&repo=os error was 
14: PYCURL ERROR 6 - "Couldn't resolve Host 'mirrorlist.centos.org'"
Error: Cannot find a valid baseurl for repo: base

次に、ping mirrorlist.centos.orgを実行しようとすると、ping:unknown Host mirrorlist.centos.orgが発生しました

それから私は試してみました:ifdown eth0そしてifup eth0が得られました:Determining IP information for eth0... failed.

以下は、/etc/sysconfig/network-scripts/ifcfg-eth0にある私のファイルの現在の内容です。

DEVICE=eth0
HWADDR=xx:xx:xx:xx:xx:xx
TYPE=Ethernet
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp

(自分のHWADDRとUUIDを表示する必要があるかどうかわからなかったため、匿名のままにしました)

私は(プロキシサーバーを使用している可能性がある)職場からこれを実行しようとしているので、ここで推奨事項を試してみようと思いました https://unix.stackexchange.com/a/93428/60724/etc/yum.confを編集し、proxy=http://xxx.xxx.xx.xx:8080を追加しました。これがyum.confの完全なファイルです。

[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?     project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
proxy=http://xxx.xxx.xx.xx:8080

#comments
#metadata_expire=90

その後、yum updateを実行しようとすると、PYCURLエラー6ではなくPYCURLエラー5を受け取り始めました。

running yum update results in:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
4&repo=os error was
14: PYCURL ERROR 5 - "Couldn't resolve proxy 'xxx.xxx.xx.xx'"
Error: Cannot find a valid baseurl for repo:base
4
Daniel Dropik

Centos/RHEL 6.x最小インストールのバグです。何らかの理由で、すべてのインストールでNetwork Managerを使用することを期待しているため、インストール中にネットワークはアクティブ化されません。ファイル/ etc/sysconfig/network-scripts/ifcfg-eth0(またはeth接続番号が何であれ)のONBOOT = "no"の行をONBOOT = "yes"に変更します。

ところで、ifconfigの使用は非推奨です。代わりに「ip a」または「ip r」を使用してください。

1
veikok

Ifconfig -aを実行して、実際に使用可能なIPが表示されることを確認してください。 NATの後ろから移動するのは間違いないでしょう。また、使用可能なIPを取得するためのDHCPサーバー(dnsmasq経由)も失いましたが、IPサーバーを取得していません。

最も簡単なことは、そのNAT=を再び回避して、うまくいくことです(サービスネットワークの再起動または再起動のみ))。

それ以外の場合、ブリッジ先のネットワーク上のDHCPから使用可能なIPを取得している場合は、DNSとルーティングを調べる必要があります。 DNS(または何でも)に到達できないのと同じくらい簡単だと私は確信しています。そのため、どこにも到達できません。 VMのNICに実際に使用可能なIPがある場合は、cat /etc/resolv.confとroute -nを実行します。

0
user2066657

同じ問題でCentOS 6.5をセットアップしているときにこれに遭遇しました。私のシステムは静的IPアドレスで動作していて、ブームでした!!!機能していません。唯一の違いは、XFCE gui(仕様は良くない)をインストールしてからX11フォントパッケージをインストールしたことです...

どういうわけか、ifconfigを確認したところ、静的情報はありましたが、/ etc/resolv.confのネームサーバー情報が消えていました...? GUIのインストールでこれがどのように行われるかは想像できませんが、それが唯一の違いでした。

どうやってこれを見つけたの...? 8.8.8.8などにはpingできましたが、google.comのようなドメイン名にはできませんでした。それで、私はcurl http://www.google.com を試しました、そしてネームサーバーが存在しないと言ってresolv.confのデフォルトのエントリーが出てきました

私がそれらを入れたら、すべて大丈夫でした。

0
Adam

まず、プロキシを経由しているかどうかを確認する必要があります

curl http://www.google.com URL --proxy http://xxx.xxx.xx.xx:808

動作している場合は、認証済みプロキシだと思います。このスクリプトをconnect.sh、chmod + x connect.shとして保存して、実行可能にします。次に実行します

#!/bin/bash
echo -n "User:";
read user
echo -n "Password:";
read -s password 

proxy=http://$user:[email protected]:8080

if http_proxy="$proxy" curl -silent http://www.google.com | grep authentication_failed;
then 
        echo NO CONNECT
        unset http_proxy
else 
        echo -n OK
        http_proxy="$proxy" $*
fi

次に./connect.sh 'yum upgrade'を実行します

それが機能しない場合は、ミラーである可能性があります。これは私のEPELの例です/etc/yum.repo.d/epel.repo有効なミラーのフルパスを使用してください

#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&Arch=$basearch
baseurl=http://mirror.umd.edu/Fedora/epel/6/x86_64
0
kmassada