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-
と入力してタブキーを押すと、オートコンプリートはありません。何か提案はありますか?
Cpanelのようないくつかのソフトウェアは/etc/yum.conf
でphpを無効にします
exclude= php* mysql*
/etc/yum.confファイルに上記の行が含まれている場合は、単純にphp *をその行から削除します。その後、phpをインストールできます:)
質問と出力から、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
であるべきです
私が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 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-devel
はbase
リポジトリから出ています。
このプラグインが問題を引き起こしている場合があります。使用するミラーのキャッシュを削除して、再生成できるようにすることができます。
$ 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