web-dev-qa-db-ja.com

CentOSにPHPパッケージをインストールできません

CentOS 6.3(編集:6.4に更新)では、PHP(MySQL、および他の多くの)パッケージをインストールできません。

たとえば、yum install php-develの出力は次のとおりです。

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.vit.com.tr
 * extras: mirrors.prometeus.net
 * rpmforge: mirror.nl.leaseweb.net
 * updates: mirrors.prometeus.net
Setting up Install Process
No package php-devel available.
Error: Nothing to do

ls /etc/yum.repos.dの出力:

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

grep -E "name|enabled" /etc/yum.repos.d/*

/etc/yum.repos.d/CentOS-Base.repo:name=CentOS-$releasever - Base
/etc/yum.repos.d/CentOS-Base.repo:name=CentOS-$releasever - Updates
/etc/yum.repos.d/CentOS-Base.repo:name=CentOS-$releasever - Extras
/etc/yum.repos.d/CentOS-Base.repo:name=CentOS-$releasever - Plus
/etc/yum.repos.d/CentOS-Base.repo:enabled=0
/etc/yum.repos.d/CentOS-Base.repo:name=CentOS-$releasever - Contrib
/etc/yum.repos.d/CentOS-Base.repo:enabled=0
/etc/yum.repos.d/CentOS-Debuginfo.repo:name=CentOS-6 - Debuginfo
/etc/yum.repos.d/CentOS-Debuginfo.repo:enabled=0
/etc/yum.repos.d/CentOS-Media.repo:name=CentOS-$releasever - Media
/etc/yum.repos.d/CentOS-Media.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.0 - Base
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.0 - Updates
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.0 - Extras
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.0 - Contrib
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.0 - CentOSPlus
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.1 - Base
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.1 - Updates
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.1 - Extras
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.1 - Contrib
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.1 - CentOSPlus
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.2 - Base
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.2 - Updates
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.2 - Extras
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.2 - Contrib
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/CentOS-Vault.repo:name=CentOS-6.2 - CentOSPlus
/etc/yum.repos.d/CentOS-Vault.repo:enabled=0
/etc/yum.repos.d/rpmforge.repo:name = Red Hat Enterprise $releasever - RPMforge.net - dag
/etc/yum.repos.d/rpmforge.repo:enabled = 1

yum repolist

repo id                                           repo name                                                                          status
base                                              CentOS-6 - Base                                                                      6,296+85
extras                                            CentOS-6 - Extras                                                                          13
rpmforge                                          Red Hat Enterprise 6 - RPMforge.net - dag                                          11,131+144
updates                                           CentOS-6 - Updates                                                                     890+34

yum list available 'php-*'

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.vit.com.tr
 * extras: mirrors.prometeus.net
 * rpmforge: www.mirrorservice.org
 * updates: mirrors.prometeus.net
Error: No matching Packages to list

これはすべてのPHP=パッケージで発生します。php-と入力してタブキーを押すと、オートコンプリートはありません。何か提案はありますか?

4
hpn

Cpanelのようないくつかのソフトウェアは/etc/yum.confでphpを無効にします

exclude= php*  mysql*

/etc/yum.confファイルに上記の行が含まれている場合は、単純にphp *をその行から削除します。その後、phpをインストールできます:)

20
Mitesh Shah

質問と出力から、RPMForgeリポジトリのみが有効になっていて、それ以外は何もないようです。

/etc/yum.repos.d/rpmforge.repo:name = Red Hat Enterprise $releasever - RPMforge.net - dag
/etc/yum.repos.d/rpmforge.repo:enabled = 1

だから実行:

# yum repolist disabled
repo id                                                            repo name
Fedora/19/x86_64                                                   Fedora 19 - x86_64
Fedora-debuginfo/19/x86_64                                         Fedora 19 - x86_64 - Debug
Fedora-source/19/x86_64                                            Fedora 19 - Source
updates-debuginfo/19/x86_64                                        Fedora 19 - x86_64 - Updates - Debug
updates-testing/19/x86_64                                          Fedora 19 - x86_64 - Test Updates
updates-testing-debuginfo/19/x86_64                                Fedora 19 - x86_64 - Test Updates Debug
updates-testing-source/19/x86_64                                   Fedora 19 - Test Updates Source                 

次に、目的のリポジトリを有効にします。yum-config-manager --enable Fedora-source

あなたの場合、それはbaseであるべきです

6
BitsOfNix

バッシュ補完

私がyumを押すと自動補完が実行されるとは思わない tab デフォルトではキー。 Yum)にパッケージbash-completionがない というタイトルのこのU&L Q&Aを見つけました。パッケージをインストールする必要があるようですbash-completion

$ Sudo yum install bash-completion

取り戻す

何が起こっているのかを判断するために、yumの他の機能のいくつかを利用します。手始めに、yumが知っているreposを確認できます。

$ yum repolist
Loaded plugins: langpacks, presto, refresh-packagekit
Adding en_US to language list
repo id                    repo name                                      status
Dropbox                    Dropbox Repository                                  4
Adobe-linux-i386           Adobe Systems Incorporated                         17
Adobe-linux-x86_64         Adobe Systems Incorporated                          2
Fedora                     Fedora 14 - x86_64                             22,161
google-chrome              google-chrome                                       3
google-earth               google-earth                                        1
google-talkplugin          google-talkplugin                                   1
lamolabs                   LamoLabs Repo                                      58
lamolabs-noarch            LamoLabs Repo                                       2
nautilus-flickr-uploader   Nautilus Flickr Uploader for Fedora 14              3
rpmfusion-free             RPM Fusion for Fedora 14 - Free                   411
rpmfusion-free-updates     RPM Fusion for Fedora 14 - Free - Updates         642
rpmfusion-nonfree          RPM Fusion for Fedora 14 - Nonfree                181
rpmfusion-nonfree-updates  RPM Fusion for Fedora 14 - Nonfree - Updates      282
scootersoftware            Scooter Software                                    1
updates                    Fedora 14 - x86_64 - Updates                    9,982
wuala                      cdn.wuala.com                                       8

利用可能なリスト

このコマンドを使用して、アクセス可能なリポジトリで何が利用可能かを確認することもできます。

$ yum list available 'php-*'
php-mapi.x86_64                                     7.0.3-1.fc14         updates
php-mapserver.x86_64                                5.6.7-1.fc14         updates
php-markdown.noarch                                 1.0.1n-1.fc14        Fedora·
php-mbstring.x86_64                                 5.3.8-3.fc14         updates
php-mcrypt.x86_64                                   5.3.8-3.fc14         updates
php-mssql.x86_64                                    5.3.8-3.fc14         updates
php-mysql.x86_64                                    5.3.8-3.fc14         updates
php-nusoap.noarch                                   0.9.5-1.fc14         Fedora·
php-oauth.noarch                                    1.0-0.7.svn592.fc12  Fedora·
php-odbc.x86_64                                     5.3.8-3.fc14         updates
...

探す

次のコマンドを使用して、リポジトリを検索することもできます。

$ yum search 'php-devel'
Loaded plugins: langpacks, presto, refresh-packagekit
Adding en_US to language list
============================== Matched: php-devel ==============================
php-devel.x86_64 : Files needed for building PHP extensions
php-devel.i686 : Files needed for building PHP extensions
ice-php-devel.i686 : Tools for developing Ice applications in PHP
ice-php-devel.x86_64 : Tools for developing Ice applications in PHP

repoquery

リポジトリにアクセスして、どのリポジトリが特定のパッケージを提供しているかを確認できる場合は、このツールを使用できます。

$ repoquery php-devel
php-devel-0:5.3.3-22.el6.x86_64

$ repoquery -i php-devel

Name        : php-devel
Version     : 5.3.3
Release     : 22.el6
Architecture: x86_64
Size        : 3188116
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Group       : Development/Libraries
URL         : http://www.php.net/
Repository  : base
Summary     : Files needed for building PHP extensions
Source      : php-5.3.3-22.el6.src.rpm
Description :
The php-devel package contains the files needed for building PHP
extensions. If you need to compile your own PHP extensions, you will
need to install this package.

上記から、パッケージphp-develbaseリポジトリから出ています。

最速のミラー

このプラグインが問題を引き起こしている場合があります。使用するミラーのキャッシュを削除して、再生成できるようにすることができます。

$ locate timedhosts.txt
/var/cache/yum/x86_64/6/timedhosts.txt

$ Sudo rm /var/cache/yum/x86_64/6/timedhosts.txt

次に、yum install php-develコマンドを再度実行します。

冗長

上記のコマンドのほとんどはスイッチ--verboseまたは-v。たとえば、yum list available <pkg>コマンドは、yumが実際に舞台裏で何をしているのかについての洞察を得ます。

$ yum --verbose list available php-devel
Loading "fastestmirror" plugin
Loading "priorities" plugin
Loading "refresh-packagekit" plugin
Config time: 0.020
Yum Version: 3.2.29
Setting up Package Sacks
Loading mirror speeds from cached hostfile
 * base: mirror.thelinuxfix.com
 * epel: mirror.steadfast.net
 * extras: yum.singlehop.com
 * updates: ftpmirror.your.org
 --> python-netaddr-0.7.5-4.el6.noarch from base excluded (priority)
 --> python-tw-forms-0.9.9-1.el6.noarch from base excluded (priority)

 ...
 ...

 --> wxGTK-devel-2.8.12-1.el6.centos.x86_64 from extras excluded (priority)
73 packages excluded due to repository priority protections
pkgsack time: 6.174
rpmdb time: 0.000
Available Packages
php-devel.x86_64                        5.3.3-22.el6                        base

基本リポジトリは無効ですか?

実行したコマンドの出力を見ると、ベースリポジトリが無効になっているようです(/etc/yum.repos.d/CentOS-Base.repo:enabled=0)、有効にする必要があります。

これらのファイルを編集して行を0から1に変更するか、次のコマンドを実行します。

$ yum-config-manager --enable base
$ yum-config-manager --enable updates

すべてのリポジトリを有効にする

次のコマンドを使用して、すべてのリポジトリを有効にすることもできます。

$ yum --enablerepo=\* search php-devel
3
slm