logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 19-03-2016 10:34:44

Xunil
Membre
Distrib. : Debian GNU/Linux 7.6 - Wheezy
Noyau : 3.10.23
Inscription : 19-03-2016

[Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Bonjour,

Je souhaiterais bien faire les choses en ce qui concerne l'installation de logiciels.
Je n'ai jamais bien compris où il fallait les installer...

Si on se réfère à diverses documentations on a les définitions suivante :
/usr (pour l’installation de logiciels)
/usr/local (pour l’installation de logiciels sur la machine locale)

Quelles seraient les différences si par exemple je décide d'installer un binaire (Java, un jeu, ...) selon le répertoire choisi ?


Merci

Dernière modification par Xunil (19-03-2016 17:31:21)

Hors ligne

#2 19-03-2016 10:46:30

sogal
Black Metal Modo
Lieu : Nord Isère
Distrib. : openSUSE Leap 42.3
Noyau : Linux 4.4.76
(G)UI : GNOME
Inscription : 09-05-2013
Site Web

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Bonjour,

Dans /usr et plus spécifiquement /usr/bin se trouvent les logiciels (les binaires) installés proprement depuis un paquet officiel (de préférence) et gérés (et installés donc) par le gestionnaire de paquet.

Dans /usr/local tu placeras de préférence tous les logiciels que tu auras compilé toi même sur ta machine. D'où l'importance d'éditer le makefile ou de spécifier les bonnes options à la compilation pour être sûr qu'un binaire compilé localement ne se trouve pas au milieu des autres.

1485418338.png Hello IT ! Have you tried turning it off and on again ?

Hors ligne

#3 19-03-2016 10:56:50

nono47
Invité

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

salut,

il n'y a pas aussi le dossier /opt pour installer des binaires maison ?

/opt Logiciels optionnels     Logiciels non inclus dans la distribution et installés manuellement pour tous les utilisateurs.
Filesystem Hierarchy Standard : https://fr.wikipedia.org/wiki/Filesyste … y_Standard de chez gnu et linux .

c'est pas comme ça la bonne pratique ?

où mettre un binaire hors debian ?

ça m'intéresse aussi !

smile

édition : quelle différence ? ( avec /usr/local )

Dernière modification par nono47 (19-03-2016 11:14:35)

#4 19-03-2016 11:30:56

vv222
Administrateur
Lieu : Bretagne
Distrib. : Debian Sid
(G)UI : sway
Inscription : 18-11-2013
Site Web

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

nono47 a écrit :

quelle différence ? ( avec /usr/local )


Sous /usr/local/ les applications vont respecter la même hiérarchie que sous /usr/ (bin, share/applications, share/icons, etc.).
Si un fichier de même nom se trouve sous /usr/…/fichier et /usr/local/…/fichier c’est celui sous /usr/local/ qui sera automatiquement utilisé par le système.

Sous /opt/ par contre il n’y a pas de règle, on y trouvera donc plus facilement les logiciels aux fichiers organisés de manière "exotique" (pour rester poli).


Jouer sous Debian ? Facile !

Ceterum censeo Barum esse delendam

En ligne

#5 19-03-2016 11:45:22

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Il y a un tuto à faire à partir de la hiérarchisation des fichiers :
https://debian-facile.org/atelier:chantier:fhs-accueil big_smile

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#6 19-03-2016 11:49:45

Xunil
Membre
Distrib. : Debian GNU/Linux 7.6 - Wheezy
Noyau : 3.10.23
Inscription : 19-03-2016

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

sogal a écrit :

Dans /usr et plus spécifiquement /usr/bin se trouvent les logiciels (les binaires) installés proprement depuis un paquet officiel (de préférence) et gérés (et installés donc) par le gestionnaire de paquet.

Merci, explication très claire smile

sogal a écrit :

Dans /usr/local tu placeras de préférence tous les logiciels que tu auras compilé toi même sur ta machine. D'où l'importance d'éditer le makefile ou de spécifier les bonnes options à la compilation pour être sûr qu'un binaire compilé localement ne se trouve pas au milieu des autres.

Ok, donc c'est ici qu'on met les logiciels si on utilise la célèbre commande make. Ça permet sans doute une meilleur organisation et un meilleur suivis des logiciels présents sur la machine.
Merci pour l'explication !


=> Par contre si on possède déjà un binaire ?
C'est le cas de Java par exemple, dans leur tuto (https://www.java.com/fr/download/help/l … nstall.xml) ils disent simplement d'extraire le .tar.gz dans /usr/java.
Est-ce une bonne chose de créer un répertoire /java en plein milieu dans l'arborescence ?
Puis ils précisent :

[...] pour installer Java dans un emplacement couvrant tout le système, par exemple /usr/local, vous devez vous connecter en tant qu'utilisateur root [...]


Je comprend pas trop le terme "couvrant tout le système" neutral
Il y a des accès, des restrictions, des... comportements différents du logiciel selon le choix du répertoire ? (/usr/UnRepertoire contre /usr/local <- qui "couvre tout le système")


Merci

Hors ligne

#7 19-03-2016 11:55:18

bendia
Chadministrateur
Distrib. : openSUSE Tumbleweed, Buster
Noyau : Linux 5.9.1-2-default + Linux 4.19.0-12-amd64
(G)UI : Gnome + Console et un peu Fluxbox
Inscription : 20-03-2012
Site Web

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Xunil a écrit :

Je comprend pas trop le terme "couvrant tout le système"

Cela signifie qui seront accessibles par tous les utilisateurs du système, par opposition par exemple à ce que tu vas mettre dans /home/ton_user/.local


Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.

Hors ligne

#8 19-03-2016 13:06:13

sogal
Black Metal Modo
Lieu : Nord Isère
Distrib. : openSUSE Leap 42.3
Noyau : Linux 4.4.76
(G)UI : GNOME
Inscription : 09-05-2013
Site Web

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

vv222 a écrit :

Sous /usr/local/ les applications vont respecter la même hiérarchie que sous /usr/ (bin, share/applications, share/icons, etc.).


Effectivement, c'est un point commun important et, même compilé, à la main, les logiciels (le binaires et ses ressources) seront installés proprement et dans les endroits logiques et bien identifiés.

Comme dit nono47, il y a aussi /opt pour tout le reste. Idéalement il ne faudrait installer aucun paquet hors dépôt et donc susceptible de s'y retrouver.
Dans le cas de ton java, ce n'est que mon avis, mais je ne te conseille pas de l'installer directement dans /usr. À la limite dans /opt puis tu crées un lien vers /usr.


1485418338.png Hello IT ! Have you tried turning it off and on again ?

Hors ligne

#9 19-03-2016 15:44:56

Xunil
Membre
Distrib. : Debian GNU/Linux 7.6 - Wheezy
Noyau : 3.10.23
Inscription : 19-03-2016

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

bendia a écrit :

Cela signifie qui seront accessibles par tous les utilisateurs du système [...]

aah ok je comprend mieux. Merci.

bendia a écrit :

[...] par opposition par exemple à ce que tu vas mettre dans /home/ton_user/.local

A ce propos, j'ai cherché et j'ai bien trouvé ce répertoire sous Ubuntu mais pas sous Debian. Comment faire sous Debian si un utilisateur veux installer un logiciel ? Ou si root veut lui installer que pour lui ?

sogal a écrit :

vv222 a écrit :

Sous /usr/local/ les applications vont respecter la même hiérarchie que sous /usr/ (bin, share/applications, share/icons, etc.).

Effectivement, c'est un point commun important et, même compilé, à la main, les logiciels (le binaires et ses ressources) seront installés proprement et dans les endroits logiques et bien identifiés.

Ok donc on ne s'embête pas à installer quelque chose à la main (=compilation) ailleurs que dans /usr/local ?

sogal a écrit :

Comme dit nono47, il y a aussi /opt pour tout le reste. Idéalement il ne faudrait installer aucun paquet hors dépôt et donc susceptible de s'y retrouver.
Dans le cas de ton java, ce n'est que mon avis, mais je ne te conseille pas de l'installer directement dans /usr. À la limite dans /opt puis tu crées un lien vers /usr.

Il y a un truc que je ne comprend pas dans ce tuto de Java (https://www.java.com/fr/download/help/l … nstall.xml) :
--> si on installe dans /usr/local ça "couvrira tout le système" donc accessible à tout les utilisateurs. Ce qui semble être une bonne solution pratique.
--> si on installe dans /usr/Java (le truc à éviter), ça fera quoi ? Ça sera accessible à qui du coup ?
D'autant plus qu’un simple utilisateur ne peu de toute façon pas écrire dans /usr et ne pourra pas l'installer non ?

Merci

Hors ligne

#10 19-03-2016 16:05:19

bendia
Chadministrateur
Distrib. : openSUSE Tumbleweed, Buster
Noyau : Linux 5.9.1-2-default + Linux 4.19.0-12-amd64
(G)UI : Gnome + Console et un peu Fluxbox
Inscription : 20-03-2012
Site Web

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Xunil a écrit :

A ce propos, j'ai cherché et j'ai bien trouvé ce répertoire sous Ubuntu mais pas sous Debian. Comment faire sous Debian si un utilisateur veux installer un logiciel ?

Il le créé wink

mkdir ~/.local


Xunil a écrit :

Ou si root veut lui installer que pour lui ?

A la vue des réponses précédente, je dirais qu'il n'y a aucune raison pour que root vienne installer un truc là.

P.S. : c'est ta discussion aussi chez les voisins par là ?


Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.

Hors ligne

#11 19-03-2016 17:28:48

Xunil
Membre
Distrib. : Debian GNU/Linux 7.6 - Wheezy
Noyau : 3.10.23
Inscription : 19-03-2016

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

bendia a écrit :

Xunil a écrit :

A ce propos, j'ai cherché et j'ai bien trouvé ce répertoire sous Ubuntu mais pas sous Debian. Comment faire sous Debian si un utilisateur veux installer un logiciel ?

Il le créé wink

mkdir ~/.local



Je comprend mieux !
Merci ! smile

Hors ligne

#12 23-03-2016 20:03:19

Xunil
Membre
Distrib. : Debian GNU/Linux 7.6 - Wheezy
Noyau : 3.10.23
Inscription : 19-03-2016

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Je me demandais :

- le répertoires /usr/local n'est donc pas affecté par les mises à jour avec les commandes apt-get, aptitude ou via le gestionaire de paquet ?

- c'est pareil pour /opt ? (parce que je me suis aperçu que sous Ubuntu j'ai Chrome qui s'est mis dedans (ainsi que dans /usr/bin...), et que je l'avais installé via la Logithèque)

Merci

Dernière modification par Xunil (23-03-2016 20:03:45)

Hors ligne

#13 23-03-2016 20:31:03

nono47
Invité

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Salut,

Une discussion sur debian-fr.org sur " Répertoires /usr et /usr/local " et leur utilisation ( installation de programmes ) : https://www.debian-fr.org/t/repertoires … ocal/68739

Dernière modification par nono47 (23-03-2016 20:31:24)

#14 24-03-2016 10:05:50

Xunil
Membre
Distrib. : Debian GNU/Linux 7.6 - Wheezy
Noyau : 3.10.23
Inscription : 19-03-2016

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Merci.

J'ai lu plusieurs fois ce sujet mais malheureusement j'ai de gros doutes hmm, je n'arrive toujours pas à déterminer si :

- le répertoires /usr/local est affecté ou pas par les mises à jour avec les commandes de bases (apt-get, aptitude, ou via le gestionnaire de paquet)
- et si c'est pareil pour /opt ? Car concernant Chrome, installé via le gestionnaire, il se trouve à la fois dans /opt et dans /usr/bin

Je pense que non pour /usr/local mais je n'en suis pas sur à 100%
En ce qui concerne /opt je ne sais pas...

Merci

Dernière modification par Xunil (24-03-2016 10:06:44)

Hors ligne

#15 24-03-2016 10:18:28

sogal
Black Metal Modo
Lieu : Nord Isère
Distrib. : openSUSE Leap 42.3
Noyau : Linux 4.4.76
(G)UI : GNOME
Inscription : 09-05-2013
Site Web

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Xunil a écrit :

le répertoires /usr/local est affecté ou pas par les mises à jour avec les commandes de bases (apt-get, aptitude, ou via le gestionnaire de paquet)


Non si tu n'y a mis que des locigiels compilés sur ta machine.

Xunil a écrit :

et si c'est pareil pour /opt ? Car concernant Chrome, installé via le gestionnaire, il se trouve à la fois dans /opt et dans /usr/bin


chrome n'étant pas dans les dépôts ça m'étonnerait qu'il s'installe proprement... Ce n'est pas parce que tu l'as installé depuis un paquet .deb qu'il s'installera proprement. Un .deb n'est qu'une archive, ça n'est pas une garantie d'une installation propre, ni que le gestionnaire de paquet le prendra en compte lors des mises à jour. Vérifie aussi que le fichier présent dans /usr/bin n'est pas qu'un lien pointant vers le vrai exécutable présent dans /opt.

(si c'est le cas, supprime moi ce malware au plus tôt tongue )


1485418338.png Hello IT ! Have you tried turning it off and on again ?

Hors ligne

#16 24-03-2016 10:50:01

Xunil
Membre
Distrib. : Debian GNU/Linux 7.6 - Wheezy
Noyau : 3.10.23
Inscription : 19-03-2016

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

sogal a écrit :

Non si tu n'y a mis que des locigiels compilés sur ta machine.

Ok, merci !

sogal a écrit :

Ce n'est pas parce que tu l'as installé depuis un paquet .deb qu'il s'installera proprement. Un .deb n'est qu'une archive, ça n'est pas une garantie d'une installation propre, ni que le gestionnaire de paquet le prendra en compte lors des mises à jour..

Merci, je comprend mieux.
Je croyais que le gestionnaire de paquet était la version graphique de apt-get/aptitude... roll

sogal a écrit :

Vérifie aussi que le fichier présent dans /usr/bin n'est pas qu'un lien pointant vers le vrai exécutable présent dans /opt (si c'est le cas, supprime moi ce malware au plus tôt tongue )

Omg...
[Xunil@linux:~]$

 ls -la /usr/bin/google-chr*


lrwxrwxrwx 1 root root 31 oct.  24 11:57 /usr/bin/google-chrome -> /etc/alternatives/google-chrome
lrwxrwxrwx 1 root root 32 mars   8 01:24 /usr/bin/google-chrome-stable -> /opt/google/chrome/google-chrome



Edit à jojo :
Séparé la commande user seule de son retour ensuite.

Hors ligne

#17 24-03-2016 11:03:15

sogal
Black Metal Modo
Lieu : Nord Isère
Distrib. : openSUSE Leap 42.3
Noyau : Linux 4.4.76
(G)UI : GNOME
Inscription : 09-05-2013
Site Web

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

Xunil a écrit :

Je croyais que le gestionnaire de paquet était la version graphique de apt-get/aptitude


Quand tu as installé ton .deb de chrome par exemple. c'est dpkg qui s'est chargé d'ouvrir l'archive puis de placer les bons fichiers au bon endroit.

Le gestionnaire de paquet de Debian est APT (Advanced Packaging Tool). aptitude ou synaptic ne sont que des sur-couches l'utilisant et faisant appel, lors de la phase de manipulation du paquet lui même, à dpkg. Le rôle d'APT est de conserver une liste des paquets installés sur le système, de gérer leurs dépendances pour maintenir l'ensemble dans un état coordoné et stable.

Si tu fais un :

apt-cache policy google-chrome



Je ne pense pas qu'il te dise qu'un tel paquet est installé.

PS: quand je disais "malware" c'était une (demi) plaisanterie qui faisait référence directement à l'aspect intrusif des logiciels google dans nos vies. Le fait qu'un lien soit créé est logique et n'est pas dangereux en soit.


1485418338.png Hello IT ! Have you tried turning it off and on again ?

Hors ligne

#18 24-03-2016 12:02:43

Xunil
Membre
Distrib. : Debian GNU/Linux 7.6 - Wheezy
Noyau : 3.10.23
Inscription : 19-03-2016

Re : [Résolu] Installation dans /usr ou /usr/local, quelles différences ?

sogal a écrit :

Quand tu as installé ton .deb de chrome par exemple. c'est dpkg qui s'est chargé d'ouvrir l'archive puis de placer les bons fichiers au bon endroit.
Le gestionnaire de paquet de Debian est APT (Advanced Packaging Tool). aptitude ou synaptic ne sont que des sur-couches l'utilisant et faisant appel, lors de la phase de manipulation du paquet lui même, à dpkg. Le rôle d'APT est de conserver une liste des paquets installés sur le système, de gérer leurs dépendances pour maintenir l'ensemble dans un état coordoné et stable.

Merci pour ces explications !

sogal a écrit :

Si tu fais un :

apt-cache policy google-chrome

Je ne pense pas qu'il te dise qu'un tel paquet est installé.

Effectivement, il ne trouve rien.

sogal a écrit :

PS: quand je disais "malware" c'était une (demi) plaisanterie qui faisait référence directement à l'aspect intrusif des logiciels google dans nos vies. Le fait qu'un lien soit créé est logique et n'est pas dangereux en soit.

Ok wink

Hors ligne

Pied de page des forums