Forum Linux.débutant Installation d'un Tarball

Posté par  .
Étiquettes :
0
11
août
2005
Je viens de rencontrer un problème similaire en installant 2 logiciels.

J'ai installé dans /usr/local/share
- fbpager-0.1.4.tar.gz
- adesklets-0.4.10.tar.bz2

J'ai réalisé les opérations suivantes sous root :
tar xvf xxx.tar.gz
./configure
make,
make install.

Je les ai placé dans ce répertoire et non dans un sous-répertoire /hom/usertoto en pensant qu'elles pourraient être utilisées à partir d'autres comptes utilisateur - machine à vocation familliale - mais je me demande si c'était judicieux ou bien si une étape m'a échappée.

En effet je viens de me rendre compte que l'exécution de la commande
"fbpager" ou "adesklets" est possible uniquement sous root et donc impossible à un user lamda dans son propre compte.
Il est pourtant possible de lancer Firefox à partir de chaque compte sans qu'il soit nécessaire de l'installer dans chacun d'entre eux.

Ainsi l'affichage de fbpager ne fonctionne que si je suis sous Root dans mon propre compte.
Le but de pour ce genre d'appli n'est il pas, comme pour une application courrante telle que Mozilla par exemple, de faire en sorte qu'elle soit utilisable par tous les users même si elle est placée en dehors du répertoire de chaque utilisateur évitant ainsi qu'elle soit réinstallée dans chacun des répertoires /home/* ?

Jusqu'à présent je n'avais pas rencontré de problèmes car j'ai toujours installé des binaires RPM. Mais là pour les 2 premiers Tarball que j'installe je rencontre le même problème.
Au départ j'ai recontré ce problème avec Adesklet. C'est pourquoi je pensais qu'il était spécifique à cette application. Hors il se reproduit avec Fbpager...


# cd /usr/local/share
# ll
total 971
18073 drwxr-xr-x 8 root root 1024 aoû 11 18:38 ./
2 drwxr-xr-x 14 root root 1024 aoû 9 05:49 ../
18087 drwxr-xr-x 2 root root 1024 aoû 10 23:49 adesklets/
20125 drwxrwxrwx 8 1000 users 1024 aoû 11 00:06 adesklets-0.4.10/
18267 -rw------- 1 root root 629194 aoû 8 00:40 adesklets-0.4.10.tar.bz2
18093 drwxrwxrwx 3 1000 users 1024 aoû 11 18:50 fbpager-0.1.4/
18092 -rw-rw-r-- 1 fluxus fluxus 349045 aoû 11 18:34 fbpager-0.1.4.tar.gz



Que faut il faire exactement pour que ces applications soient utilisables à partir de tous les comptes sans être sous root, bien entendu ?


Nota :
Ce post est - malheureusement - la suite de 2 autres
- http://linuxfr.org/forums/9/10630.html(...)
et dans une moindre mesure
- http://linuxfr.org/forums/9/10580.html(...)

Je vous remercie par avance pour votre aide
  • # En fait

    Posté par  . Évalué à 1.

    En fait le make install installe justement dans "les bons repertoires" de /usr/local/
    Ce qu'il faut faire c'est:
    - downloader les sources
    -les decompresser (le repertoire ou cela est fait n'a aucune importance le mieux serait de le faire dans un repertoire dans ton home)
    puis (pour la plupart) en utilisateur normal:
    ./configure (pour debian ./configure --prefix=/usr) (parfois ./autoconf je crois (lire le README))
    make
    su -c 'make install'

    les binaires devront etre alors installer dans /usr/local/bin (/usr/bin pour debian) et pourront donc etre utilisable normalement par tout le monde pour peu que la variable PATH contienne le repertoire (echo $PATH pour verifier qu'elle contient bien le repertoire des binaires).
    • [^] # Re: En fait

      Posté par  . Évalué à 1.

      Ce ne peut pas être aussi le fait qu'il est fait le 'make' en root ?
      • [^] # Re: En fait

        Posté par  . Évalué à 1.

        Petite erreur

        s/est/ai
        • [^] # Re: En fait

          Posté par  . Évalué à 1.

          En fait faudrait savoir ou les binaires sont installes.
          S'ils le sont dans /usr/local/sbin alors c'est normal que seul root puisse les lancer.
          S'ils le sont dans /usr/local/bin alors il y a un probleme et il faudrait lancer l'appli en ligne de commande en utilisateur normal pour voir d'eventuels messages d'erreurs.
          Mais je doute que le fait d'avoir fait le make en root soit genant.
          • [^] # Re: En fait

            Posté par  . Évalué à 1.


            ll /usr/local/bin/fbpager /usr/local/bin/adesklets
            6026 -rwxr-xr-x 1 root root 133006 aoû 10 23:49 /usr/local/bin/adesklets*
            6029 -rwxr-xr-x 1 root root 1029888 aoû 11 18:43 /usr/local/bin/fbpager*


            > il faudrait lancer l'appli en ligne de commande en utilisateur normal pour voir
            > d'eventuels messages d'erreurs.
            >

            Dans le cas où je lance la commande en temps que user normal j'ai

            $ adesklets
            -bash: adesklets: command not found

            $ fbpager
            -bash: fbpager: command not found
            • [^] # Re: En fait

              Posté par  (site web personnel) . Évalué à 2.

              Que te donne un echo $PATH ? J'ai l'impression que /usr/local/bin n'est pas dans le path.
              Si cela marche après un PATH=$PATH:/usr/local/bin modifie le .bashrc
              • [^] # Re: En fait

                Posté par  . Évalué à 1.


                echo $PATH
                /home/perso/GNUstep/Tools:/usr/GNUstep/Local/Tools:/usr/GNUstep/System/Tools:/bin:/usr/bin:/usr/X11R6/bin:/usr/games:/usr/share/apps/superkaramba/scripts:/usr/share/apps/superkaramba/scripts:/home/perso/bin:/usr/share/apps/superkaramba/scripts:/home/perso/bin


                En effet.
                Faut-il le modifier pour tous les comptes utilisateurs ou d'une manière globale ?
                Quel est le fichier concerné ?

                Dans .bash_profile je n'ai que
                PATH=$PATH:$HOME/bin

                et dans /etc/profile

                if ! echo ${PATH} |grep -q /usr/X11R6/bin ; then
                PATH="$PATH:/usr/X11R6/bin"
                fi

                if [ "$UID" -ge 500 ] && ! echo ${PATH} |grep -q /usr/games ; then
                PATH=$PATH:/usr/games
                fi

                export PATH


                Je dirais dans chaque ~/.bash_profile. Est ce bien ce qu'il faut faire ?
                • [^] # Re: En fait

                  Posté par  (site web personnel) . Évalué à 2.

                  Normalement, dans /etc/profile (avant le "export PATH" ) ça devrait marcher (je ne l'ai jamais fait, mais il est là pour ça)

                  Dans l'autre cas aussi, mais tu devras modifier les différents fichiers un par un.
                  • [^] # Re: En fait

                    Posté par  . Évalué à 1.

                    En fait je me demande quel distrib il a.
                    Lorsqu'il a un tarball, plutot que d'installer dans /usr/local puisque ce n'est pas dans son path, je lui conseillerai plutot de faire un ./configure --prefix=/usr ou alors de creer dans le profil une variable PREFIX=/usr cela me semble plus propre que d'avoir les binaires installes dans /usr/bin et /usr/local/bin
  • # Ben voilà

    Posté par  . Évalué à 2.

    Un petit problème résolu pas à pas.

    Merci à tous

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.