Chaque fois que je lis les conseils d'installation d'un SDK, d'un IDE, d'une extension et ainsi de suite, il est dit que je devrais les déballer dans un /opt
dossier. Pourquoi dois-je faire ça?
Lorsque j'installais Ubuntu, j'ai lu que je ne devais définir que 10-20 Gio pour le /
système de fichiers et l'espace restant pour /home
. Dois-je donc étendre l'espace pour le dossier racine ou laisser toutes les choses sur /home
? Y a-t-il une différence?
filesystem
disk-usage
Praytic
la source
la source
Réponses:
Tout d'abord, sachez que tout répertoire qui n'est pas explicitement un point de montage pour une partition distincte (ou un sous-répertoire d'un tel point de montage) est stocké sur la
/
partition root ( ). Ainsi, si vous avez root (/
) et/home
, et aucune autre partition, votre/opt
répertoire est simplement un répertoire sur root (/
). De même pour/tmp
,/sbin
et toute autre chose. Ainsi, la question initiale est basée sur la fausse prémisse selon laquelle vous avez besoin de partitions distinctes pour chaque répertoire qui dérive de root (/
), et ne peut donc pas être répondu directement.Deuxièmement,
/opt
est utilisé pour les logiciels tiers, ce qui dans le contexte d'Ubuntu, signifie des logiciels précompilés qui ne sont pas distribués via les paquets Debian. Parfois, vous verrez la documentation officielle du programme à laquelle vous vous référez/opt
, mais des paquets Debian sont disponibles qui déposent ces fichiers ailleurs. Dans de tels cas, vous devez ignorer la documentation officielle, ou au moins ignorer ses références d'emplacement de fichier, lorsque vous utilisez le paquet Debian. De plus, si vous avez le choix d'utiliser un paquet précompilé via un tarball ou un paquet Debian, il est généralement préférable d'utiliser le paquet Debian. Dans l'ensemble, l'utilisation de/opt
est assez rare de nos jours. Si vous pensez toujours que vous devez y mettre des fichiers/opt
, vous feriez bien de nommer le logiciel, car les gens d'ici peuvent savoir si un paquet Debian est disponible pour ce logiciel.Enfin, en combinant les deux points précédents, il est très rare que les installations Ubuntu se séparent
/opt
en une partition distincte car il est rare que des quantités importantes de données y soient stockées. La plupart des logiciels Ubuntu vont dans/usr
et à d'autres endroits. Il était autrefois courant de se diviser/usr
en une partition distincte, mais cette pratique est assez rare aujourd'hui. Si vous ne vous arrive d'avoir besoin d'installer de nombreux logiciels/opt
, puis en créant une partition séparée pour elle pourraitlogique - mais dans de nombreux cas, cela ne sera pas vraiment utile. Des partitions distinctes sont utiles si vous devez gérer la sécurité différemment, si différentes fonctionnalités du système de fichiers seront utiles, pour partager des données entre plusieurs installations de système d'exploitation dans une configuration à démarrage multiple, et pour d'autres raisons. L'installation de logiciels de routine ne bénéficiera probablement pas d'une partition distincte; en fait, la création d'une partition distincte pour/opt
pourrait causer des problèmes si la taille consommée par les logiciels qui y sont stockés change, ou si vous vous trompez au départ.la source
Le faites vous?
Le fait est que vous n'avez pas besoin de le faire. L'utilisation
/opt
est une convention. Je recommanderais de l'utiliser mais ce n'est pas strictement nécessaire.De la hiérarchie du système de fichiers Linux: Chapitre 1. Hiérarchie du système de fichiers Linux :
la source
/opt
c'était souvent un lecteur séparé. Il serait utilisé pour installer des logiciels propriétaires, qui avaient souvent d'énormes besoins en espace disque en raison du regroupement de toutes les bibliothèques et autres ressources requises. Dans les temps modernes, les disques sont si gros qu'il est possible et plus facile d'utiliser simplement une racine unique sur un seul disque./opt
est utilisé pour des applications externes (parfois propriétaires) qui ne sont pas considérées comme faisant partie de la distribution Linux. Ces applications peuvent avoir des chemins codés en dur et ne fonctionneront donc correctement qu'une fois installées sur/opt
- mais s'il n'y a pas de chemins codés en dur, vous pouvez les installer sur n'importe quel chemin. Un programme installé dans/opt
est censé être autonome.La principale raison de l'utilisation
/opt
est de fournir un chemin standard commun où les logiciels externes peuvent être installés sans interférer avec le reste du système installé./opt
n'apparaît pas dans les chemins standard du compilateur ou de l'éditeur de liens (gcc -print-search-dirs
ou/etc/ld.so.conf
etc.), donc les en-têtes et les bibliothèques qui y sont installés sont quelque peu isolés du système principal et ne devraient pas interférer avec les programmes déjà installés.L'utilisation de
/opt
est spécifiée par la norme de hiérarchie du système de fichiers : / opt , qui note qu'elle/opt
provenait à l'origine d'Unix.la source
Il n'y a rien de sacré
/opt
, c'est juste une pratique courante de mettre des logiciels précompilés qui devraient être accessibles à tous les utilisateurs d'un système dans ce répertoire. Si vous êtes le seul utilisateur du système, il n'y a rien de mal à l'extraire dans votre répertoire personnel. Et même s'il y a plusieurs utilisateurs sur le système qui ont besoin d'accéder à ce logiciel mais que vous souhaitez utiliser l'espace sur votre/home
partition, il n'y a rien de mal à créer un/home/softwarename
répertoire accessible au public et à y extraire votre logiciel (la seule mise en garde est si vous arrive pour avoir un utilisateur nommésoftwarename
, vous ne pourrez pas l'utiliser dans le répertoire personnel de l'utilisateur).la source
Les réponses détaillées sont très bonnes, mais (à part les logiciels qui peuvent avoir des chemins absolus codés en dur - pas la meilleure pratique de programmation), le point principal est que les logiciels non-système / non-distribution ne doivent pas être stockés mélangés avec le fichiers système standard.
Mettre
/opt
ou/usr/local
garder les choses propres et plus sûres.En particulier, votre chemin de recherche de logiciels ($ PATH) détermine l'ordre dans lequel les emplacements sont recherchés lorsque vous recherchez un programme d'un nom particulier à exécuter. Habituellement, des endroits comme
/opt
et/usr/local
sont vers la fin de la liste.Si vous installez un package
cp
contenant un programme nommé , l'ordre de recherche par défaut fourni avec votre distribution trouvera celui normal car le répertoire dans lequel il est stocké est recherché avant des endroits comme/opt
.Si cela n'a pas fonctionné de cette façon, qui sait ce qui pourrait casser ou ouvrir un trou de sécurité si un programme nommé
cp
qui fait autre chose est exécuté lorsque vous pensez que vous essayez simplement de copier certains fichiers.Si quelque chose comme cela se produit, cela peut prendre un certain temps avant que quelqu'un ne pense à exécuter une commande comme
type cp
(ce qui pourrait même ne pas être suffisant pour montrer que quelque chose ne va pas) pour découvrir que ce qui est exécuté n'est pas ce que vous pensez que c'est. Jusque-là, vous êtes coincé à "Tout est exactement comme ça devrait être mis à part le petit détail qu'il ne fonctionne pas!"Il aide essentiellement à empêcher les événements inattendus et évite également les situations où les mises à jour du système peuvent supprimer ou remplacer tout ou partie de vos packages installés "personnalisés". Ou, au contraire, certains programmes "personnalisés" peuvent remplacer les programmes fournis par le système sur lesquels de nombreux autres programmes ou scripts peuvent s'appuyer.
D'un point de vue administratif, le mélange de programmes / fichiers "système" et "facultatifs" dans les mêmes emplacements place votre système dans un état "non défini" ou au moins "ambigu".
Si vous avez un problème avec votre système ou un programme et avez besoin d'aide, l'une des premières questions qui vous est posée est "Qu'avez-vous changé?" et "Pouvons-nous désactiver temporairement certains de tous ces changements afin que nous sachions que nous examinons le vrai problème et pas seulement un symptôme d'autre chose."
Avec des emplacements séparés, ces changements peuvent être rapidement identifiés et tout ce que vous avez à faire (au moins pour les programmes eux-mêmes) est de supprimer temporairement leurs répertoires du chemin.
la source