To vše se mnou nefungovalo.
Pomocí CentOS a yum. yum visí bez chybové zprávy, alespoň tak to vypadá. Stiskněte Ctrl +C nefunguje (stisknutím znovu a znovu a znovu ano).
Je třeba zkontrolovat několik věcí:- jsou úložiště v pořádku?- Je síť v pořádku?- Jsou databáze yum a rpm v pořádku?
Takže nejprve začněte s jednoduchými věcmi - vyčistit databáze:
rm -f /var/lib/rpm/__*
rpm --rebuilddb -v -v
yum clean all
Pokud to nefungovalo, můžete nastavit úroveň ladění, úroveň chyb a časový limit pro yum v /etc/yum.conf
:
debuglevel=1
errorlevel=1
timeout=1
Časový limit je standardních 30 sekund. Pokud tedy úložiště nereaguje, chyba se objeví do 30 sekund. Zkuste také použít yum bez pluginů (jako nejrychlejší zrcadlo a priority) s volbou --noplugins
. Nyní, když znovu spustíte yum, by vám mělo rychleji poskytnout více informací. Otestujte pomocí:
yum --verbose --noplugins info
Můžete získat něco takového:
Config time: 0.105
Yum Version: 3.2.22
Setting up Package Sacks
Loading mirror speeds from cached hostfile
* base: mirror.nl.leaseweb.net
* extras: mirror.nl.leaseweb.net
* ius: mirrors.ircam.fr
* rpmforge: mirror.nl.leaseweb.net
* updates: mirror.nl.leaseweb.net link-to-server-repository/repomd.xml: [Errno 4] IOError: urlopen error (97, 'Address family not supported by protocol')
Trying other mirror.
To znamená, že ze serveru nelze přijímat žádné informace. Vyzkoušejte adresu URL, kterou zobrazuje yum (uvedeno výše s odkazem na úložiště serveru) ve vašem webovém prohlížeči. Zkopírujte a vložte jej z vaší yum odpovědi, ne z tohoto příspěvku! Pokud získáte seznam, víte, že úložiště je online.
Pokud se ve vašem prohlížeči zobrazí chyba, zkuste toto úložiště odstranit z /etc/yum.repos.d
. Zkuste načíst seznam na vašem serveru pomocí wget a vložte URL:
wget link-to-server-repository/repomd.xml
Pokud to generuje časový limit, je problém s nastavením brány firewall nebo proxy. Zkuste vypnout firewall.
Pokud používáte csf
(ConfigServer Security and Firewall) a lfd
csf můžete zakázat pomocí:
csf -x
Zkuste yum znovu a pokud to bude fungovat, budete muset znovu nakonfigurovat csf
. Povolit csf
znovu s:
csf -e
A také zkontrolujte nastavení proxy. Můžete také zkusit změnit https na http v souborech .repo na /etc/yum.repos.d/
.
Možná máte problém s DNS. Zkuste se ujistit, že dokážete přeložit záznamy DNS lokálně:
nslookup google.com
Pokud z tohoto příkazu získáte zpět IP, měli byste být v pořádku pro DNS. Poté zkuste odstranit mezipaměť nejrychlejšího zrcadla a znovu spusťte příkaz yum:
rm -f /var/cache/yum/timedhosts.txt
Měl jsem podobný problém. Ukázalo se, že je to stará adresa DNS v resolv.conf
. Změnil jsem IP na správnou a problém vyřešil.