Maison  >  Article  >  Opération et maintenance  >  qu'est-ce qu'un dépôt Linux

qu'est-ce qu'un dépôt Linux

藏色散人
藏色散人original
2023-03-25 09:08:023503parcourir

Le dépôt Linux fait référence à « dépôt », indiquant l'emplacement du fichier d'installation. En même temps, le dépôt est également le nom de la boîte à outils nécessaire au développement de l'environnement hôte Android dans l'environnement Linux, qui est utilisé pour le contrôle de version ; le fichier repo fait référence à la configuration de la source yum dans le fichier Fedora, généralement un fichier repo définit les détails d'un ou plusieurs référentiels de logiciels.

qu'est-ce qu'un dépôt Linux

L'environnement d'exploitation de ce tutoriel : système linux5.9.8, ordinateur Dell G3.

Qu'est-ce que le repo Linux ?

Dans le système d'exploitation Linux, repo=repository, indiquant l'emplacement du fichier d'installation. En même temps, repo est également le nom de la boîte à outils nécessaire pour développer l'environnement hôte Android dans. l'environnement Linux pour le contrôle de version. REPO est un script écrit par Google utilisant un script python pour appeler Git. Il est principalement utilisé pour télécharger et gérer l'entrepôt logiciel du projet Android.

Explication détaillée du fichier de configuration Linux yum du fichier repo

fichier repo :

Le fichier repo est le fichier de configuration de la source yum (entrepôt de logiciels) dans Fedora. Habituellement, un fichier repo définit les détails d'un ou plusieurs. Entrepôts de logiciels Contenu, par exemple où nous téléchargerons les progiciels qui doivent être installés ou mis à niveau, les paramètres du fichier repo seront lus et appliqués par yum!

Le principe de fonctionnement de YUM n'est pas compliqué. Les dépendances de chaque logiciel RPM seront enregistrées dans l'en-tête du logiciel. Si le contenu de l'en-tête peut être enregistré et analysé, vous pouvez savoir comment chaque logiciel doit être installé avant. il est installé. Quel logiciel de base supplémentaire doit être installé ? C'est-à-dire, utilisez d'abord l'outil d'analyse pour analyser tous les fichiers RPM sur le serveur, puis enregistrez l'analyse. Tant que vous interrogez les fichiers enregistrés lors de l'installation ou de la mise à niveau, vous pouvez connaître tous les logiciels associés. Le flux de travail de base de YUM est donc le suivant :

Côté serveur : tous les progiciels RPM sont stockés sur le serveur, puis les dépendances de chaque fichier RPM sont analysées avec les fonctions pertinentes, et ces données sont enregistrées dans des fichiers et stockées sur le serveur. serveur dans un répertoire spécifique.

Client : si vous devez installer un certain logiciel, téléchargez d'abord le fichier de dépendance enregistré sur le serveur (via WWW ou FTP), analysez les données enregistrées téléchargées sur le serveur, puis obtenez tous les logiciels associés en même temps. et installez-les.

vi /etc/yum.conf
[main]
cachedir=/var/cache/yum
#cachedir:yum缓存的目录,yum在此存储下载的rpm包和数据库,一般是/var/cache/yum。
debuglevel=2
#debuglevel:除错级别,0──10,默认是2 貌似只记录安装和删除记录
logfile=/var/log/yum.log
pkgpolicy=newest

#pkgpolicy : Politique pour les colis. Il existe deux options, la plus récente et la dernière. Cette fonction est si vous configurez plusieurs référentiels et que le même logiciel existe dans différents référentiels en même temps, lequel yum doit installer s'il est le plus récent, yum installera la dernière version. . Si c'est le dernier, yum triera les ID de serveur par ordre alphabétique et sélectionnera le dernier pour installer le logiciel sur le serveur. Choisissez généralement le plus récent.

distoverpkg=centos-release

#Spécifiez un package logiciel, et yum déterminera votre version en fonction de ce package. La valeur par défaut est redhat-release, ou il peut s'agir de n'importe quel package RPM installé pour votre propre version.

tolerant=1

#tolerent, il existe également deux options, 1 et 0, indiquant si yum tolère les erreurs liées aux packages sur la ligne de commande. Par exemple, vous souhaitez installer trois packages 1, 2 et 3, et. 3 d'entre eux ont déjà été installés, si vous le définissez sur 1, miam ne provoquera pas de message d'erreur. La valeur par défaut est 0.

exactarch=1
#exactarch,有两个选项1和0,代表是否只升级和你安装软件包cpu体系一致的包,如果设为1,则如你安装了一个i386的rpm,则yum不会用1686的包来升级。
retries=20
#retries,网络连接发生错误后的重试次数,如果设为0,则会无限重试。
obsoletes=1
gpgcheck=1
#gpgchkeck= 有1和0两个选择,分别代表是否是否进行gpg校验,如果没有这一项,默认是检查的。
reposdir=/etc/yy.rm #默认是 /etc/yum.repos.d/ 低下的 xx.repo后缀文件

#Il sera inclus par défaut. C'est-à-dire /etc/yum.repos.d/xx.repo, peu importe le nombre de fichiers de configuration et le nombre de [nom] dans chacun, ils le seront tous. être intégré dans un à la fin. Le [nom] répété écrasera le précédent

exclude=xxx

