Pourquoi le répertoire de base créé est-il plus grand que le répertoire racine?

Je viens d’installer Ubuntu récemment et, selon les suggestions en ligne, j’ai créé mon répertoire personnel beaucoup plus volumineux que le répertoire racine. Cependant, j’ai constaté que le système installe automatiquement les logiciels dans le répertoire racine, ce qui prend beaucoup d’espace, et que mon répertoire personnel est presque vide.

Je suis un peu confus pourquoi il est créé plus gros. Le logiciel doit-il plutôt être installé dans le répertoire de base? Et où dois-je placer les dossiers des fichiers binarys prédéfinis téléchargés à partir d’autres sources?

Avant de répondre directement à votre question, il est important de bien distinguer la distinction entre un répertoire et une partition. Une seule partition peut contenir plusieurs répertoires. Sous Linux, les partitions contenant des systèmes de fichiers sont normalement montées (rendues accessibles) à l’aide d’un répertoire en tant que sharepoint assembly. Ainsi, /home pourrait être simplement un répertoire sur la partition racine ( / ) ou /home pourrait être le sharepoint assembly d’une partition séparée. Votre question utilise le mot “répertoire” dans un contexte qui montre clairement que vous vouliez dire “partition”. Je clarifie cette distinction parce que cette distinction est importante pour faire partie de la réponse à votre question. En fait, il existe une autre complication, car le gestionnaire de volumes logiques (LVM) permet à une partition de contenir plusieurs systèmes de fichiers montés à différents endroits. Pour les éléments ci-dessous, cependant, je suppose que vous n’utilisez pas LVM, de sorte que “partition” et “système de fichiers” peuvent également être considérés (sauf pour la partition de swap).

Les tailles optimales des différentes partitions dépendent de ce que vous comptez installer. Par exemple, avec des partitions séparées (racine) ( / ), /home et swap, mais pas d’autres partitions (Ubuntu):

  • Si vous installez beaucoup de logiciels, vous aurez besoin d’une racine plus grande ( / ) que si vous n’installez que peu de logiciels. Malgré tout, la demande de logiciels dépasse rarement 30 Go.
  • Certains non-logiciels vont à la racine ( / ). Cette catégorie comprend les fichiers journaux, les bases de données (qui se trouvent normalement dans /var ), le contenu des serveurs Web et le répertoire temporaire à l’échelle du système ( /tmp ). Si vous avez de gros besoins pour l’une de ces choses, vous aurez peut-être besoin d’une plus grande partition racine ( / ) ou de scinder l’emplacement de ces gros répertoires en leurs propres partitions. Vous pouvez séparer /var , ou un sous-répertoire de celui-ci, en une partition distincte si vous prévoyez de stocker d’énormes fichiers, comme c’est peut-être le cas sur certains types de serveurs réseau. De telles demandes non logicielles sur root ( / ) sont généralement modestes pour les systèmes de bureau, mais elles peuvent être importantes pour les serveurs de réseau.
  • Pour un ordinateur de bureau typique, l’espace utilisé sur la racine ( / ) n’augmentera pas beaucoup avec le temps, car les fichiers personnels n’y iront pas – uniquement les programmes binarys, les fichiers journaux (qui sont retournés et supprimés à temps) et d’autres fichiers système. La consommation de racine ( / ) augmente principalement parce que vous installez un nouveau logiciel. Si vous installez un programme et que vous découvrez ensuite que vous ne l’utilisez pas, sa désinstallation peut s’avérer utile, en particulier si root ( / ) est en train de se remplir.
  • Le répertoire /home est l’endroit où réside la grande majorité des fichiers utilisateur. (Certains fichiers temporaires vont dans /tmp et il y a d’autres exceptions, bien qu’au moins un d’entre eux soit très important – voir le point suivant.) Sur une installation uniquement avec Ubuntu, cela signifie que vos photos personnelles, fichiers MP3 , vidéos, documents de traitement de texte, cache de navigation sur le Web, etc., résident tous dans /home . Ainsi, lorsque vous utilisez l’ordinateur, les besoins d’espace sur /home ont tendance à augmenter avec le temps. Vous copiez des photos depuis votre appareil photo numérique ici, ajoutez de la musique ici, enregistrez des documents de traitement de texte ici, etc.
  • Une complication réside dans le fait que de nombreuses installations Ubuntu concernent des ordinateurs qui démarrent simultanément avec Windows. Sur ces systèmes, la plupart des fichiers de données utilisateur résident sur la partition Windows C: et non sur la partition Ubuntu /home . Si vous continuez avec ce modèle, la partition /home contiendra relativement peu de fichiers et devrait donc probablement être plus petite que la partition racine ( / ); ou il pourrait être entièrement éliminé, en laissant le répertoire /home sur la partition racine ( / ).

