Debian

Utilisation d'archives de la package Debian comme outil de configuration

Utilisation d'archives de la package Debian comme outil de configuration

Introduction

À quelle fréquence avez-vous besoin d'installer votre distribution Linux préférée en une seule année soit pratiquement, soit en utilisant du matériel réel? . À quelle fréquence avez-vous besoin de déployer un serveur qui est un clone complet de celui que vous avez configuré hier. La partie d'installation de tout système Linux aujourd'hui est un processus très simple. Néanmoins, la partie la plus difficile et la plus fastidieuse est livrée avec un réglage fin, une personnalisation et une configuration des services de votre système ainsi que de votre propre environnement utilisateur. Vous pouvez simplement copier vos fichiers de configuration du système personnalisés d'un système à un autre, mais vous engager dans ce concept, cette tâche peut devenir assez désorganisée, longue et surtout sujette aux erreurs.

Dans cet article, nous allons adopter une approche différente qui implique une création d'une archive de package Debian contenant tous les fichiers d'utilisateur et de configuration personnalisés requis. La première partie de cet article décrit un moyen assez simple sur la façon de créer une archive de package Debian contenant tous les fichiers personnalisés suivis par son installation. Dans la deuxième partie, nous examinerons la façon de créer notre propre référentiel Debian très basique et l'utiliserons pour déployer un site Web simple, y compris l'installation et la configuration d'Apache Webserver sur un système Linux fraîchement installé.

Partie 1

Dans cette section, nous créons et installons un package Debian simple. Le package s'adaptera à des exemples de données utilisateur pour servir d'exemple.

Créer un package Debian

Il vous a fallu un certain temps pour configurer votre bureau pour l'avoir de la façon dont il convient le mieux à vos besoins et à votre commodité. Dans votre environnement personnalisé, vous pouvez par exemple inclure des scripts bash, créer plusieurs alias en utilisant .Fichier Bashrc ou comportement par défaut modifié d'un éditeur de texte VIM en modifiant .fichier vimrc. De plus, vous pouvez également avoir personnalisé de nombreux fichiers de configuration système tels que / etc / réseau / interfaces, etc. Tout ce travail acharné peut être enregistré dans un package Debian et installé et supprimé de tout système avec une seule commande DPKG. En première étape, nous devons créer un squelette minimum nu pour un package Debian. Il s'agit d'une tâche assez simple car elle n'implique qu'un seul fichier Debian / Control. Alors commençons par créer un répertoire nommé «Myenv». Ce répertoire contiendra toutes les données pour notre propre version 1.0 Package Debian.

$ mkdir myenv 

Dans l'étape suivante, nous devons créer un fichier de contrôle:

$ cd myenv $ mkdir debian $ vi debian / contrôle 

Utilisez VI ou tout autre éditeur de texte et placez une information de contrôle des packages suivante dans le fichier Debian / Control:

Package: Myenv Version: 1.0 Section: Priorité personnalisée: Architecture facultative: Tout essentiel: pas de taille installée: 1024 HEnteller: LinuxConfig.Description de l'organisation: mes paramètres et environnement Linux 

Toutes les options de fichiers de contrôle sont à ce stade plutôt explicites. Notre prochaine tâche consiste à inclure tous les fichiers que nous souhaitons stocker dans le package. Tous les fichiers doivent être stockés dans un répertoire Myenv et doivent contenir un chemin complet. Cela signifie que si nous souhaitons inclure / etc / réseau / interfaces, nous devons:

$ pwd / home / lilo / myenv $ mkdir -p etc / réseau $ cp / etc / réseau / interfaces etc / réseau 

Pour inclure nos propres scripts / fichiers, nous devons suivre la même règle de chemin complète. C'est ainsi que nous pouvons ajouter notre coutume .Fichier Bashrc Si un chemin complet vers notre répertoire personnel est / Home / Lilo /:

$ pwd / home / lilo / myenv $ mkdir -p home / lilo $ cp / home / lilo /.Bashrc Home / Lilo / 

Si nous souhaitons inclure le répertoire entier / home / lilo, nous pourrions:

$ pwd / home / lilo / myenv $ mkdir home $ cp -vr / home / lilo / home / 

De cette façon, nous pouvons inclure autant de répertoires ou de fichiers que nous le voyons. Une fois que nous aurons terminé cette partie de préparation, nous pouvons construire un package Debian. Accédez au répertoire parent d'un Myenv:

$ cd… / 

et exécutez une commande Linux suivante pour créer un package Debian:

$ dpkg-deb --build myenv dpkg-deb: package de construction 'myenv' dans 'myenv.deb '. 

Si tout s'est bien passé, vous devriez avoir un package Debian appelé Myenv.Deb est assis dans votre répertoire de travail actuel.

Installation du package Debian

L'installation de notre nouveau package Debian est assez simple. Est devenu root ou utilisez Sudo pour exécuter une commande Linux suivante:

# dpkg -i myenv.deb 

Tous les fichiers avec un package Debian avaient été copiés dans des emplacements pertinents. Terminé. Si vous souhaitez supprimer tous les fichiers de votre système Utilisez -P pour Purge:

# dpkg -p myenv 

Partie 2

Dans cette section, nous créerons un package Debian personnalisé à utiliser pour installer et configurer le serveur Apache. Nous utiliserons la même technique que celle décrite dans la partie 1. Cependant, cette fois, notre paquet rapportera toutes les conditions préalables et le pack.

Construire un forfait Debian

