Nella maggior parte degli scenari, quando si crea un nuovo sistema, si desidera mantenere l'ingombro dell'installazione il più piccolo possibile. Di conseguenza, non tutti i repository e i pacchetti vengono in genere installati in quel momento. Fortunatamente, i repository possono essere abilitati e disabilitati tramite yum
in qualsiasi momento e ci sono molte fonti diverse tra cui puoi scegliere.
In questo esempio, esamineremo specificamente Fedora, ma il processo è simile in altre distribuzioni che utilizzano yum
.
Si consiglia sempre di utilizzare un conosciuto repository, come Extra Packages for Enterprise Linux (EPEL), che è ospitato su fedoraproject.org. Oppure potresti aver bisogno di una versione specifica di MySQL, che è ospitata su mysql.com. Ci sono anche circostanze in cui potresti dover aggiungere un meno noto repository, come remirepo.net per le versioni di PHP, o persino ospitare il tuo repository.
Una volta determinato quale repository è necessario, esistono diversi modi per installarlo e abilitarlo.
Installa un repository .rpm
Il primo è installare un .rpm
con le informazioni del repository. Il comando seguente installa il repository EPEL per CentOS 8:
# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Imposta solo una sezione di un repository
Nel caso in cui sia necessario un repository specifico, come nel caso di PHP 7.2, devi prima installare il repository e poi disabilitare e abilitare i repository usando yum-config-manager
come segue:
$ sudo yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
$ sudo yum-config-manager --disable remi-php54
$ sudo yum-config-manager --enable remi-php72
Imposta manualmente un repository
L'ultimo metodo per configurare un yum
repository manualmente, dove creiamo un .repo
file all'interno di /etc/yum.repo.d
utilizzando un editor di testo. In questo esempio creeremo il file repository per MySQL 5.7:
$ nano /etc/yum.repo.d/mysql57-community.repo
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
Ora, discutiamo le linee che abbiamo configurato. Le prime tre righe contengono le informazioni minime necessarie durante la creazione di un .repo
file. La prima riga è l'identificatore univoco della sezione ed è racchiusa in []
:
[mysql57-community]
Nota: Puoi avere più di una sezione (repository) in un .repo
file.
La seconda riga nel nostro file è il nome che scegliamo per descrivere il repository:
name=MySQL 5.7 Community Server
La terza riga è la posizione (baseurl
) del repository. In questo caso, stiamo usando HTTP per accedervi:
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
Come accennato, le prime tre righe sono obbligatorie per configurare un repository. Abbiamo anche configurato altre tre opzioni. Nella prima opzione aggiuntiva, abbiamo configurato l'interruttore enabled
, dove 0
è disabilitato e 1
è abilitato:
enabled=1
Nelle ultime due righe, abbiamo configurato le nostre informazioni relative a GPG. La prima di queste righe è l'interruttore per verificare la presenza di GPG e la seconda è la posizione della chiave su cui stai verificando:
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
Per visualizzare un elenco completo delle opzioni del repository, vedere la pagina man come segue:
$ man yum.conf
Ora che hai configurato il tuo nuovo repository utilizzando uno di questi metodi, dovresti verificare che sia configurato correttamente utilizzando yum-config-manager
comando di prima per abilitare e disabilitare le sezioni PHP:
# yum-config-manager mysql57-community
Questo comando restituisce le informazioni complete per il repository:
[root@centos3 yum.repos.d]# yum-config-manager mysql57-community
Loaded plugins: fastestmirror
================================================================================================= repo: mysql57-community ==================================================================================================
[mysql57-community]
async = True
bandwidth = 0
base_persistdir = /var/lib/yum/repos/x86_64/7
baseurl = http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/
cache = 0
cachedir = /var/cache/yum/x86_64/7/mysql57-community
check_config_file_age = True
compare_providers_priority = 80
cost = 1000
deltarpm_metadata_percentage = 100
deltarpm_percentage =
enabled = True
enablegroups = True
exclude =
failovermethod = priority
ftp_disable_epsv = False
gpgcadir = /var/lib/yum/repos/x86_64/7/mysql57-community/gpgcadir
gpgcakey =
gpgcheck = True
gpgdir = /var/lib/yum/repos/x86_64/7/mysql57-community/gpgdir
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
hdrdir = /var/cache/yum/x86_64/7/mysql57-community/headers
http_caching = all
includepkgs =
ip_resolve =
keepalive = True
keepcache = False
mddownloadpolicy = sqlite
mdpolicy = group:small
mediaid =
metadata_expire = 21600
metadata_expire_filter = read-only:present
metalink =
minrate = 0
mirrorlist =
mirrorlist_expire = 86400
name = MySQL 5.7 Community Server
old_base_cache_dir =
password =
persistdir = /var/lib/yum/repos/x86_64/7/mysql57-community
pkgdir = /var/cache/yum/x86_64/7/mysql57-community/packages
proxy = False
proxy_dict =
proxy_password =
proxy_username =
repo_gpgcheck = False
retries = 10
skip_if_unavailable = False
ssl_check_cert_permissions = True
sslcacert =
sslclientcert =
sslclientkey =
sslverify = True
throttle = 0
timeout = 30.0
ui_id = mysql57-community/x86_64
ui_repoid_vars = releasever,
basearch
username =
Con il tuo repository installato, sei pronto per usare yum
per installare i pacchetti che si trovano lì!
[ Vuoi provare Red Hat Enterprise Linux? Scaricalo ora gratuitamente. ]