Ainsi, si Ubuntu est votre seul système d’exploitation et que vous installez sur un disque dur moderne ou même un disque SSD (200 Go ou plus, et dépassant souvent 1 To), il est probable que /home devrait être beaucoup plus volumineux que root ( / ).

OTOH, si votre disque est exceptionnellement petit par rapport aux normes modernes ou si vous utilisez un double amorçage avec Windows et que vous souhaitez conserver la plupart de vos fichiers (en particulier les plus gros) accessibles aux deux systèmes d’exploitation, il est probablement préférable d’omettre un autre dossier /home partition (en laissant ses fichiers dans la partition racine [ / ] sous la forme d’un simple répertoire /home ) ou conservez une partition /home relativement petite, peut-être même plus petite que la racine ( / ).

Une autre variante mérite d’être mentionnée: dans une configuration à double amorçage, les experts préfèrent souvent mettre de côté une ou plusieurs partitions distinctes pour stocker les fichiers partagés entre les systèmes d’exploitation. Autrement dit, vous aurez la partition racine Ubuntu ( / ) et peut /home être /home , la partition Windows C: pour contenir Windows et ses fichiers de programme, ainsi qu’une autre partition (peut-être D: sous Windows et /home/{yourusername}/shared dans Ubuntu) pour contenir des fichiers partagés. L’avantage de cela est que vous pouvez restreindre l’access à la partition Windows C: partir de Linux, ce qui réduit le risque qu’un bogue ou une erreur de l’utilisateur mette fin à l’installation de Windows. Vous pourrez également procéder à une réinstallation complète de Windows sans effacer la partition de données partagées. Vous pouvez utiliser n’importe quel système de fichiers de votre choix sur la partition de données partagées, à condition que les deux systèmes d’exploitation le comprennent bien. NTFS est le choix le plus courant pour cela, mais vous pouvez utiliser FAT si ses limitations ne vous dérangent pas. et certains systèmes de fichiers Linux ont des pilotes Windows, vous pouvez donc en utiliser un si vous préférez.

