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 11: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 18:31:21)

En ligne

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

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(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.

Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

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

nono47
Membre
Lieu : dans l'engrenage ...
Distrib. : sid
Noyau : Linux 4.8.0-1-amd64
(G)UI : gnome-shell
Inscription : 09-05-2012

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 12:14:35)

Hors ligne

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

vv222
Membre
Lieu : Bretagne
Distrib. : GNU/Linux Debian « Sid »
Noyau : >= Linux 4.5.0 (amd64)
(G)UI : Openbox + ROX
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 !

Hors ligne

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

smolski
administrateur quasi...modo
Lieu : AIN
Distrib. : 8 (jessie) 64 bits + backports
Noyau : 4.6.0-0.bpo.1-amd64
(G)UI : gnome 3.14.1
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

"Définition d'eric besson : S'il fallait en chier des tonnes pour devenir ministre, il aurait 2 trous du cul." - JP Douillon
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

Hors ligne

#6 19-03-2016 12: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

En ligne

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

bendia
Admin stagiaire
Distrib. : Jessie
Noyau : 3.16.0-4-amd64
(G)UI : Gnome + XFCE + Console
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.
file-Re06858991f6f328b4907296ac5cea283

Hors ligne

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

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(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.


Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

#9 19-03-2016 16: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

En ligne

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

bendia
Admin stagiaire
Distrib. : Jessie
Noyau : 3.16.0-4-amd64
(G)UI : Gnome + XFCE + Console
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.
file-Re06858991f6f328b4907296ac5cea283

Hors ligne

#11 19-03-2016 18: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

En ligne

#12 23-03-2016 21: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 21:03:45)

En ligne

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

nono47
Membre
Lieu : dans l'engrenage ...
Distrib. : sid
Noyau : Linux 4.8.0-1-amd64
(G)UI : gnome-shell
Inscription : 09-05-2012

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 21:31:24)

Hors ligne

#14 24-03-2016 11: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 11:06:44)

En ligne

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

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(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 )


Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

#16 24-03-2016 11: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.

En ligne

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

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(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.


Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

#18 24-03-2016 13: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

En ligne

Pied de page des forums