Les partitions sont très importantes sur le serveur Linux car elles vous offrent beaucoup de flexibilité, par exemple lors de la mise à niveau vers un disque dur plus gros.
Mais, combien de partitions dois-je créer lors de la construction d'une boîte Linux? Quelle taille dois-je définir pour chaque partition?
Enfin, mais non des moindres, quelles partitions dois-je avoir sur un disque séparé (je pense à / home, / var sur peut-être un lecteur plus rapide, etc.) et quelles partitions puis-je partager sur le même lecteur?
Réponses:
La planification d'une bonne structure de partitionnement dépend fortement de savoir réellement comment vous allez utiliser le «serveur». Tout conseil aléatoire qui ne prend pas les services réels qui seront fournis ne sera pas particulièrement utile.
Par exemple, s'il s'agit d'une boîte basée sur Debian qui sera utilisée pour mysql, vous voudrez peut-être des partitions séparées pour /, / var et / var / lib / mysql.
Est-ce que ce sera un serveur de fichiers avec beaucoup de stockage partagé? Vous souhaiterez peut-être des partitions /, / home et / srv.
Pour une boîte exécutant uniquement Squid, vous pouvez souhaiter une partition pour / et une partition sur un disque rapide pour la bobine Squid.
Lorsque vous planifiez vos partitions, il est très utile d'avoir une bonne compréhension de la norme de hiérarchie du système de fichiers et si / comment la distribution que vous avez choisie s'écarte de la norme.
L'utilisation de LVM peut vous permettre de changer d'avis plus facilement à l'avenir et d'ajuster vos partitions sans avoir à redémarrer, et sa capacité à créer des instantanés peut être très simple pour créer de bonnes sauvegardes.
la source
Je crée toujours ces partitions, et depuis l'année dernière, toujours sur LVM:
L'un des plus importants est
/var
- s'il s'agit d'une partition distincte, alors quand elle se remplit, vous ne planterez pas votre partition racine. Bien que je n'ai jamais fait cela, certains en font un séparé/usr
afin de pouvoir le monter en lecture seule.et je crée parfois ces partitions:
Le raisonnement est qu'il n'est pas toujours possible de démarrer à partir d'une partition RAID ou LVM. Ainsi,
/boot
peut être une simple partition ext3, permettant/
d'être plus avancée.Si j'ai un grand nombre de fichiers volumineux, je vais parfois créer une partition spécifique pour ces gros fichiers afin que le système de fichiers puisse être modifié pour être efficace pour stocker des fichiers volumineux. Certaines personnes, si elles serviront NFS à partir d'un serveur, créeront une partition distincte pour leurs partages NFS ou même une partition distincte pour chaque partage NFS. Cela dépend de vos besoins.
Pourquoi LVM? Comme je l'ai mentionné dans des réponses ailleurs, mais j'ai oublié de le mentionner ici, il est beaucoup plus facile de changer d'avis plus tard et d'étendre une partition. Cela a déjà sauvé mes fesses.
Ce sont des directives générales. Bien sûr, je m'attends à ce que si votre serveur a des besoins spéciaux, vous en tiendrez compte et ferez une partition reflétant ces besoins.
la source
En supposant que vous construisez une machine qui va durer un certain temps, serait difficile à reconstruire et doit être assez flexible, vous pourriez aimer un schéma similaire au suivant:
Installez au moins deux disques physiques, de même taille; pour les besoins de cet exemple, je vais supposer des disques SATA de 500 Go, mais les principes fonctionnent très bien avec d'autres tailles de disques.
Partitionnez chaque lecteur comme suit:
L'objectif est d'avoir une partition dinky de 500 Mo à l'avant, une partition importante au milieu pour le système d'exploitation et les applications, et la majeure partie du disque à l'arrière pour des données supplémentaires.
Créez un ensemble SW RAID 1
/dev/md0
, à partir de/dev/sda1
et/dev/sdb1
; construire des ensembles SW RAID 1 supplémentaires/dev/md1
et à/dev/md2
partir des paritions correspondantes.Format
/dev/md0
ext3; ce sera/boot
.Format
/dev/md1
et/dev/md2
comme volumes physiques LVM.Créez un groupe de volumes LVM
vg_system
, qui contient/dev/md1
.Créez des volumes LVM appropriés à l'intérieur
vg_system
pour vos différentes partitions de système d'exploitation; à tout le moins, vous en aurez besoinswap
,/var
de quelques Go, et/
de 10 Go environ. REMARQUE : n'allouez pas toutvg_system
! Lorsque vous décidez plus tard que vous souhaitez augmenter la taille de\var
, ou que vous souhaitez ajouter un/opt
ou autre, alors vous voudrez cet espace supplémentaire.Créez un groupe de volumes LVM
vg_data
, qui contient/dev/md2
.Créez des volumes LVM à l'intérieur
vg_data
comme vous le souhaitez; à tout le moins, vous voudrez un/home
volume important , et vous voudrez peut-être des volumes supplémentaires pour, par exemple, des spools de messagerie, ou des bases de données, ou des racines Web, ou toute autre donnée qui ne fait pas partie du système d'exploitation. Encore une fois, ne pas allouer toutvg_data
, pour des raisons similaires à celles énumérées ci-dessus.Les avantages de cette stratégie sont les suivants:
Il tolère les pannes matérielles; l'un ou l'autre disque peut tomber en panne sans provoquer de défaillance du système, et si vous investissez dans un contrôleur remplaçable à chaud, vous pouvez récupérer sans temps d'arrêt.
Il est évolutif et évolutif; Lorsque vous achetez des disques de 2 To quelques années plus tard, vous pouvez les insérer dans la machine, les transformer en un autre ensemble RAID SW, le formater en tant que volume physique LVM, l'ajouter au groupe de volumes qui a besoin de plus d'espace (probablement
lv_data
), puis utiliserpvmove
pour migrer vos données des anciens disques vers les nouveaux. De plus, les mises à jour majeures du système d'exploitation peuvent être rendues beaucoup moins douloureuses; si vous devez réinstaller le système d'exploitation pour une mise à niveau majeure (ahem Red Hat :(), vous pouvez le faire tout en préservant les répertoires personnels (et les spools de messagerie et tout ce que vous y mettezvg_data
).Les inconvénients de cette stratégie sont peu nombreux; Je suppose que c'est un peu complexe, et vous prenez un coup sur les performances d'écriture à cause du RAID 1. Cependant, je construis des postes de travail et des serveurs autonomes selon ces principes depuis quelques années maintenant, et d'après mon expérience chaque fois que je ne 'construisez pas une machine dans ce sens, avant longtemps j'aurais aimé.
-steve
PS Je dois ajouter que si vous avez l'infrastructure en place pour provisionner rapidement et sans douleur une nouvelle machine, alors un système comme celui-ci est excessif; plutôt que de bricoler avec des ensembles RAID et LVM, reconstruisez simplement la machine si vous avez besoin de quelque chose de changé.
la source
Pendant des années, chaque ordinateur que j'ai utilisé a été un système à double démarrage, et du côté de Linux, je me suis plutôt tenu à ce schéma (je parle ici de postes de travail personnels, pas de serveur, donc votre kilométrage peut varier)
Pour ma dernière mise à niveau, j'ai fait une installation à partir de zéro, en effaçant ma
/
partition. Cela m'a fait penser qu'une partition/opt
ou une/usr/local
partition séparée aurait été bien, m'épargnant les tracas de réinstaller tous les trucs que j'y ai mis (java, eclipse ... Je ne me soucie généralement pas de ceux distribués).la source
En plus des partitions mentionnées par Eddie, je crée généralement deux autres partitions distinctes
/ tmp - pour les mêmes raisons que vous avez créé une partition / var distincte (j'ai déjà eu l'espace temporaire rempli). Je vais généralement avec 1-2 Go
/ usr / local - Cela vous permet de mettre à niveau et de nettoyer / usr au besoin sans faire exploser tous vos logiciels installés séparément. La taille ici dépend de la quantité de logiciels externes que vous installez. Je vais généralement avec environ 10 Go, mais je trouve que c'est un peu petit ces jours-ci.
Je fais toujours / home dernier et je remplis le reste du disque avec.
Sur la partition / boot, je n'ai jamais dépassé 100 Mo et je n'ai jamais rencontré de problèmes d'espace (je nettoie éventuellement les anciens noyaux). Cela peut vraiment être très petit.
N'oubliez pas non plus une partition de swap.
la source
Pour la plupart des machines, je fais
Dans certains cas, cela devra être changé, mais je suis assez catégorique sur le fait que les utilisateurs n'obtiennent pas plus de 1 Go d'espace sur un serveur. S'ils en ont besoin de plus, ils peuvent utiliser / tmp, étant entendu qu'il sera supprimé via cron tous les soirs.
la source
En supposant que vous n'utilisez pas de RAID matériel là-bas - sous Linux, j'utiliserais toujours LVM en plus de RAID. Même pour une configuration à disque unique. La raison étant que vous avez la possibilité d'ajouter plus d'espace de stockage (en étendant le groupe LVM) ou de modifier les options de redondance (par exemple, transformer une configuration "bizarre" de disque unique raid1 en configuration miroir ou même en RAID10 avec un peu de travail).
Pour répondre à votre question, j'ai généralement quelque chose de similaire à ceci pour un serveur générique. À partir de 2 disques (disons un Dell 1RU), tous deux partitionnés comme:
Ensuite, nous créons tout le volume en tant que volumes LVM: * / * / var * / tmp * / home * / opt
J'éviterais de créer trop de systèmes de fichiers car c'est difficile à gérer. Si vous manquez de disque, vous finirez par avoir de l'espace libre sur de nombreux systèmes de fichiers mais pas assez pour travailler.
/ home et / tmp sur un système de fichiers séparé est toujours une bonne idée; en général, je ne sépare / opt que si je prévois d'y mettre beaucoup de choses. (NFS pourrait être une meilleure option pour / opt si vous avez beaucoup de serveurs qui nécessitent la même pile logicielle)
En bref, utilisez LVM pour tout sauf si vous avez une raison de ne pas le faire - de cette façon, vous avez la possibilité de changer.
Utilisez également un serveur de journaux pour que les journaux ne remplissent pas votre / var!
la source
Groupe de volumes - rootvg
Groupe de volumes - datavg
Vous pouvez créer un / usr séparé pour votre logiciel, mais dans mon cas, la boîte est réinstallée, donc pas besoin d'obtenir sa propre partition.
la source