GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Snap vs APT :quelle est la différence ?

Présentation

Comparé aux autres systèmes d'exploitation traditionnels, Linux adopte une approche différente de la gestion des logiciels. Les logiciels sous Linux sont traditionnellement organisés en référentiels. Les référentiels contiennent des applications et toutes les dépendances nécessaires pour les exécuter.

Bien que l'utilisation de référentiels soit pratique pour de nombreuses raisons, elle présente souvent un obstacle pour les utilisateurs qui ne maîtrisent pas la technologie. Plusieurs systèmes de packaging alternatifs ont été créés au cours des deux dernières années pour rendre l'expérience Linux plus conviviale.

Dans cet article de comparaison, vous découvrirez les différences entre le système de packaging Snap et le gestionnaire de packages APT.

Qu'est-ce que Snap ?

Snap est un package logiciel et un système de déploiement qui utilise des packages autonomes appelés snaps pour fournir des logiciels aux utilisateurs. Les snaps regroupent toutes les dépendances dont un programme a besoin dans un seul package. De cette manière, l'application est indépendante du système, ce qui signifie qu'elle peut s'exécuter de manière native sur n'importe quelle distribution Linux prenant en charge Snap.

Alors qu'APT obtient principalement des packages à partir des référentiels officiels d'une distribution, Snap permet aux développeurs de fournir leurs applications directement aux utilisateurs via le Snap Store. Les développeurs peuvent également publier des snaps directement sur leurs sites Web.

L'outil de gestion des snaps s'appelle snapd . C'est un démon qui permet à un système d'exécuter des packages instantanés. Les utilisateurs interagissent avec snapd en utilisant le snap client.

Vous trouverez ci-dessous un exemple d'installation de Thunderbird utilisant le snap commande :

Qu'est-ce qu'APT ?

APT (Advanced Package Tool) est un gestionnaire de packages logiciels permettant d'installer et de supprimer des packages sur des systèmes basés sur Debian. APT automatise le processus de récupération, de configuration, de mise à niveau, d'installation et de suppression de packages. APT est une interface du système de gestion de paquets de base de Debian dpkg .

L'un des principaux avantages d'APT est la façon dont il gère les dépendances logicielles. Lorsqu'un utilisateur émet une commande pour installer un package, APT recherche dans les référentiels les dépendances du package et installe celles qui n'ont pas encore été installées sur le système.

L'outil qu'APT utilise principalement pour s'interfacer avec les utilisateurs est apt . L'utilitaire offre les apt-get et apt-cache les plus populaires commandes, considérées comme moins conviviales.

La capture d'écran montre l'installation de Thunderbird en utilisant apt :

Snap Vs. APT :Différences

Avant d'entrer dans les détails concernant les différences entre Snap et APT, il est nécessaire de comprendre les niveaux auxquels nous pouvons les comparer.

Le tableau ci-dessous explique la terminologie et fournit les principaux points de comparaison :

Cliquer APT
Type de colis .snap .deb
Nom de l'outil snapd APT
Outil CLI snap apt
Formater Archives SquashFS ar archive
Disponible en Magasin Snap dépôts Debian
Taille de l'installation Plus grand Plus petit
Dépendances Contenu dans l'emballage Partagé
Mises à jour Automatique Manuel
Confinement de sécurité Confiné Confinement limité
Installations multiples Possibilité Impossible
Installations de plusieurs versions Possibilité Impossible

Format du paquet

Cliquer utilise .snap fichiers, disponibles en téléchargement dans le Snap Store ou sur le site Web de leur développeur. Le .snap contient une application, ses dépendances et les métadonnées dans un système de fichiers compressé SquashFS.

Les applications Snap sont conteneurisées, de la même manière que Docker emballe ses conteneurs. Cependant, contrairement aux conteneurs Docker, les applications instantanées ont un accès limité au système hôte, principalement pour stocker les fichiers de configuration et utiliser les E/S du système.

APT utilise .deb fichiers à partir de référentiels de logiciels en ligne pour chaque distribution Linux qui les prend en charge. Un .deb Le fichier est une archive Unix, qui comprend deux archives tar. Une archive contient les informations de contrôle, tandis que l'autre contient les fichiers utilisés pour l'installation du package.

Taille du colis

Snaps sont autonomes, ce qui se traduit par un .snap relativement important dossier. Lorsqu'un utilisateur installe un composant logiciel enfichable, le fichier est décompressé et monté en tant que périphérique de bouclage en lecture seule dans le répertoire d'accueil.

Une application installée via APT est plus petit que son homologue snap car il n'a pas besoin de regrouper les dépendances de packages.

Dépendances

Cliquer regroupe les dépendances de package à l'intérieur du package. Bien que cette approche affecte négativement la taille du package, le principal avantage est que les utilisateurs disposent toujours de la version prise en charge et testée du package.