Ensuite, nous créerons un package appelé MyWebsite.deb. Ce package contiendra un simple index «mon site Web».fichier html. Les étapes sont exactement les mêmes que celles décrites précédemment avec un ajout que notre fichier Debian / Control contiendra désormais une ligne supplémentaire «dépend:» pour demander au système de récupérer toutes les conditions préalables à l'installation du package. Qui dans ce cas est apache2. Si vous souhaitez inclure plus de dépendances, assurez-vous de les séparer par «,». Créons un répertoire de base appelé «mywebsite»:

$ cd $ mkdir mywebsite 

Créez maintenant un fichier de contrôle dans un répertoire Debian:

$ cd mywebsite $ mkdir debian $ vi debian / contrôle 

et inclure une information suivante dans un fichier de contrôle:

Package: MyWebsite Version: 1.0 Section: Priorité personnalisée: Architecture facultative: Tout essentiel: Non dépend: APACHE2 Installé-taille: 1024 mainteller: LinuxConfig.Description de l'organisation: mon exemple de site Web 

Notez que le contenu d'un fichier de contrôle est le même est qu'il était dans l'exemple précédent avec un petit changement, et c'est une nouvelle ligne «dépend: Apache2» avait été incluse, ce qui signifie que lors de l'installation du package, un serveur Web Apache sera également installé dans le cadre des paramètres du package. Ensuite, nous insérons un index.Fichier HTML:

$ pwd / home / lilo / mywebsite $ mkdir -p var / www / mywebsite $ echo "mon site"> var / www / mywebsite / index.html 

De plus, nous pouvons inclure un fichier de configuration Apache personnalisé où un répertoire racine de notre site Web sera / var / www.Mon site internet . Nous pourrions utiliser le fichier de configuration par défaut, mais nous l'incluons quand même pour démontrer cette possibilité.

$ mkdir -p / etc / apache2 / sites-disponible / $ vi etc / apache2 / sites-disponible / mywebsite 

Le fichier mywebsite peut contenir des paramètres suivants:

 DocumentRoot / var / www / mywebsite options suit Suivre Autorride  

Maintenant, nous pouvons créer un package:

$ cd… $ dpkg-deb --construction mywebsite dpkg-deb: le package de construction «mywebsite» dans «mywebsite.deb '. 

Configuration d'un référentiel de packages Debian simple

L'exigence d'un référentiel Debian est un serveur Web. Nous supposons donc ici que nous avons déjà une certaine forme d'un serveur Web exécutant sur notre système, c'est une configuration locale ou distante. Si le répertoire racine de votre serveur Web est / var / www, créez un nouveau répertoire de packages avec une commande Linux suivante:

# mkdir / var / www / packages 

Copiez votre tout nouveau package dans ce nouveau répertoire et créez un index:

NOTE: Vous devez placer votre nouveau package dans / var / www / package avant d'exécuter des commandes Linux suivantes.

# cd / var / www # dpkg-scanpackages packages / dev / null | gzip -9c> packages / packages.GZ DPKG-SCANPACKAGES: AVERTISSEMENT: Packages dans Archive mais manquant dans le fichier de remplacement: DPKG-ScanPackages: AVERTISSE 

Tout est fait. Nous avons maintenant notre propre référentiel de Debian local opérationnel.

Installation du package

Si tout s'est bien passé, nous devrions pouvoir installer mon package MyWebsite avec une commande simple apt-get. Cependant, nous devons d'abord inclure notre référentiel Debian dans / etc / apt / sources.Liste du fichier de notre système cible (local ou distant). Si l'adresse IP de notre référentiel Debian est de 10.1.1.60 alors une commande Linux suivante fera le travail:

# echo "Deb http: // 10.1.1.60 packages / ">> / etc / apt / sources.Liste # mise à jour apt-get 

Maintenant, nous sommes prêts à installer mon package MyWebsite:

# apt-get install mywebsite 

La commande ci-dessus installera le serveur Web Apache2, créera un fichier de configuration MyWebsite dans / etc / apatache2 / sites disponible et déploie notre index simple.Site Web HTML dans / VAW / www / mywebsite. Comme nous pouvons le voir, toutes les configurations avaient été effectuées automatiquement. Tout ce dont nous avons besoin à ce stade est de simplement naviguer dans un navigateur Web pour: http: // localhost / mywebsite:

Conclusion

Cet article répertorie des exemples simples de ce qui peut être réalisé avec les archives de package DEB. Il démontre clairement une flexibilité de cette méthode pour installer, configurer ou déployer pratiquement n'importe quoi. J'ai vu plusieurs sites Web avec une configuration de divers systèmes de bureau parfaits A Perfect. Peut-être que l'intégralité de l'article peut être remplacé par quelques lignes sur la façon d'inclure un référentiel Deb dans / etc / apt / sources.Liste et comment exécuter une commande d'installation apt-get. J'utilise personnellement cette approche pour la création d'une clé USB en direct où au lieu d'épeler le nombre de répertoires et de fichiers que je souhaite inclure dans ma clé USB en direct, je pointe simplement en direct. Il est clair que les possibilités sont infinies et c'est la beauté de Linux OS.

étape de chargement de la bouffée 1.5 Erreur Top 10
étape de chargement de la bouffée 1.5 Erreur 15 Le message d'erreur n'indique pas nécessairement que vous avez détruit un MBR (enregistrement de démar...
Format de disque dur avancé Linux WD
Introduction De nos jours, les fabricants de disques durs passent à une nouvelle technologie de disque dur qui utilise la taille des secteurs de 4KB a...
Trouver tous les fichiers avec l'autorisation d'écriture activée
Utilisez la ligne de commande Linux pour localiser tous les fichiers avec les autorisations d'écriture activées...