Avec ces généralités à l’écart, il est utile de considérer certaines tailles réelles:

  • root ( / ) – Ubuntu peut s’installer sur une partition racine ( / ) d’environ 5 Go, IIRC; Cependant, si vous commencez à installer de gros programmes, il peut facilement atteindre deux ou trois fois cette valeur. Ainsi, la plage habituelle recommandée est de l’ordre de 10 à 30 Go, mais elle peut aller encore plus haut que certains utilisateurs, mais pour la majorité des utilisateurs “normaux”, même 20 Go sont probablement suffisants si vous disposez d’un partition séparée /home .
  • swap – Je n’ai pas beaucoup parlé de swap, mais je le ferai pour cette question de dimensionnement. Autrefois (il y a environ 15 ans), la recommandation générale était de créer un espace d’échange d’environ deux fois la taille de votre RAM. Aujourd’hui, c’est généralement exagéré. Si vous utilisez la suspension sur disque (qui n’est pas configurée dans Ubuntu par défaut), l’espace de permutation doit être au moins aussi grand que votre RAM disponible. Si vous n’utilisez pas cette fonctionnalité, elle peut être plus petite que cela, mais il est souhaitable de disposer d’ un espace de swap, car cela permet au kernel d’optimiser l’utilisation de la mémoire RAM pour améliorer les performances. Notez également que l’espace de swap peut être un fichier sur un système de fichiers plutôt que (ou en plus) une partition de swap. (IIRC, la suspension sur disque nécessite cependant une partition de swap.) Globalement, dans la plupart des cas, je dirais que la moitié de votre taille de RAM est probablement une taille décente pour une partition de swap.
  • /home – En première approximation, une fois que vous avez déterminé l’espace dont vous avez besoin pour root ( / ) et swap, vous devez tout donner à /home . L’exception serait s’il rest très peu d’espace. Par exemple, si vous double-amorcez avec Windows et souhaitez donner à Linux seulement 30 Go, il ne vous restra presque rien au moment où vous allouez, disons, 20 Go à la racine ( / ) et 4 Go à échanger. Quelque chose de similaire se produirait si vous installez sur une tablette minuscule ou un très vieil ordinateur avec un petit disque. Dans ce cas, vous pouvez également omettre /home .
  • Autres partitions – Dans certains cas, vous voudrez peut-être d’autres partitions pour /var , /tmp , etc. Celles-ci ne sont toutefois pas nécessaires pour les configurations de bureau classiques. Des partitions minuscules (~ 500 Mo) /boot et / ou /boot/efi sont parfois nécessaires également, mais si vous ne les avez pas déjà et que votre système démarre, ne vous en faites pas. Comme indiqué précédemment, vous souhaiterez peut-être une partition de données partagées à utiliser avec Windows. Si vous souhaitez partager la plupart de vos données de cette manière, vous pouvez omettre /home et allouer de l’espace à une partition de données partagées. (Vous ne devez pas monter de volume NTFS ou FAT sur /home car Ubuntu repose sur des fonctionnalités non fournies par ces systèmes de fichiers pour certains fichiers de votre répertoire personnel. Vous pouvez toutefois monter une partition de données partagées dans un sous-répertoire de votre répertoire personnel. Si Si vous utilisez des pilotes de système de fichiers Windows pour des systèmes de fichiers Linux, vous pouvez également donner à Windows l’access à votre partition Ubuntu /home .)

En fin de compte, la conception d’un système de partitionnement optimisé dépend d’une connaissance intime de vos propres besoins, de l’espace disque disponible et de ce qui a déjà été utilisé (par un autre système d’exploitation, par exemple). Si vous vous en tenez à Ubuntu, vous vous en rendrez compte par vous-même; mais il n’y a pas de solution unique, donc je ne peux pas vous donner simplement un ensemble de chiffres. Même des généralités comme si /home doit être plus grand ou plus petit que la racine ( / ) varient d’une installation à l’autre – bien que si /home soit plus petit que la racine ( / ) lorsque vous suivez mes grandes lignes ci-dessus, il y a de fortes chances (mais pas la certitude) qu’il serait préférable d’omettre /home et d’augmenter la taille de la racine ( / ) de ce montant.

Les logiciels dans les dissortingbutions Linux actuelles ont tendance à être vraiment petits. La raison en est que la façon dont le logiciel est empaqueté (en utilisant apt ou rpm ), tous les logiciels partagent un grand nombre de composants communs.

C’est différent de OSX ou Windows, où chaque logiciel installera toutes les bibliothèques requirejses.

Et aujourd’hui, de nombreux gestionnaires de jeux (tels que Steam) et des bibliothèques de développement (telles que RVM) stockent des données et des bibliothèques dans votre dossier personnel. De plus, vous aurez probablement des films de haute qualité (environ 5 Go), des images (vraiment grandes des mobiles actuels) et de la musique.

