From: Ludovic Strappazon Date: Thu, 6 Apr 2006 12:26:21 +0000 (+0000) Subject: Mise a jour de posgresql.tex X-Git-Tag: Release-2.0.0~976 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=a20ef9b90bfbc3262bf38b40b6084473d963eb1e;p=bacula%2Fdocs Mise a jour de posgresql.tex --- diff --git a/docs/manual-fr/images.tex b/docs/manual-fr/images.tex index 4a8d4a7d..325c70c2 100644 --- a/docs/manual-fr/images.tex +++ b/docs/manual-fr/images.tex @@ -153,152 +153,152 @@ % !!! IMAGES START HERE !!! {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap27331}% +\lthtmlpictureA{tex2html_wrap27673}% \includegraphics{./bacula-logo.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap27338}% +\lthtmlpictureA{tex2html_wrap27680}% \includegraphics{./bacula-applications.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap27340}% +\lthtmlpictureA{tex2html_wrap27682}% \includegraphics{./bacula-objects.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap27346}% +\lthtmlpictureA{tex2html_wrap27688}% \includegraphics{./flow.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap27547}% +\lthtmlpictureA{tex2html_wrap27890}% \includegraphics{./Bacula-tray-monitor.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap27675}% +\lthtmlpictureA{tex2html_wrap28025}% \includegraphics{./Conf-Diagram.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlfigureA{center27712}% +\lthtmlfigureA{center28062}% \begin{center}\vbox{\input{autochangerres} }\end{center}% \lthtmlfigureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28164}% +\lthtmlpictureA{tex2html_wrap28514}% \includegraphics{./win32-nsis.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28165}% +\lthtmlpictureA{tex2html_wrap28515}% \includegraphics{./win32-welcome.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28166}% +\lthtmlpictureA{tex2html_wrap28516}% \includegraphics{./win32-pkg.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28167}% +\lthtmlpictureA{tex2html_wrap28517}% \includegraphics{./win32-location.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28168}% +\lthtmlpictureA{tex2html_wrap28518}% \includegraphics{./win32-service.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28169}% +\lthtmlpictureA{tex2html_wrap28519}% \includegraphics{./win32-service-ok.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28170}% +\lthtmlpictureA{tex2html_wrap28520}% \includegraphics{./win32-start.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28171}% +\lthtmlpictureA{tex2html_wrap28521}% \includegraphics{./win32-finish.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28172}% +\lthtmlpictureA{tex2html_wrap28522}% \includegraphics{./idle.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28173}% +\lthtmlpictureA{tex2html_wrap28523}% \includegraphics{./tray-icon.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28174}% +\lthtmlpictureA{tex2html_wrap28524}% \includegraphics{./menu.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28175}% +\lthtmlpictureA{tex2html_wrap28525}% \includegraphics{./running.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28176}% +\lthtmlpictureA{tex2html_wrap28526}% \includegraphics{./error.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28257}% +\lthtmlpictureA{tex2html_wrap28607}% \includegraphics{./access-is-denied.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28258}% +\lthtmlpictureA{tex2html_wrap28608}% \includegraphics{./view-only.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28259}% +\lthtmlpictureA{tex2html_wrap28609}% \includegraphics{./properties-security.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28260}% +\lthtmlpictureA{tex2html_wrap28610}% \includegraphics{./properties-security-advanced-owner.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} {\newpage\clearpage -\lthtmlpictureA{tex2html_wrap28261}% +\lthtmlpictureA{tex2html_wrap28611}% \includegraphics{./confirm.eps}% \lthtmlpictureZ \lthtmlcheckvsize\clearpage} diff --git a/docs/manual-fr/install.tex b/docs/manual-fr/install.tex index 803bd001..3d158dbe 100644 --- a/docs/manual-fr/install.tex +++ b/docs/manual-fr/install.tex @@ -108,11 +108,11 @@ pourrait \^etre d\'esastreux. La proc\'edure normale de mise \`a jour est simple Pour plus d'informations sur les mises \`a jour, veuillez consulter la partie \ilink{Upgrading Bacula Versions}{upgrading} du chapitre Astuces de ce manuel -\subsection*{Paquettage de D\'ependences} +\subsection*{Paquetage de D\'ependences} \label{Dependency} -\index[general]{Paquettage de D\'ependences} -\index[general]{Paquettage!D\'ependences} -\addcontentsline{toc}{subsection}{Paquettage de D\'ependences} +\index[general]{Paquetage de D\'ependences} +\index[general]{Paquetage!D\'ependences} +\addcontentsline{toc}{subsection}{Paquetage de D\'ependences} Comme nous l'\'evoquions plus haut, nous avons combin\'e une s\'erie de programmes dont Bacula peut avoir besoin dans les paquets {\bf depkgs} et {\bf diff --git a/docs/manual-fr/postgresql.tex b/docs/manual-fr/postgresql.tex index 4b9c3c56..5e1d254a 100644 --- a/docs/manual-fr/postgresql.tex +++ b/docs/manual-fr/postgresql.tex @@ -56,7 +56,7 @@ aviez d\'ej\`a un serveur PostgreSQL existant et vous avez configur\'e et install\'e {\bf Bacula}. Dans le cas contraire, nous vous invitons \`a le faire avant de poursuivre. -Prennez bonne note que la commande {\bf ./configure} utilis\'ee pour +Notez bien que la commande {\bf ./configure} utilis\'ee pour construire {\bf Bacula} n\'ecessite d'ajouter l'option {\bf \verb{--{with-postgresql=repertoire\_de\_PostgreSQL}, o\`u {\bf repertoire\_de\_PostgreSQL} sp\'ecifie le chemin de PostgreSQL indiqu\'e \`a @@ -90,7 +90,29 @@ s'agit de pgsql. NDT: sur debian il s'agit de postgres) \item ./create\_bacula\_database - Cr\'eer la base de donn\'ees PostgreSQL de {\bf Bacula}. + Ce script créé le catalogue {\bf bacula} PostgreSQL. S'il échoue, + c'est probablement que vous n'avez pas les droits requis sur la + base de données. Sur la plupart des systèmes, le propriétaire de + la base de données est {\bf pgsql}, et sur d'autres tels que RedHat ou + Fedora, c'est {\bf postgres}. Vous pouvez déterminer lequel en examinant + le fichier /etc/passwd. Pour créer un nouvel utilisateur avec votre nom + ou le nom {\bf bacula}, vous pouvez faire ce qui suit : + +\begin{verbatim} + su + (entrez le mot de passe root) + password pgsql (ou postgres) + (entrez un mot de passe pour cet utilisateur) + exit + su pgsql (ou postgres) + (entrez le nouveau mot de passe) + createuser kern (or peut-être bacula) + Shall the new user be allowed to create databases? (y/n) y + Shall the new user be allowed to create more new users? (y/n) (choisissez ce que vous voulez) + exit +\end{verbatim} + + A ce stade, vous devriez pouvoir exécuter la commande ./create\_bacula\_database \item ./make\_bacula\_tables @@ -120,6 +142,90 @@ repertoire_de_PostgreSQL/bin/psql --command \\dp bacula \end{verbatim} \normalsize +J'ai rencontré un problème de permissions avec le mot de passe. J'ai finalement +du modifier mon fichier {\bf pg_hba.conf} (situé dans /var/lib/pgsql/data sur ma +machine) : + +\footnotesize +\begin{verbatim} +de + local all all ident sameuser +vers + local all all trust sameuser +\end{verbatim} +\normalsize + +Ceci a résolu le problème pour moi, mais ce n'est pas pas forcément une bonne +chose du point de vue de la sécurité, mais j'ai ainsi pu exécuter mes scripts de +régression sans mot de passe. + +Un moyen plus sécurisé pour l'authentification auprès de la base de données +consiste à utiliser le hachage MD5 des mots de passe. Pour cela, édites les +fichier {\bf pg_hba.conf}, et ajoutez ajoutez ce qui suit juste avant les lignes +"local" et "host" existantes : + +\footnotesize +\begin{verbatim} + local bacula bacula md5 +\end{verbatim} +\normalsize + +Puis redémarrez le {\it daemon} Postgres (la plupart du temps, avec + "/etc/init.d/postgresql restart") pour activer cette nouvelle règle +d'authentification. + +Ensuite, en tant qu'administrateur Postgres (connectez-vous en tant +qu'utilisateur postgres ou en utilisant {\bf su} pour devenir root, puis + {\bf su postgres}), ajoutez un mot de passe à la base de données bacula +pour l'utilisateur bacula avec les commandes suivantes : + +\footnotesize +\begin{verbatim} + \$ psql bacula + bacula=# alter user bacula with password 'secret'; + ALTER USER + bacula=# \\q +\end{verbatim} +\normalsize + +Enfin, il vous faudra ajouter ce mot de passe en deux endroits du fichier +bacula-dir.conf : au niveau de la ressource Catalog et au niveau de la +directive RunBeforeJob de la ressource Job BackupCatalog. Avec les mots de +passe en place, ces deux lignes devraient ressembler à ceci : + +\footnotesize +\begin{verbatim} + dbname = bacula; user = bacula; password = "secret" + ... and ... + RunBeforeJob = "/etc/make_catalog_backup bacula bacula secret" +\end{verbatim} +\normalsize + +Naturellement, vous devriez choisir un meilleur mot de passe, et vous assurer +que le fichier bacula-dir.conf qui contient ce mot de passe n'est lisible +que par root. + +Même avec ces restrictions, il reste un problème de sécurité avec cette approche : +sur certaines plateformes, la variable d'environnement utilisée pour soumettre le +mot de passe à Postgres est inévitablement disponible pour tout utilisateur +local du système. Pour supprimer ce problème, l'équipe Postgres a décrété +obsolète ce mécanisme de passage de mot de passe par variable d'environnement et +recommande d'utiliser un fichier .pgpass. Pour utiliser ce mécanisme, créez un fichier +nommé .pgpass vcontenant une simple ligne : + +\footnotesize +\begin{verbatim} + localhost:5432:bacula:bacula:secret +\end{verbatim} +\normalsize + +Ce fichier devrait être copié dans les répertoires personnels (NDT : home directories) +de tous les comptes susceptibles d'avoir besoin d'accéder à la base de données : +typiquement, il s'agit de root, bacula et tout utilisateur de la console Bacula. Les fichiers +doivent appartenir aux utilisateur et groupe correspondant : root:root pour la copie +dans ~root, etc. Les permissions doivent être positionnées à 600 pour limiter +l'accès au propriétaire du fichier. + \subsection*{R\'einitialiser la base des catalogues (de sauvegardes)} \index[general]{R\'einitialiser la base des catalogues (de sauvegardes) } \index[general]{Sauvegardes!R\'einitialiser la base des catalogues de } @@ -158,6 +264,23 @@ chacun d'eux afin que {\bf Bacula} puisse les r\'eutiliser. Pour ce faire: o\`u vous devrez remplacer {\bf /dev/nst0} par le chemin appropri\'e de votre lecteur de sauvegarde. +\subsection*{Installer PostgreSQL avec les RPMs} +\index[general]{PostgreSQL!Installer avec les RPMs} +\index[general]{Installer PostgreSQL avec les RPMs} +\addcontentsline{toc}{subsection}{Installer PostgreSQL avec les RPMs} +Si vous installez PostgreSQL avec les RPMs, il vous faut installer les +binaires PostgreSQL ainsi que les librairies clientes. Ces dernières font +généralement partie de paquetages de développement, aussi vous devez installer : + +\footnotesize +\begin{verbatim} + postgresql + postgresql-devel +\end{verbatim} +\normalsize + +Il en va de même avec la plupart des gestionnaires de paquetages. + \subsection*{Migrer de MySQL \`a PostgreSQL} \index[general]{Migrer de MySQL \`a PostgreSQL } \index[general]{PostgreSQL!Migrer de MySQL \`a } @@ -294,9 +417,26 @@ SELECT SETVAL('pool_poolid_seq', (SELECT MAX(poolid) FROM pool)); \end{verbatim} \normalsize -\item Parvenu ici, lancez {\bf Bacula}, v\'erifiez votre banque de bandes et +\item Parvenu ici, lancez {\bf Bacula}, v\'erifiez votre librairie et faites un test pour valider que tout s'est bien d\'eroul\'e. - \end{enumerate} +\end{enumerate} + +\subsection*{Mettre à jour PostgreSQL} +\index[general]{Mettre à jour PostgreSQL } +\index[general]{Mettre à jour!PostgreSQL } +\addcontentsline{toc}{subsection}{Mettre à jour PostgreSQL} +Si vous mettez PosgreSQL à jour, vous devez reconfigurer, recompiler et +réinstaller Bacula, faute de quoi vous constaterez probalement des +erreurs étranges. +Pour cela, il vous faut installer le RPM source, modifier le fichier bacula.spec +pour l'accorder à votre version de PostgreSQL, reconstruire le RPM et l'installer. + +If you upgrade PostgreSQL, you must reconfigure, rebuild, and re-install +Bacula otherwise you are likely to get bizarre failures. If you +to modify the bacula.spec file to account for the new PostgreSQL version. +You can do so by rebuilding from the source rpm. To do so, you may need +install from rpms and you upgrade PostgreSQL, you must also rebuild Bacula. + \subsection*{Credits} \index[general]{Credits }