APT utilise une approche de dépendances partagées. Lorsqu'un utilisateur émet une apt install commande, APT lit la liste des dépendances, vérifie si le système a déjà installé certains des packages et installe les manquants. Cette technique maintient une faible empreinte mémoire.

Facilité d'utilisation

La différence dans la facilité d'utilisation pour les utilisateurs finaux n'est pas significative. Cliquer les applications sont universelles et plus pratiques à gérer pour les développeurs, et la publication d'une mise à jour est un processus simple consistant à modifier un seul package.

D'autre part, APT vérifie les référentiels pour trouver des mises à jour. Lorsqu'une mise à jour est prête, le système de référentiel nécessite une version distincte pour chaque distribution (Ubuntu, Linux Mint, Pop! OS, etc.) et chaque version de distribution (Ubuntu 18.04, Ubuntu 20.04, etc.). Cette méthode est chronophage et entraîne parfois des retards pour certaines distributions.

Vitesse

Cliquer a des temps de démarrage plus longs que APT puisque l'OS décompresse les snaps à la première utilisation pour économiser de l'espace disque. Cependant, les snaps ne sont plus lents qu'au premier démarrage - la différence diminue ou disparaît complètement au deuxième démarrage.

Mises à jour

Le Snap le processus de mise à jour est automatique. Les utilisateurs ne peuvent pas empêcher la mise à jour d'une application instantanée, ils ne font que retarder le processus. Les développeurs Snap ne sont pas limités quant au moment où ils peuvent publier une mise à jour.

APT accorde un contrôle total à l'utilisateur sur le processus de mise à jour. Cependant, lorsqu'une distribution coupe une version, elle gèle généralement les debs et ne les met pas à jour pendant toute la durée de la version. Par conséquent, Snap est la meilleure solution pour les utilisateurs qui préfèrent les versions les plus récentes de l'application.

Intégration graphique

Snaps sont conçus pour être universels. En tant que tels, ils ne s'intègrent pas parfaitement aux interfaces graphiques des différentes distributions.

Il y a eu récemment des développements dans la communauté Snap concernant l'intégration de thèmes. Il comprend l'introduction d'un service d'arrière-plan qui surveille les changements de thème et propose aux utilisateurs d'ajuster leur application pour se conformer au thème du système d'exploitation. Cependant, il s'agit d'un travail en cours et les snaps ne s'intègrent toujours pas complètement dans le système d'exploitation hôte.

De l'autre côté, .deb fichiers utilisés par APT sont spécifiques à la distribution et à la version, ce qui permet de fournir l'expérience Linux par défaut en termes d'intégration de thème.

Sécurité

Snaps prennent en charge la validation des signatures et, compte tenu de leur nature confinée, sont considérées comme une solution sécurisée pour le déploiement d'applications. Cependant, étant donné que l'éditeur fournit l'application directement à l'utilisateur, celui-ci doit faire confiance à l'éditeur. Aucune révision externe n'est effectuée.

De l'autre côté, chaque distribution Linux passe en revue les debs inclus dans son référentiel. Donc, APT les utilisateurs peuvent être sûrs que l'application provient d'une source fiable. Cela ne s'applique pas aux référentiels tiers ou aux debs disponibles sur les sites Web des éditeurs.

Snap Vs. APT :Lequel choisir ?

Choisissez Snap si :

  • Vous ne voulez pas que des packages inutiles soient intégrés à votre système. Avec les Snaps, les packages restent confinés dans le .snap paquet.
  • Vous voulez vous assurer que vous disposez de la version la plus récente de l'application. Mises à jour instantanées automatiquement et en continu, sans gel des fonctionnalités pour des distributions spécifiques.
  • Vous souhaitez isoler une application.

Choisissez APT si :

  • Vous préférez que les applications soient examinées par la distribution que vous utilisez.
  • Vous êtes soucieux de conserver votre espace de stockage. Les applications installées par APT partagent leurs dépendances.
  • Vous voulez que les applications s'intègrent correctement dans l'environnement de l'interface graphique.

Ubuntu
  1. Ubuntu Server vs Desktop :Quelle est la différence ?

  2. La Différence Entre [[ $a ==Z* ]] Et [ $a ==Z* ] ?

  3. Quelle est la différence entre les méthodes Tasksel et normales ?

  4. La différence entre Lubuntu et Lxde ?

  5. Hébergement cloud vs hébergement VPS :quelle est la différence ?

VPN vs VDI :Quelle est la différence ?

Basculement Vs. Restauration :quelle est la différence ?

Quelle est la différence entre la commande apt et apt-get ?

Saveurs Ubuntu :quelle est la différence ?

La Fonction De La Liste Des Périphériques De Boucle ??

Quelle est la différence entre une console, un terminal et un shell ?