J’ai un disque dur de 1 To. J’ai partitionné manuellement: seulement 100 Go sont réservés à root, avec seulement 14,0% utilisés. De l’autre côté (hors swap ), tout est le dossier de départ, qui est plein à 79%.

Remarque supplémentaire : L’inconvénient de cette gestion de progiciels est que cela demandera un peu plus de travail de la part du créateur du programme d’installation, ainsi qu’une enquête sur la bibliothèque utilisée par votre dissortingbution et la version exacte. Pour imiter la manière d’OSX et de Windows (c’est-à-dire fournir la stack de bibliothèque complète requirejse par l’application), certaines sociétés Linux (telles que Canonical et Red Hat) ont créé de nouveaux gestionnaires de logiciels, tels que flatpack et snaps ), avec certains avantages, tels que capable d’être installé dans différentes dissortingbutions, utiliser un environnement en bac à sable, etc.

La taille du système de fichiers / (racine) de votre système par rapport à celui qui sauvegarde /home dépend en grande partie de la façon dont vous (avez l’intention) d’utiliser les deux. Regardons quelques alternatives ci-dessous.

1 Cas d’utilisation du bureau Linux le plus courant

La grande majorité des utilisateurs d’Ubuntu installent le système de base ainsi que quelques applications (nécessitant un espace non négligeable), par exemple pour la navigation sur le Web, la lecture multimédia, la productivité bureautique, l’édition graphique ou le développement de logiciels, et y stocker leurs données personnelles. /home , par exemple des documents, des images / photos, de la musique ou des vidéos.

L’espace requirejs par le premier (Ubuntu lui-même) est facilement satisfait avec 20 à 30 gigaoctets, tandis que le dernier (données utilisateur) peut rapidement s’accumuler, en particulier pour les contenus multimédias, jusqu’à la gamme de téraoctets.

Par exemple, sur mon système, j’ai:

 $ df -h /home ~/medien Filesystem Size Used Avail Use% Mounted on /dev/sda9 500G 264G 218G 55% /home /dev/mapper/media 1,4T 1,1T 304G 78% /home/david/media 

2 bureau de jeu

Les jeux changent un peu les choses car les grands titres prennent souvent plusieurs gigaoctets, voire des dizaines de gigaoctets 1 .

Sur Linux, les jeux sont généralement installés dans l’un des emplacements suivants:

  • /opt et /usr/local lorsqu’ils sont installés via des installateurs “personnalisés”,
  • /usr installé à partir d’un référentiel de packages 2 ,
  • $HOME/.local/share/Steam/SteamApps lors d’une installation via Steam sur le chemin d’installation par défaut, ou
  • $HOME/.wine ou ~/.PlayOnLinux/wineprefix pour les jeux Windows installés via Wine ou son interface frontale PlayOnLinux.

En fonction de cela, un joueur Linux peut avoir des besoins en espace différents de ceux du cas ci-dessus 1.

Quoi d’autre?

Si votre cas d’utilisation diffère de manière significative de ce qui précède, vous aurez probablement différentes quantités de données dans différentes zones de l’arborescence de répertoires, ce qui signifie des exigences de taille différentes si vous utilisez plusieurs systèmes de fichiers pour votre installation Ubuntu.

Une autre utilisation que je vois plus fréquemment de nos jours est ce que les Chromebooks de Google sont conçus pour faire: au-delà d’un système de base, il n’ya guère plus qu’un navigateur Web et peut-être un éditeur de texte, une visionneuse d’images et une application de lecture multimédia sur le système, tandis que tout le rest, utilisateur. les données, ainsi que d’autres applications, sont stockées en ligne et accessibles via le navigateur Web.


1 Sous Linux, c’est; Les titres récents de Windows sont en avance d’un ordre de grandeur.

2 Il n’y a pas beaucoup de titres de jeux spacieux dissortingbués de cette façon. Le seul grand titre auquel je puisse penser est 0 AD avec un taux de connexion d’environ 1,5 Go.