Utilisation des conteneurs dans Easy
L'exécution d'une application dans un conteneur est un mécanisme permettant
de l'isoler du reste du système et assurer une sécurité plus élevée que si
l'application avait été exécutée normalement.
Il existe une autre page Ouèb (pas encore traduite) qui donne un aperçu technique d'EasyOS du point de vue de l'utilisateur, y compris une introduction aux conteneurs dans Easy (CE):br>
Comment easy fonctionne, 2ème partie
... veuillez lire la section qui présente Easy Containers, elle fournit une base pour comprendre ce qui suit.
Cette page est destinée à fournir des notes d'utilisation supplémentaires. Comme décrit dans le lien ci-dessus, les applications utilisées en conteneur apparaissent sur le bureau sous forme d'icônes avec un symbole de cadenas en haut à gauche, exemple :
Cliquez sur l'un d'eux pour exécuter l'application dans un conteneur. Dans le cas
de «www», il lancera le navigateur Ouèb SeaMonkey et son utilisation sera identique à
l'utilisation habituelle de SeaMonkey. Du point de vue de l'utilisateur, vous remarquerez quelques différences,
quoi que :
- Un peu plus lent au démarrage.
- L'ouverture et l'enregistrement des fichiers ne peuvent s'effectuer que dans le conteneur.
- Extensions/modules complémentaires/thèmes ne sont pas partagés avec le système-SeaMonkey.
- Il peut y avoir des problèmes de connexion Internet.
En fait, vous exécutez SeaMonkey dans son propre système d'exploitation privé, fonctionnant comme une «crippled root» (Racine paralisée). Bien qu'un conteneur soit isolé du bureau principal, ce n'est pas parfait. Il y a une interaction, par exemple, pour établir une connexion Internet via la connexion déjà établie dans le bureau principal.
Cette interaction nécessaire signifie également des failles de sécurité potentielles, mais, on essaie de rendre très difficile la rupture d'un conteneur. Alors oui, vous êtes considérablement plus sûr.
Concernant le point 4, il y a parfois des problèmes d'accès au réseau de l'intérieur d'un conteneur, d'autant plus que nous essayons de resserrer les paramètres de sécurité (isolation). En règle générale, la connexion réseau Ethernet est mieux que le wi-fi à cet égard.
Partager des fichiers avec le bureau principal
C'est le point 2 dans la liste ci-dessus, mais du point de vue de
l'intérieur du conteneur. Depuis le bureau principal, vous pouvez voir à l'intérieur de
tous les conteneurs et faire tout ce que vous voulez, y compris
lire et écrire des fichiers.
Peu importe que vous exécutiez une application dans le bureau principal ou dans un conteneur, la plupart des applications par défaut ouvriront|enregistreront|téléchargeront dans /home ou un sous-dossier de /home. Par exemple, SeaMonkey utilise par défaut le téléchargement de fichiers dans /home/téléchargements ou /home/downloads.
Dans le bureau principal, le dossier home se trouve en fait dans la partition de travail et /home est un lien symbolique vers celle-ci. En d'autres termes, /home est un lien vers /mnt/wkg/home .
Cependant, à l'intérieur d'un conteneur, il n'y a aucun accès aux partitions des disques, tout est en mémoire RAM, tout comme /home. Cela pour des raisons de sécurité.
Mais comme par magie, le dossier /home/shared du bureau principal est le même que /home/shared
à l'intérieur du conteneur. Donc, si par exemple, vous téléchargez un fichier lors
de l'utilisation du navigateur Ouèb dans un conteneur, pour le rendre disponible
dans le bureau principal, enregistrez-le tout simplement dans /home/shared.
Et vice versa.
Et comme déjà indiqué, vous pouvez lire et écrire
n'importe où dans un conteneur à partir du bureau principal.
Par exemple, si le conteneur «www»
est en cours d'exécution (SeaMonkey) et que vous pointez le gestionnaire de fichiers sur
/mnt/wkg/containers/www/container, vous pouvez accéder à tout dans le conteneur.
Exécuter des SFS d'autres distributions
À propos de «SFSget» : ce programme de téléchargement et d'installation
des fichiers SFS, se lance d'un clic sur l'icône «sfsget» du bureau
et la chose la plus agréable, c'est de pouvoir utiliser n'importe quel SFS, quelle que soit
la distribution Linux pour laquelle il a été créé.
En principe, les applications sont compilées pour fonctionner sur une distribution et une version bien particulière
de cette distribution et peuvent donc ne pas fonctionner sur d'autres distributions. Cela
pourrait être dû à des versions incorrectes des bibliothèques ou à des dépendances manquantes.
Mais, avec Easy Containers, ce n'est pas un problème.
Au moment où je rédige cette page, la dernière version d’EasyOS est la «Buster» 2.1.3,
qui a commencé avec la version 2.0. Elle est construite avec
les paquets binaires de la distribution Debian Buster 10. Il existe aussi
l'ancienne série EasyOS «Pyro» en version 1.x dont la dernière version est la 1.2.3.
Easy Pyro est construit avec des paquets compilés depuis la source en
utilisant un «fork» d'OpenEmbedded. Pyro est en mode maintenance
et il y a encore des sorties occasionnelles.
Le fait est que Buster et Pyro sont réellement deux distributions différentes
et le même principe devrait s'appliquer, une application compilée pour Pyro devrait
ne pas fonctionner dans Buster. Mais, Easy Containers corrige cela.
Si vous êtes sous Buster et cliquez sur l'icône "sfsget", voici la fenêtre :
... vous pouvez y voir divers fichiers SFS (chemin «easyos/debian/buster»), qui peuvent être téléchargés et vous pouvez choisir de les lancer dans un conteneur ou dans le bureau principal.
Voir l'autre chemin «easyos/oe/pyro», qui contient des fichiers SFS pour Pyro. Si vous cliquez sur ce bouton radio :
... prenez «pingus» par exemple. C'est un jeu, compilé pour fonctionner sur Easy
Pyro. Si vous deviez le télécharger et l'installer, il ne pourrait être lancé que dans un
conteneur, dans un système de fichiers en couches avec easy_1.2.2_amd64.sfs dans la couche tout en bas. Donc, vous êtes réellement sous la distribution complète de Pyro, mais avec la seule application qui s'y trouve.
Mais, si vous sélectionnez «easy_1.2.2_amd64.sfs», comme illustré
dans la capture d'écran ci-dessus et cliquez sur le bouton «Télécharger», il s'installera comme un bureau
complet de Easy Pyro. En d'autres termes, après l'installation, voici ce que vous
verrait sur le bureau :
... oui, vous pouvez exécuter Buster ou Pyro en tant que bureaux complets dans un
conteneur. Si vous cliquez sur «pyro», vous obtenez le bureau familier de sa
séries.
Détail : si vous aviez précédemment installé «Pingus», alors easy_1.2.2_amd64.sfs
aurait déjà été téléchargé et donc la fenêtre SFSget, plus avant, aurait
affiché le bouton «INSTALLER» au lieu de «TÉLÉCHARGER». Vous pourriez alors
procéder à l'installation d'Easy Pyro en tant que bureau dans un conteneur.
Retourner et Supprimer les conteneurs
Cliquez sur l'icône «pyro» pour lancer le bureau dans le conteneur de Easy Pyro.
La combinaison des touches ALT-F6 vous ramènera sur le bureau principal. Et sur le bureau principal,
cliquez sur l'icône «pyro» ou sur l'entrée dans la barre pour retourner dans
le conteneur de Pyro.
Mais comment supprimer un conteneur? Si vous lancez une seule application dans un conteneur,
exemple Pingus, la fermeture de l'application supprimera également le conteneur.
Il existe une autre façon de «supprimer» un conteneur et cette méthode est nécessaire
si vous voulez supprimer le conteneur Pyro. Sur le bureau principal,
faites un clic droit sur l'entrée dans la barre et choisissez «Supprimer» :
Compiler le code source dans un conteneur
La compilation de paquets source dans un conteneur est pratique car elle
n'encombre pas le bureau principal. Il arrive parfois qu'un paquet compilé et installé
entraine un mauvais comportement du bureau principal.
Barry a récemment voulu compiler les derniers pilotes et Xorg pour Easy
Pyro. Pour cela, il a utilisé le conteneur «console» (icône en haut au
centre de l'écran). Il recherchait, avant tout, l'isolement en conservant tous les
pouvoirs de l'administrateur : pour cette raison, il a passé les
paramètres de sécurité du conteneur «console» au «niveau de sécurité 1»,
moins sécure. Ceci a été réalisé avec Gestion des conteneurs : Easy Container (dans
le menu Fichiers) :
... la procédure consiste à choisir «console» dans le cadre «Gestion», puis de
cliquer sur «Un conteneur avec une sécurité minimale absolue» dans la section «Niveau de sécurité»,
puis de cliquer sur le bouton «Actualiser & quitter».
Vous aurez besoin du fichier SFS «devx», qui contient tout le nécessaire pour
compiler : cliquez sur l'icône «sfsget» sur le bureau pour télécharger et installer
dans le conteneur «console».
Au lancement du conteneur, en cliquant sur l'icône «console»
au centre en haut de l'écran, un terminal fonctionnera dans le conteneur, avec le
niveau de sécurité 1.
Notez que cela nécessite les versions Easy Pyro 1.2.7 ou Buster 2.1.7 (ou
ultérieures), car les versions précédentes ont des bogues dans les scripts «easy-containers»
et «sfsget».
Détail d'utilisation pratique : le terminal ne verra que les dossiers
dans le conteneur. De l'extérieur, le chemin d'accès au conteneur est :
/mnt/wkg/containers/console/container,
et le plus important, vous avez un accès complet à partir du bureau principal.
Ainsi, vous pouvez télécharger des paquets source dans le conteneur.
Les étapes de compilation normales sont les suivantes :
# ./configure --help
# ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --build=x86_64-pc-linux-gnu etc
# make
# new2dir make install
# dir2pet name-of-directory
Les paquets seront installés dans le conteneur et les paquets PET peuvent être copiés ailleurs.
plus à venir ...
Tags: utilisateur