OSTree: page de manuel ostree
OSTree est un outil pour gérer plusieurs arborescences de système de fichiers versionné amorçable, ou simplement “arborescence” pour faire court. Dans le modèle OSTree, les systèmes d'exploitation ne vivent plus dans le répertoire racine “/” physique. Au lieu de cela, ils installent en parallèle dans le nouveau répertoire toplevel/ostree. Chaque système installé obtient son propre répertoire /ostree/deploy/stateroot
. (stateroot est le nouveau terme pour osname).
Contrairement à rpm ou dpkg, OSTree ne connaît que les arborescences complètes du système de fichiers. Il n'a aucune connaissance intégrée des composants utilisés pour créer l'arborescence du système de fichiers.
Il est possible d'utiliser OSTree dans plusieurs modes; la forme la plus élémentaire consiste à répliquer des arbres prédéfinis à partir d'un serveur de génération. Habituellement, ces arbres pré-construits sont dérivés de packages. Vous pouvez également utiliser OSTree sous un outil de niveau supérieur qui calcule les arborescences de systèmes de fichiers localement.
Il faut souligner que OSTree ne prend en charge que les arbres en lecture seule. Pour passer à une autre arborescence (mise à niveau, rétrogradation, installation du logiciel), une nouvelle arborescence est extraite et une fusion à 3 voies de la configuration est effectuée. L'arbre en cours d'exécution n'est jamais modifié; la nouvelle arborescence deviendra active lors d'un redémarrage du système.
Les options suivantes sont comprises:
--repo | Pour la plupart des commandes, un référentiel est requis. S'il n'est pas spécifié, le répertoire actuel est utilisé s'il semble être un référentiel OSTree. Si ce n'est pas le cas, la variable d'environnement OSTREE_REPO est utilisée ou le référentiel système situé dans /sysroot/ostree/repo . |
-v, --verbose | Produire une sortie de niveau de débogage. |
--version | Affiche les informations de version, y compris les fonctionnalités activées au moment de la compilation, et quitte. |
Commandes
ostree-admin
Utilise l'une des commandes d'administration ostree :
cleanup
config-diff
deploy
init-fs
instutil
os-init
pin
set-origin
status
switch
undeploy
unlock
upgrade
Options |
--help, -h | Aide à l'utilisation |
--sysroot="PATH" | Crée un nouveau sysroot OSTree à PATH |
--print-current-dir | Affiche le chemin complet vers le répertoire de déploiement pour le déploiement actuellement actif dans le sysroot spécifié à standard out. Ceci est incompatible avec la spécification d'une sous-commande. |
ostree-admin-cleanup
Synopsis | ostree-admin-cleanup - Supprime les déploiements non marqués et les objets de référentiel |
Usage | ostree admin cleanup |
Description | OSTree sysroot nettoie les autres bootversions et les anciens déploiements. Si/quand une extraction ou un déploiement est interrompu, un état partiellement écrit peut rester sur le disque. Cette commande nettoie ces états partiels. |
Exemple
ostree-admin-config-diff
Synopsis | ostree-admin-config-diff - Configuration actuelle / etc de la différence par rapport à la valeur par défaut |
Usage | ostree admin config-diff [Options …] |
Description | Affiche les différences entre le répertoire /etc actuel et la configuration par défaut dans /usr/etc . Les fichiers nouvellement ajoutés (présents dans /etc mais pas dans /usr/etc ) seront préfixés par 'A'. Les fichiers modifiés seront préfixés avec «M» et les fichiers supprimés avec «D». |
Options |
--os="STATEROOT" | Utiliser un stateroot de système d'exploitation différent de celui actuel. |
Exemple
$ ostree admin config-diff
M shadow
A example.txt
ostree-admin-deploy
Synopsis | ostree-admin-deploy - Extraire une révision comme nouveau déploiement par défaut |
Usage | admin ostree deploy [Options …] {REFSPEC} |
Description | Prend un commit ou une révision REFSPEC et met en file d'attente le nouveau déploiement par défaut au redémarrage. |
Options |
--os="STATEROOT" | Utiliser une racine de système d'exploitation différente de celle actuelle. |
--origin-file="FILENAME" | Utiliser FILENAME comme origine, où OSTree recherchera les versions mises à jour de l'arborescence. |
--retain | Ne pas supprimer le déploiement précédent. |
--retain-pending | Ne pas supprimer les déploiements en attente. |
--retain-rollback | Ne pas supprimer les déploiements de restauration. |
--not-as-default | Ajouter plutôt que de préfixer un nouveau déploiement. |
--karg-proc-cmdline | Importer le courant /proc/cmdline. |
--karg = "NAME = VALUE" | Définir l'argument du noyau, comme root=/dev/sda1; cela remplace tout argument antérieur portant le même nom. |
--karg-append="NAME=VALUE" | Ajouter l'argument du noyau; utile avec par exemple console= qui peut être utilisé plusieurs fois. |
Exemple
$ ostree admin status
* gnome-ostree 67e382b11d213a402a5313e61cbc69dfd5ab93cb07.0
origin refspec: gnome-ostree/buildmaster/x86_64-runtime
gnome-ostree ce19c41036cc45e49b0cecf6b157523c2105c4de1ce3.0
origin refspec: gnome-ostree/buildmaster/x86_64-runtime
$ ostree admin deploy gnome-ostree/buildmaster/x86_64-runtime
ostadmin: Creating deployment /ostree/deploy/gnome-ostree/deploy/7e382b11d213a402a5313e61cbc69dfd5ab93cb07.1
ostadmin: Processing /etc: 3 modified, 0 removed, 29 added
Transaction complete: bootconfig swap: no deployment count change: 0)
$ ostree admin status
gnome-ostree 67e382b11d213a402a5313e61cbc69dfd5ab93cb07.1
origin refspec: gnome-ostree/buildmaster/x86_64-runtime
* gnome-ostree 67e382b11d213a402a5313e61cbc69dfd5ab93cb07.0
origin refspec: gnome-ostree/buildmaster/x86_64-runtime
ostree-admin-init-fs
Synopsis | ostree-admin-init-fs - Initialise un nouveau système de fichiers racine |
Usage | ostree admin init-fs [OPTIONS …] {CHEMIN} |
Description | Initialisez un système de fichiers racine physique vide dans le CHEMIN désigné, avec des niveaux supérieurs normaux et des autorisations correctes pour chaque répertoire. Principalement utile pour le fonctionnement |
Exemple
$ mkdir /example
$ ostree admin init-fs /example
$ ls /example
ostree-admin-instutil
Synopsis | ostree-admin-instutil - Fonctions utilitaires destinées principalement aux programmes d'installation du système d'exploitation |
Usage | ostree admin instutil {SUBCOMMAND} [ARGS] |
Description | Utilise les sous-commandes pour basculer les utilitaires d'installation d'administration pour les stratégies selinux et les arguments du noyau. |
Sous-commandes
Assure que tous les fichiers et répertoires sont étiquetés conformément à la politique SELinux du premier déploiement.
Remplace les arguments du noyau du déploiement par défaut. Les nouveaux arguments sont basés sur une liste vide (par défaut), les options actuelles --merge
ou les arguments du noyau chargé --import-proc-cmdline
, et de nouvelles options sont ajoutées à la fin --append="NAME=VALUE"
ou remplace les arguments existants du même nom --replace="NAME=VALUE"
.
ostree-admin-os-init
Synopsis | ostree-admin-os-init - Initialise un état vide pour un système d'exploitation donné |
Usage | admin ostree os-init {STATEROOT} |
Description | Initialise un nouveau stateroot (AKA “osname”) pour un système d'exploitation. Garantit que les sous-répertoires principaux de /var (/tmp, /lib, /run et /lock) existent et initialisent le STATEROOT donné en tant que stateroot OSTree. Chaque emplacement de déploiement est composé d'une seule var partagée et d'un ensemble de déploiements (chroots). |
Exemple
$ ostree admin os-init exampleos
ostree/deploy/exampleos initialized as OSTree root
ostree-admin-pin
Synopsis | ostree-admin-pin - Conserve explicitement le déploiement à un index donné |
Usage | ostree admin pin {INDEX} |
Description | Assure que le déploiement à INDEX, ne sera pas récupéré par défaut. C'est ce qu'on appelle «épingler». Si l'option -u est fournie, annule une opération d'épinglage. |
Options |
--unpin, -u | Annule une opération d'épinglage. |
ostree-admin-set-origin
Synopsis | ostree-admin-set-origin - Modifie l'“origine” (emplacement des mises à niveau) |
Usage | ostree admin set-origin {REMOTENAME} {URL} [BRANCH] |
Description | Ajoute un nouveau remote nommée REMOTENAME (si il n'existe pas déjà). Modifie ensuite le fichier d'origine pour le déploiement actuel. Il s'agit de la ref qui sera “suivie” et mise à niveau avec la mise à niveau d'administration ostree. |
Options |
--set=KEY=VALUE | Définit une option pour le remote. |
--index = INDEX | Modifie l'origine du déploiement numéroté INDEX (à partir de 0). |
Exemple
$ ostree admin set-origin exampleos http://os.example.com/repo exampleos/10.0/master/router
ostree-admin-status
Synopsis | ostree-admin-status - Liste des déploiements |
Usage | ostree admin status |
Description | Répertorie les déploiements disponibles pour démarrer. Inclut osname, la somme de contrôle suivie par la série de déploiement et la spécification de référence. Un astérisque indique le déploiement démarré en cours. |
Exemple
$ ostree admin status
* gnome-ostree 67e382b11d213a402a5313e61cbc69dfd5ab93cb07.0
origin refspec: gnome-ostree/buildmaster/x86_64-runtime
gnome-ostree ce19c41036cc45e49b0cecf6b157523c2105c4de1c.0
origin refspec: gnome-ostree/buildmaster/x86_64-runtime
ostree-admin-switch
Synopsis | ostree-admin-switch - Construit une nouvelle arborescence à partir de l'origine actuelle et la déploie, si elle a changé |
Usage | ostree admin switch {REF}{REF} |
Description | Choisi une autre référence pour le remote actuelle à suivre. Il s'agit de la ref qui sera “suivie” et mise à niveau avec la mise à niveau d'administration ostree. Comme pour une mise à niveau, l'état du système d'exploitation sera conservé. |
Options |
--os="STATEROOT" | Utiliser une racine de système d'exploitation différente de celle actuelle. |
Exemple
$ ostree admin switch fedostree/20/workstation/gnome/core
ostree-admin-undeploy
Synopsis | ostree-admin-undeploy - Supprime le déploiement à un index donné |
Usage | ostree admin undeploy {INDEX} |
Description | Supprime le déploiement chez INDEX. INDEX doit être à portée et ne pas référencer le déploiement actuellement démarré. |
Exemple
$ ostree admin status
* gnome-ostree 67e382b11d213a402a5313e61cbc69dfd5ab93cb07.0
origin refspec: gnome-ostree/buildmaster/x86_64-runtime
gnome-ostree ce19c41036cc45e49b0cecf6b157523c2105c4de1c.0
origin refspec: gnome-ostree/buildmaster/x86_64-runtime
$ ostree admin undeploy 1
Transaction complete; bootconfig swap: no deployment count change: -1)
Freed objects: 326.5 kB
Deleted deployment ce19c41036cc45e49b0cecf6b157523c2105c4de1c.0
$ ostree admin status
* gnome-ostree 67e382b11d213a402a5313e61cbc69dfd5ab93cb07.0
origin refspec: gnome-ostree/buildmaster/x86_64-runtime
ostree-admin-unlock
Synopsis | ostree-admin-unlock - Préparez le déploiement actuel pour le correctif ou le développement |
Usage | ostree admin unlock [Options…] |
Description | Supprime le montage de liaison en lecture seule sur /usr et le remplace par un système de fichiers de superposition inscriptible. Cette invocation par défaut de “unlock” est destinée à des fins de développement/test. Toutes les modifications de la superposition sont perdues au redémarrage. Cependant, cette commande prend également en charge les «correctifs», voir ci-dessous. |
Options |
--hotfix | Si cette option est fournie, le déploiement actuel sera cloné en tant que cible de restauration. Cette option est destinée à des choses comme les mises à jour de sécurité d'urgence des composants de l'espace utilisateur tels que sshd. La sémantique diffère ici du mode de déverrouillage par défaut “développement” en ce que les redémarrages conserveront toutes les modifications (ce que vous voudrez probablement pour les correctifs de sécurité). |
ostree-admin-upgrade
Synopsis | ostree-admin-upgrade - Construire une nouvelle arborescence à partir de l'origine actuelle et la déployer, si elle a changé |
Usage | ostree admin upgrade [Options…] |
Description | Télécharge la dernière version de la référence actuelle depuis le serveur de build et la déploie, si elle a changé. Redémarrez la machine pour que les modifications prennent effet. Ces phases peuvent être divisées via –pull-only et –deploy-only. |
Options |
--os="STATEROOT" | Utilise une racine de système d'exploitation différente de celle actuelle. |
--pull-only | Effectue uniquement une extraction dans le référentiel; ne crée pas de déploiement. Cette option peut donc être utilisée en toute sécurité dans un travail planifié en arrière-plan avec l'assurance de ne pas changer l'état du système |
--deploy-only | Crée un nouveau déploiement à partir de la dernière validation dans la spécification d'origine suivie. Cette option est destinée à être utilisée par un système planifié qui a détecté des modifications via --pull-only et est prêt à les déployer. |
--reboot, -r | Redémarre après une mise à niveau réussie. |
--allow-downgrade | Permettre le déploiement d'arbres chronologiquement plus anciens. |
--override-commit="CHECKSUM" | Déploit CHECKSUM au lieu de la dernière arborescence. |
Exemple
$ ostree admin upgrade
No update available.
Autres commandes
ostree-cat
Synopsis | ostree-cat - Affiche ou concatène le contenu des fichiers |
Usage | ostree cat {COMMIT} {PATH…} |
Description | Cette commande fonctionne un peu comme la commande typique “cat” d'Unix, en ce sens qu'elle affiche le contenu d'un fichier ou les concatène en fonction de deux fichiers ou plus. Cependant, cette commande nécessite que l'utilisateur spécifie un commit - une somme de contrôle ou refspec correspondant à une construction donnée. Si on utilise qu'une spécification de ref , OSTree fera référence à la validation la plus récente, sauf si on spécifie une génération parent à l'aide du carat (^ ) à la fin de la spécification de ref. Il exécutera ensuite la commande dans ce commit donné. |
Exemple
$ ostree cat my-branch helloworld.txt
Bonjour le monde!
ostree-checkout
Synopsis | ostree-checkout - Récupère un commit dans un système de fichiers |
Usage | ostree checkout [Options…] {COMMIT} [DESTINATION] |
Description | Extrait le commit donné dans le système de fichiers sous le répertoire DESTINATION. Si DESTINATION n'est pas spécifié, le COMMIT deviendra la cible de paiement de destination. Si la destination COMMIT existe déjà, la commande affichera une erreur sauf si l'option –union est sélectionnée. |
Options |
--user-mode, -u | Ne change pas la propriété du fichier et n'initialise pas les attributs étendus. |
--subpath="PATH" | Sous-répertoire d'extraction PATH. |
--union | Garde les répertoires existants et les fichiers inchangés, écrasez les fichiers existants. |
--union-add | Conserve les répertoires et fichiers existants. |
--union-identical | Comme –union, mais erreur en cas de remplacement d'un fichier par un autre. Ajoute de nouveaux fichiers et répertoires, ignore les fichiers identiques et conservez les répertoires existants. Nécessite -H. |
--allow-noent | Ne fait rien si le chemin spécifié n’existe pas. |
--from-stdin | Traite plusieurs extractions à partir de l'entrée standard. |
--from-file="FILE" | Traite plusieurs extractions à partir du fichier d'entrée. |
Exemple
$ ostree checkout my-branch
$ ls
file1 file2 my-branch
ostree-checksum
Synopsis | ostree-checksum - Somme de contrôle d'un fichier ou d'un répertoire |
Usage | ostree checksum {PATH} |
Description | Génère une somme de contrôle pour un fichier ou un répertoire donné. |
Options |
--ignore-xattrs | Ignore les attributs étendus lors de la somme de contrôle. |
Exemple
$ ostree checksum file1
67e382b11d213a402a5313e61cbc69dfd5ab93cb07fbb8b71c2e84f79fa5d7dc
ostree-commit
Synopsis | ostree-commit - Valide une nouvelle révision |
Usage | ostree commit [Options…] –branch= {BRANCH} [PATH] |
Description | Cela vous permet de valider des modifications dans une branche. La spécification de la branche est obligatoire. La commande affichera la somme de contrôle d'une validation réussie. |
Options |
--subject, -s="SUBJECT" | Sujet d'une ligne. (optionnel) |
--body, -m="BODY" | Description complète. (optionnel) |
--editor, -e | Ouvre un éditeur de texte pour la description de la validation. Il utilisera OSTREE_EDITOR, VISUAL, EDITOR ou vi, par ordre décroissant de préférence. La validation sera abandonnée si le message est laissé vide. |
--branch, -b="BRANCHE" | Branche. Obligatoire, sauf si –orphan est indiqué. |
--tree="dir=PATH" ou "tar=TARFILE" ou "ref=COMMIT" | Superpose l'argument donné sous forme d'arbre. Lors de la validation d'une archive, le TARFILE peut être spécifié comme - pour lire l'archive à partir de l'entrée standard. |
--add-metadata-string="KEY=VALUE" | Ajoute une paire clé/valeur aux métadonnées. |
--add-detached-metadata-string="KEY=VALUE" | Ajoute une paire clé/valeur aux métadonnées détachées. |
--owner-uid="UID" | Définit l'ID utilisateur de la propriété du fichier. |
--owner-gid="GID" | Définit l'ID du groupe de propriétaires de fichiers. |
--no-xattrs | N'importe pas les attributs étendus. |
--link-checkout-speedup | Optimise pour les validations d'arbres composés de liens physiques dans le référentiel. |
--tar-autocreate-parents | Lors du chargement des archives tar, crée automatiquement les répertoires parents selon vos besoins. |
--saut-si-inchangé | Si le contenu est inchangé par rapport à la validation précédente, ne fait rien. |
--consume | Lors de la validation à partir d'un répertoire local (c'est-à-dire pas d'une archive ou --tree= ref ), assume la propriété du contenu. Cela peut simplement impliquer sa suppression, mais si possible, le contenu peut simplement être renommé () dans le référentiel plutôt que de créer une nouvelle copie. |
--statoverride="CHEMIN" | Fichier contenant la liste des modifications à apporter aux autorisations (mode fichier, suivi de l'espace, suivi du chemin du fichier). |
--skip-list="CHEMIN" | Fichier contenant la liste des chemins de fichier à ignorer (un chemin par ligne). |
--table-output | Génére plus d'informations au format KEY: VALUE. |
--generate-sizes | Génére des informations de taille avec des métadonnées de validation. |
--gpg-sign="ID-CLÉ" | Identifiant de clé GPG avec lequel signer la validation (si GPGME - GNU Privacy Guard Made Easy). |
--gpg-homedir="HOMEDIR" | Répertoire d'accueil GPG à utiliser lors de la recherche de trousseaux de clés (si vous disposez de GPGME - GNU Privacy Guard Made Easy). |
--timestamp="TIMESTAMP" | Remplace l'horodatage de la validation de TIMESTAMP. |
--orphan | Créer un commit sans écrire dans une référence (branche) |
--fsync="POLICY" | POLICY est un booléen qui spécifie si fsync doit être utilisé ou non. Par défaut à vrai. |
Exemple
$ ostree commit --branch=my-branch --subject="Initial commit"
67e382b11d213a402a5313e61cbc69dfd5ab93cb07fbb8b71c2e84f79fa5d7dc
ostree-config
Synopsis | ostree-config - Modifier les paramètres de configuration |
Usage | |
Description | * ostree config get affiche la valeur de KEYNAME dans le groupe GROUPNAME
* ostree config set définit la valeur de KEYNAME dans le groupe GROUPNAME sur VALUE.
* ostree config unset supprime la clé KEYNAME du groupe GROUPNAME afin que OSTree utilise la valeur par défaut pour cela. Ce n'est pas une erreur pour que le GROUPNAME ou le KEYNAME spécifiés n'existent pas. |
Exemple
$ ostree config get core.mode
bare
$ ostree config set --group='remote "myremote"' url http://example.com/repo
$ ostree config unset core.lock-timeout-secs
ostree-create-usb
Synopsis | ostree-create-usb - Place les références données sur un disque externe pour la distribution P2P. |
Usage | ostree create-usb [Options…] {MOUNT-PATH} {COLLECTION-ID REF} [COLLECTION-ID REF…] |
Description | Cette commande crée un référentiel dans MOUNT-PATH et y tire les REF données afin qu'elles puissent être trouvées et extraites (peut-être par un autre ordinateur hors ligne). Voir ostree-find-remotes pour plus d'informations sur la distribution P2P.
Pour qu'ostree puisse extraire les références d'un système de fichiers monté (tel qu'une clé USB), le dépôt doit se trouver dans un emplacement standard. Plus précisément, les sous-répertoires de .ostree/repos.d sont vérifiés, puis .ostree/repo , ostree/repo et var/lib/flatpak/repo sont vérifiés. Par défaut, ostree create-usb utilise .ostree/repo, mais si on spécifie un autre emplacement à l'aide de –destination-repo, un lien symbolique sera créé dans .ostree/repos.d .
Cette commande régénérera le fichier récapitulatif dans le référentiel de destination afin qu'il reste précis, vous ne devez donc pas essayer d'utiliser des signatures récapitulatives dans le référentiel de destination. Cela ne devrait pas être un problème car les clients qui prennent en charge l'extraction à partir de supports USB utilisent des métadonnées signées par repo et par validation au lieu de signatures de résumé. |
Options |
--disable-fsync | N'appele pas fsync(). |
--destination-repo=DEST | Crée le référentiel dans DEST sous MOUNT-PATH, plutôt que l'emplacement par défaut. |
--commit=COMMIT | Tire COMMIT au lieu de ce sur quoi REF pointe. Cela ne peut être utilisé que si une seule référence est spécifiée. |
Exemple
ostree --repo=/var/lib/flatpak/repo create-usb /run/media/mwleeds/f6d04c7a-60f6-4ba3-bb96-0f40498675be com.exampleos.Apps app/org.kde.Khangman/x86_64/stable com.exampleos.Apps ostree-metadata com.exampleos.Apps appstream/x86_64
5 metadata, 213 content objects imported; 1 KiB transferred in 1 seconds Copied 3/3 refs successfully from ‘/var/lib/flatpak/repo’ to ‘.ostree/repo’ repository in ‘/run/media/mwleeds/f6d04c7a-60f6-4ba3-bb96-0f40498675be’.
ostree-find-remotes
Synopsis | ostree-find-remotes - Trouver des remote pour servir les ref données |
Usage | ostree find-remotes [Options…] {COLLECTION-ID} {REF} [COLLECTION-ID REF…] |
Description | OSTree a la capacité d'effectuer des tirages non seulement à partir de serveurs distants configurés mais également à partir d'ordinateurs pairs sur le LAN et à partir de systèmes de fichiers montés tels que des lecteurs USB. Cette fonctionnalité nécessite l'utilisation d'ID de collection et la vérification GPG.
La commande find-remotes recherche les remotes qui prétendent fournir une ou plusieurs des paires REF COLLECTION-ID données et imprime des informations à leur sujet, avec des télécommandes triées par latence (Mounts> LAN> Internet). Par défaut, OSTree recherche les remotes dans les fichiers de configuration, sur les systèmes de fichiers montés (dans un emplacement bien connu) et sur le réseau local à l'aide d'Avahi. La recherche de remotes LAN nécessite que OSTree ait été compilé avec le support Avahi, et il nécessite un démon Avahi pour être exécuté. On peut remplacer l'ensemble de finders par défaut (sources pour remotes) en utilisant l'option –finders documentée ci-dessous.
La commande create-usb est le moyen recommandé de placer des ref sur un périphérique USB de telle sorte que find-remotes les découvre. Voir ostree-create-usb . |
Options |
--disable-fsync | N'appele pas fsync(). |
--finders=FINDERS | Utilise la liste de sélecteurs séparée par des virgules spécifiée plutôt que l'ensemble par défaut. Valeurs possibles: config, lan et mount (ou toute combinaison de celles-ci). |
--pull | Tire le commit le plus récent trouvé pour chaque référence. |
Exemple
$ ostree find-remotes --finders=mount,lan com.exampleos.Os exampleos/x86_64/standard
Result 0: http://10.0.64.202:43381/0
- Finder: OstreeRepoFinderAvahi
- Keyring: exampleos.trustedkeys.gpg
- Priority: 60
- Summary last modified: 2018-01-12T19:00:28Z
- Refs:
- (com.exampleos.Os, exampleos/x86_64/standard) = c91acd964b3fda561b87bfb7f7c80e36220d76b567f0ce90c0e60742ef33c360
1/1 refs were found.
ostree-diff
Synopsis | ostree-diff - Compare un répertoire avec une révision |
Usage | ostree diff [Options…] {REV} {TARGETDIR} |
Description | Compare le répertoire TARGETDIR avec la révision REV. Affiche les fichiers et répertoires modifiés, ajoutés et supprimés. S'il y a un fichier dans TARGETDIR pas dans REV, il s'affichera avec un A pour “ajouté”. Si un fichier dans REV n'est pas dans TARGETDIR, il affiche D pour “supprimé”. M pour “modifié” s'affichera également. |
Options |
--Stats | Affiche diverses statistiques. |
--fs-diff | Affiche le système de fichiers diff. |
--owner-uid | Utilise l'ID utilisateur de propriété de fichier pour les fichiers locaux. |
--owner-gid | Utilise l'ID du groupe de propriétaires de fichiers pour les fichiers locaux. |
Exemple
$ ostree diff my-branch^ my-branch
A /testdirectory
M /helloworld.txt
$ ostree diff my-branch my-branch^
D /testdirectory
M /helloworld.txt
ostree-export
Synopsis | ostree-export - Génère une archive tar à partir d'une validation OSTree |
Usage | ostree export [OPTIONS…] {BRANCH} |
Description | Cette commande génère une archive au format GNU tar à partir d'une validation OSTree. Ceci est utile pour des cas tels que les sauvegardes, la conversion des validations OSTree en images Docker, etc. |
Exemple
$ ostree export exampleos/x86_64/standard | gzip > exampleos-standard.tar.gz
ostree-gpg-sign
Synopsis | ostree-gpg-sign - Signer un commit |
Usage | ostree gpg-sign [Options…] {COMMIT} {KEY-ID…} |
Description | Ajoute une nouvelle signature à un commit pour chaque clé GPG spécifiée. Actuellement, cela ajoutera une nouvelle signature même si le commit est déjà signé avec une clé donnée. |
Options |
--delete | Supprime les signatures ayant l'un des ID de clé GPG. |
--gpg-homedir="HOMEDIR" | GPG Homedir à utiliser lors de la recherche de porte-clés. |
ostree-init
Synopsis | ostree-init - Initialise un nouveau référentiel vide |
Usage | ostree init [Options…] |
Description | Crée un nouveau référentiel vide. |
Options |
--mode="MODE" | Initialiser le référentiel en mode donné (bare, bare-user, bare-user-only, archive). La valeur par défaut est bare. Le mode bare stocke les fichiers tels qu'ils sont, de sorte qu'ils peuvent être directement liés en dur, bare-user utilise des attributs étendus pour stocker la propriété et les informations xattr, permettant des opérations non root, bare-user-only ne stocke pas les informations de propriété et archive les magasins fichiers compressés, à diffuser sur le réseau, archive, le fichier de configuration du référentiel sera en fait archive-z2, car il s'agit du nom historique. |
--collection-id=ID-COLLECTION | Définit l'ID de collection du référentiel. Les télécommandes des clones de ce référentiel doivent configurer la même valeur afin d'extraire les références provenant de ce référentiel sur un poste à poste. Cet ID de collection doit être persistant et globalement unique. Il est formaté comme un nom DNS inversé (comme une interface D-Bus). Il doit être défini sur un domaine DNS inversé sous votre contrôle. Cette option peut être omise (par défaut) pour laisser la distribution d'égal à égal non prise en charge pour le référentiel. Un ID de collection peut être ajouté à un référentiel existant à l'avenir pour permettre la distribution d'égal à égal à partir de ce point. Si l'ID de collection est modifié pour le référentiel à l'avenir, la distribution d'égal à égal des références du référentiel sera interrompue pour tous les homologues qui ne mettent pas à jour leur configuration distante vers le nouvel ID de collection. |
ostree-ls
Synopsis | ostree-ls - Liste les chemins d'accès aux fichiers |
Usage | ostree ls [Options…] {COMMIT} [CHEMINS…] |
Description | Imprime une liste de chemins de fichiers dans le commit donné, et dans le ou les chemins donnés si spécifié. La première lettre de la sortie de la ligne de fichier spécifie le type: “-” pour le fichier normal, “d” pour le répertoire, “l” pour le lien symbolique. Voir la section Exemple pour plus de détails sur la sortie spécifique. |
Options |
--dironly, -d | Ne rentre pas dans les arguments du répertoire. |
--recursif, -R | Affiche les répertoires récursivement. |
--checksum, -C | Affiche la somme de contrôle. |
--xattrs, -X | Affiche les attributs étendus. |
--nul-filenames-only | Affiche uniquement les noms de fichiers, séparés par NUL. |
Exemple
$ ostree ls my-branch
d00644 0 0 0 /
-00644 0 0 2 /helloworld.txt
d00755 0 0 0 /testdirectory
Ici, la première colonne est le symbole de type de fichier (comme expliqué dans la section Description) suivi du type de fichier S_IFMT. Les deux colonnes suivantes (ici: 0 0) sont respectivement l'ID utilisateur et l'ID groupe pour le fichier. Après la pause, le nombre suivant représente la taille standard de ce fichier. La dernière colonne est le chemin du fichier.
ostree-pull
Synopsis | ostree-pull - Télécharger des données à partir d'un référentiel distant |
Usage | ostree pull {REMOTE} [BRANCH] |
Description | Cette commande peut récupérer uniquement une validation spécifique, ou aller jusqu'à effectuer un miroir complet du référentiel distant. Si aucun BRANCH n'est spécifié, toutes les branches configurées sont récupérées.
Une syntaxe spéciale dans le caractère @ permet de spécifier un commit spécifique à récupérer à partir d'une branche. Les cas d'utilisation pour cela sont quelque peu similaires à l'extraction d'une balise git spécifique; on pourrait par exemple script une mise à niveau du système vers une version connue, plutôt que la dernière du fournisseur de contenu. |
Options |
--commit-metadata-only | Récupére uniquement les métadonnées de validation. |
--disable-fsync | N'appele pas fsync(). |
--localcache-repo | Comme le clone de git, réutilise le dépôt OSTree fourni en tant que cache d'objets local lorsqu'on effectue des récupérations HTTP. Peut être spécifié plusieurs fois. |
--untrusted | Ne fait pas confiance aux sources locales, ne vérifie pas les sommes de contrôle et ne crée pas de lien dur vers la source. |
--disable-static-deltas | N'utilise pas de deltas statiques. |
--mirror | Écrit des références adaptées à un miroir, c'est-à-dire que les références sont stockées dans le répertoire heads/ plutôt que dans le répertoire remotes/ . Cela rend le référentiel cible apte à être exporté pour que d'autres clients puissent l'utiliser comme un remote ostree. Si aucune référence spécifique n'est spécifiée, toutes les ref seront récupérées (le remote doit avoir un fichier récapitulatif présent). |
--subpath=SUBPATH | Tire uniquement sur le sous-chemin fourni. |
--depth=DEPTH | Traverse les parents DEPTH (-1=infini) (par défaut: 0). |
--network-retries=N | Spécifie combien de fois chaque téléchargement doit être retenté en cas d'erreur (par défaut: 5) |
Exemple
ostree --repo=repo pull --depth=-1 --mirror remote_name
Effectue un miroir complet de la télécommande. (Ceci est probablement plus utile si le référentiel est également en mode archive)
$ ostree --repo=repo pull remote_name exampleos/x86_64/standard
Récupére le commit le plus récent dans exampleos/x86_64/standard
.
$ ostree --repo=repo pull remote_name exampleos/x86_64/standard@98ea6e4f216f2fb4b69fff9b3a44842c38686ca685f3f55dc48c5d3fb1107be4
Télécharge le commit spécifique commençant par 98ea6e comme s'il s'agissait du dernier commit pour exampleos/x86_64/standard
.
ostree-pull-local
Synopsis | ostree-pull-local - Copie des données d'un référentiel source |
Usage | ostree pull-local [Options …] {SOURCE_REPO} [REFS …] |
Description | Copie les données d'un référentiel donné; optimisé pour les copies uniquement entre les référentiels sur le même système. |
Options |
--remote="REMOTE" | Ajoute REMOTE à refspec. |
--disable-fsync | N'appele pas fsync(). |
--untrusted | Ne fait pas confiance à la source, ne vérifie pas les sommes de contrôle et ne lie pas en dur la source |
Exemple
$ ostree pull-local /ostree/repo
Enumerating objects...
pull: 25709/25709 scanned, 0 objects copied
Writing 5 refs
ostree-remote
Synopsis | ostree-remote - Contrôle la configuration du référentiel distant |
Usage | ostree remote add [OPTIONS…] {NAME} {URL} [BRANCH…]
ostree remote delete {NAME}
ostree remote show-url {NAME}
ostree remote list [OPTIONS…] {NAME}
ostree remote gpg-import [OPTIONS…] {NAME} [KEY-ID…]
ostree remote refs {NAME}
ostree remote summary [OPTIONS…] {NAME}
ostree remote add-cookie {NAME} {DOMAIN} {PATH} {COOKIE_NAME} {VALUE}
ostree remote delete-cookie {NAME} {DOMAIN} {PATH} {COOKIE_NAME} {VALUE}
ostree remote list-cookies {NAME} |
Description | Modifie les configurations du référentiel distant. Le NOM fait référence au nom du remote.
Les arguments BRANCH de la sous-commande add spécifient les branches configurées pour la télécommande. Voir la section branches dans ostree.repo-config pour plus d'informations.
La sous-commande gpg-import peut associer des clés GPG à un référentiel distant spécifique à utiliser lors de l'extraction de validations signées de ce référentiel (si la vérification GPG est activée).
Les clés GPG à importer peuvent être au format OpenPGP binaire ou blindées ASCII. La liste [KEY-ID] facultative peut restreindre les clés importées à partir d'un fichier de clés ou d'un flux d'entrée. Toutes les clés sont importées si cette liste est omise. Si aucune option --keyring ni --stdin n'est indiquée, les clés sont importées à partir du trousseau GPG personnel de l'utilisateur.
Les différentes commandes liées aux cookies permettent de gérer un fichier cookie spécifique à distance. |
Options d'ajout |
--set="KEY=VALUE" | Définit l'option de configuration KEY=VALUE pour le remote. |
--if-not-exists | Ne fait rien si le remote existe. |
--force | Remplace le remote si il existe. |
--no-gpg-verify | Désactive la vérification GPG. |
--gpg-import=FICHIER | Importe une ou plusieurs clés GPG à partir d'un fichier. Equivalent à ostree remote gpg-import --keyring=FILE . |
--collection-id=ID-COLLECTION | Définit l'ID de collecte pour le remote sur une valeur fournie par le propriétaire du référentiel, ce qui permet aux références de ce remote d'être partagées d'égal à égal. |
Options de liste |
-u, --show-urls | Afficher les URL distantes dans la liste |
Options d'importation Gpg |
-k, --keyring=FICHIER | Importe une ou plusieurs clés à partir d'un fichier. Cette option peut être répétée pour importer à partir de plusieurs fichiers, mais ne peut pas être utilisée en combinaison avec --stdin . |
--stdin | Importe une ou plusieurs clés depuis l'entrée standard. Cette option ne peut pas être utilisée en combinaison avec --keyring . |
Options de résumé |
--raw | Affiche les données brutes des variantes |
Exemple
$ ostree remote show-url local
http://192.168.122.1/repo
ostree-reset
Synopsis | ostree-reset - Réinitialise une référence à un commit précédent |
Usage | ostree reset {REF} {REF_TO_RESET_TO} |
Description | Étant donné un commit, cette commande réinitialisera la référence à un commit spécifié précédent. |
Exemple
$ ostree log my-branch
commit 67e382b11d213a402a5313e61cbc69dfd5ab93cb07
Date: 2014-06-12 13:42:54 +0000
This is the second commit
commit ce19c41036cc45e49b0cecf6b157523c2105c4de1c
Date: 2014-06-12 11:20:08 +0000
Initial commit
$ ostree reset my-branch my-branch^
$ ostree log my-branch
commit ce19c41036cc45e49b0cecf6b157523c2105c4de1c
Date: 2014-06-12 11:20:08 +0000
Initial commit
ostree-rev-parse
Synopsis | ostree-rev-parse - Affiche la cible d'un tour |
Usage | ostree rev-parse {REV} {PATH} |
Description | Étant donné un REV, génère la somme de contrôle de la dernière validation de cette révision. |
Exemple
$ ostree rev-parse ma-branche
ce19c41036cc45e49b0cecf6b157523c2105c4de1ce30101def1f759daafcc3e
ostree-show
Synopsis | ostree-show - affiche les métadonnées d'un objet |
Usage | ostree show [Options …] {OBJET} |
Description | Étant donné un objet, affiche les métadonnées de cet objet. Pour une révision particulière, il affichera les données de la validation la plus récente de cette révision. |
Options |
--print-related | Affiche les validations “liées”. |
--print-variant-type="TYPE" | Mappe la mémoire OBJECT (dans ce cas un nom de fichier) à la chaîne de type GVariant. |
--print-metadata-key="KEY" | Affiche la valeur de chaîne de la clé de métadonnées. |
--print-détaché-metadata-key="KEY" | Affiche la valeur de chaîne de la clé de métadonnées détachée. |
--raw | Affiche les données de variantes brutes. |
--gpg-homedir="HOMEDIR" | Répertoire d'accueil GPG à utiliser lors de la recherche de trousseaux de clés. |
Exemple
$ ostree show my-branch
commit 67e382b11d213a402a5313e61cbc69dfd5ab93cb07
Date: 2014-06-12 13:42:54 +0000
ostree-trivial-httpd
Synopsis | ostree-trivial-httpd - Serveur Web simple |
Usage | ostree trivial-httpd [Options ...] [DIR] |
Description | Cela exécute un simple serveur Web et le fait fonctionner jusqu'à ce qu'il soit tué. Si DIR n'est pas spécifié, il revient par défaut au répertoire courant. |
options |
--daemonize, -d | Forq en arrière-plan lorsque prêt. |
--autoexit | Quitter automatiquement lorsque le répertoire est supprimé. |
--port-file, -p="PATH" | Écrire le numéro de port dans PATH (- pour la sortie standard). |
--port, -P | Utiliser le port TCP spécifié pour écouter. |
--force-range-requests | Forcer les demandes de plage en ne desservant que la moitié des fichiers. |
Exemple
rofiles-fuse
Synopsis | rofiles-fuse - Utilise FUSE pour créer une vue où les répertoires sont accessibles en écriture, les fichiers sont immuables |
Usage | rofiles-fuse SRCDIR MNTPOINT |
Description | La création d'une extraction à partir d'un référentiel OSTree utilise par défaut des liens matériels, ce qui signifie qu'une muodification de n'importe quel fichier corrompt le référentiel et toutes les extractions. Cela peut être problématique si l'on ne souhaite exécuter effectuer ces modifications que dans une extraction. Par exemple, RPM% post scripts ou équivalent.
Dans le cas où l'on souhaite créer une validation d'arborescence dérivée d'un autre contenu, l'utilisation de rofiles-fuse de concert avec ostree commit –link-checkout-speedup (ou l'API sous-jacente) peut garantir que seuls les nouveaux fichiers sont additionnés. |
Exemple
mettre à jour un commit Ostree
# Initialiser un branch-checkout et le monter
$ ostree --repo=repo checkout somebranch branch-checkout
$ mkdir mnt
$ rofiles-fuse branch-checkout mnt
# Désormais, les modifications arbitraires de mnt/ sont reflétées dans le branch-checkout
$ echo somenewcontent > mnt/anewfile
$ mkdir mnt/anewdir
$ rm mnt/someoriginalcontent -rf
# Valider et nettoyer
$ fusermount -u mnt
$ ostree --repo=repo commit --link-checkout-speedup -b somebranch -s 'Commit new content' --tree=dir=branch-checkout
$ rm mnt branch-checkout -rf