#exclude pour exclure certains logiciels de la liste de mise à niveau. Vous pouvez utiliser des caractères génériques. Chaque élément de la liste doit être séparé par des espaces. pour ceux qui ont installé des packages d'embellissement et des correctifs chinois, les amis sont particulièrement utiles.

keepcache=[1 or 0]

# En définissant keepcache=1, yum conserve les en-têtes et les packages mis en cache après avoir installé avec succès le package. La valeur par défaut est keepcache=0 et n'enregistre pas

reposdir=[包含 .repo 文件的目录的绝对路径]

# Cette option permet à l'utilisateur de spécifier le chemin absolu du fichier .repo. Le fichier .repo contient des informations sur le référentiel de logiciels (identiques à la section [repository] du fichier /etc/yum.conf).

Partie 2 :

vi /etc/yum.repo.d/xx.repo

En fait, ce champ peut également être configuré directement dans yum.conf

[serverid]

#Le serverid est utilisé pour distinguer différents référentiels et doit avoir un nom unique. À plusieurs reprises, le devant recouvre le dos - ou l'inverse ? ? ? Les tests avec activé couvrent le recto et le verso

name=Some name for this server

#name, qui est une description du référentiel et prend en charge des variables telles que $releasever $basearch name=Fedora Core $releasever - $basearch - Released Updates

baseurl=url://path/to/repository/

#baseurl est dans le paramètres du serveur La partie la plus importante, vous ne pouvez obtenir le logiciel que s'il est correctement configuré. Son format est :

baseurl=url://server1/path/to/repository/
url://server2/path/to/repository/
url://server3/path/to/repository/

#L'url supporte trois protocoles : http:// ftp:// file://. Le baseurl peut être suivi de plusieurs URL. Vous pouvez le modifier vous-même pour un site miroir plus rapide, mais il ne peut y avoir qu'un seul baseurl, ce qui signifie qu'il ne peut pas être au format suivant :

baseurl=url://server1/path/to/repository/
baseurl=url://server2/path/to/repository/
baseurl=url://server3/path/to/repository/

Le répertoire pointé par l'url doit être. le répertoire d'en-tête du référentiel. Un niveau supérieur, il prend également en charge des variables telles que $releasever $basearch.

#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch

#La ligne ci-dessus spécifie la liste d'adresses d'un serveur miroir, qui est généralement activé. Dans cet exemple, un symbole de commentaire est ajouté pour le désactiver. Nous pouvons essayer de remplacer $releasever et $basearch par leurs versions et architectures correspondantes. Par exemple, 10 et i386, lorsqu'ils sont ouverts dans le navigateur, nous pouvons voir une longue liste d'adresses de serveurs miroir disponibles pour la mise en miroir.

Vous pouvez ajouter plusieurs options après l'URL, telles que gpgcheck, exclure, méthode de basculement, etc., telles que :

gpgcheck=1

exclude=gaim

#La signification de gpgcheck et d'exclusion est la même que celle de [ main], mais uniquement pour Ce serveur fonctionne,

failovermethod=priority

#failovermethode a deux options, roundrobin et priorité, ce qui signifie que l'ordre de sélection yum lorsqu'il y a plusieurs URL parmi lesquelles choisir est une sélection aléatoire. Si la connexion échoue, utilisez le suivant, en boucle dans l'ordre, la priorité commence à partir du premier selon l'ordre de l'URL. S’il n’est pas spécifié, la valeur par défaut est roundrobin.

enabled=[1 or 0]

#Lorsqu'un référentiel de logiciels est configuré comme activé=0, yum n'utilisera pas le référentiel comme source de package lors de l'installation ou de la mise à niveau des packages logiciels. Grâce à cette option, le référentiel de logiciels peut être activé ou désactivé.

#Vous pouvez également facilement activer et désactiver les référentiels de logiciels spécifiés via les options --enablerepo=[repo_name] et --disablerepo=[repo_name] de yum, ou via l'outil "Ajouter/Supprimer un logiciel" de PackageKit

Plusieurs La variable

$ releasever, la version finale, est obtenue à partir de distroverpkg dans la section [main]. Sinon, elle est jugée en fonction du package redhat-release.

$arch, système de processeur, tel que i686, athlon, etc.

$basearch, le groupe système de base de processeur, tel que i686 et athlon appartiennent tous deux à i386, alpha et alphaev6 appartiennent tous deux à alpha.

Après avoir configuré yum.conf, nous pouvons pleinement profiter de la commodité apportée par yum.

Il reste une chose à faire. Il s'agit d'importer la clé GPG de chaque référentiel. Comme mentionné précédemment, yum peut utiliser gpg pour vérifier le package afin de garantir l'intégrité du package téléchargé. Nous devons donc d'abord nous rendre sur chaque site de référentiel pour trouver la clé gpg, qui est. généralement placé en évidence sur la page d'accueil, certains fichiers en texte brut portant des noms tels que RPM-GPG-KEY.txt, téléchargez-les, puis utilisez la commande rpm --import xxx.txt pour les importer. GPG-KEY fourni avec la distribution. rpm --import /usr/share/doc/redhat-release-*/RPM-GPG-KEY est utilisé pour les mises à niveau logicielles officielles.

Apprentissage recommandé : "Tutoriel vidéo linux"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn