Si vous utilisez un système d'exploitation *NIX en n'étant pas « root », soit par manque d'accès (serveurs Web, par exemple) soit pour raisons de sécurité, ceci détaillera comment installer Bugzilla sur ce type de configuration. Il est recommandé de lire la partie Section 2.1, « Installation » d'abord pour avoir une idée des étapes d'installation nécessaires. (Ces notes se référeront aux étapes de ce guide.)
Vous avez peut-être MySQL installé en tant que « root ». Si vous définissez un compte avec un hôte Web, un compte MySQL doit être créé pour vous. De là, vous pouvez créer le compte « bugs » ou utiliser le compte qui vous a été donné.
![]()  | |
Vous pouvez avoir des problèmes en définissant des permissions GRANT dans la base de données. Si vous utilisez un hôte Web, il y a des chances que vous ayez une base de données séparée qui est déjà verrouillée (ou une grosse base de données sans accès ou avec des accès limités sur d'autres zones), mais vous pouvez demander à votre administrateur système les paramètres de sécurité définis et/ou lui demander d'exécuter la commande GRANT pour vous. Vous pourriez aussi ne pas être en mesure de changer le mot de passe de l'utilisateur « root » de MySQL (pour des raisons évidentes), aussi, sautez cette étape.  | 
Créez un fichier .my.cnf dans votre répertoire
              home (/home/foo dans cet exemple)
              comme suit…
[mysqld]
datadir=/home/toto/mymysql
socket=/home/toto/mymysql/thesock
port=8081
[mysql]
socket=/home/toto/mymysql/thesock
port=8081
[mysql.server]
user=mysql
basedir=/var/lib
[safe_mysqld]
err-log=/home/toto/mymysql/the.log
pid-file=/home/toto/mymysql/the.pid
              Vous pouvez installer MySQL zn n'étant pas « root », si vous en avez vraiment besoin.
            créez-le avec la variable « PREFIX » définié à /home/toto/mysql,
            ou utilisez des exécutables pré-installés en spécifiant que vous voulez mettre
            tous les fichiers de données dans /home/toto/mysql/data.
            S'il y a un autre serveur MySQL qui s'exécute sur le système qui ne vous appartient pas,
            utilisez l'option « -P » pour spécifier un port TCP qui n'est pas
            utilisé.
Après avoir créé votre programme « mysqld » et votre fichier « .my.cnf », vous devez initialiser les bases de données (UNE FOIS).
              bash$
              mysql_install_db
            Puis démarrez le démon avec
              bash$
              safe_mysql &
            après avoir lancé « mysqld » la première fois, connectez vous en tant que « root » et donnez les permissions (GRANT) aux autres utilisateurs. (Le compte « root » de MySQL n'a rien à voir avec le compte « root » des systèmes *NIX).
![]()  | |
Vous devrez démarrer les démons vous-mêmes. Vous pouvez soit demander à votre
              administrateur système de les ajouter aux fichiers de démarrage du système, soit
              ajouter une entrée dans le fichier   | 
![]()  | |
Ne lancez pas de démons ou autres services sur un serveur sans avoir d'abord consulter votre administrateur système ! Les démons utilisent des ressources système et en exécuter peut être en violation des conditions de service pour toute machine sur laquelle vous êtes utilisateur !  | 
Dans le cas très rare où vous n'auriez pas Perl sur la machine, vous devrez construire les sources vous mêmes. Les commandes suivantes devraient installer sur votre système votre propre version de Perl :
        bash$
        wget http://perl.org/CPAN/src/stable.tar.gz
        bash$
        tar zvxf stable.tar.gz
        bash$
        cd perl-5.8.1 (ou la version de Perl que vous avez)
        bash$
        sh Configure -de -Dprefix=/home/toto/perl
        bash$
        make && make test && make install
      Dès que vous avez installé Perl dans un répertoire (probablement dans
      ~/perl/bin), vous devrez installer les modules
      Perl comme détaillé plus bas dans cette page.
Installer les modules Perl sans être utilisateur « root » est réalisé
      en exécutant le script install-module.pl.
      Pour plus de détails sur ce script, consultez la documentation de
      install-module.pl.
      
Idéalement, ceci nécessite aussi d'être installé avec l'utilisateur « root » et s'exécuter
      sous un compte spécial pour le serveur Web. Tant que le serveur autorise l'exécution des fichiers
      *.cgi en dehors de cgi-bin et refuser l'accès
      à certains fichiers (comme le fichier .htaccess),
      ça devrait aller.
Vous pouvez exécuter Apache sans être « root », mais le port devra être supérieur à 1024. Si vous saisissez la commande httpd -V, vous obtiendrez une liste des variables que votre copie système de httpd utilise. Une de celles-ci, « HTTPD_ROOT », vous indique où cette installation va rechercher ses informations de configuration.
De là, vous pouvez copier les fichiers de configuration vers votre répertoire home
        pour les modifier. Quand vous éditez ceux-ci et que vous utilisez l'option « -d »
        pour outrepasser la valeur de la variable « HTTPD_ROOT » compilée dans votre serveur Web, vous
        prenez le contrôle de votre propre serveur Web personnalisé.
![]()  | |
Vous devrez démarrer les démons vous-mêmes. Vous pouvez soit demander à votre
          administrateur système de les ajouter aux fichiers de démarrage du système, soit
          ajouter une entrée dans le fichier   | 
![]()  | |
Ne lancez pas de démons ou autres services sur un serveur sans avoir d'abord consulter votre administrateur système ! Les démons utilisent des ressources système et en exécuter peut être en violation des conditions de service pour toute machine sur laquelle vous êtes utilisateur !  | 
Quand vous exécutez ./checksetup.pl pour créer le fichier
      localconfig, il listera les modules Perl
      qu'il trouve. S'il en manque, revenez en arrière et revérifier
      l'installation du module depuis Section 2.6.4, « Modules Perl », puis supprimez le fichier
      localconfig et essayez à nouveau.
![]()  | |
L'option dans le fichier   | 
Si vous êtes sur un système qui utilise « suexec » (la plupart des
        environnements d'hébergement le font), vous aurez besoin de définir la valeur de
        webservergroup dans le fichier localconfig
        pour qu'elle corresponde à votre groupe principal, plutôt que celui
        avec lequel le serveur Web est exécuté. Vous devrez lancer les commandes suivantes
        après avoir exécuté ./checksetup.pl,
        chaque fois que vous le lancez (ou modifiez checksetup.pl
        pour qu'il le fasse pour vous grâce à la commande system()).
        
        for i in docs graphs images js skins; do find $i -type d -exec chmod o+rx {} \; ; done
        for i in jpg gif css js png html rdf xul; do find . -name \*.$i -exec chmod o+r {} \; ; done
        find . -name .htaccess -exec chmod o+r {} \;
        chmod o+x . data data/webdotFaites particulièrement attention au nombre de point-virgules et de points. Ils sont tous importants. Une prochaine version de Bugzilla sera, avec un peu de chance, capable de faire ceci pour vous automatiquement.