Debian, RAID logiciel, LVM : questions autour de mon NAS

Debian, RAID logiciel, LVM : questions autour de mon NAS - Installation - Linux et OS Alternatifs

Marsh Posté le 25-12-2012 à 15:51:00    

Bonjour à tous et joyeux Noël !
 
J'ai acheté un HP MicroServer il y a quelques temps (juste avant la fin de l'ODR) mais jusqu'à présent je ne me suis pas sérieusement penché dessus.
 
Je profite des vacances de Noël pour transférer les données qui étaient précédemment sur un NAS Qnap, et c'est l'occasion de me rendre compte que tout n'est peut-être pas aussi propre qu'il le devrait. J'ai deux disques durs de 2 To en RAID 1 software (mdadm), et je viens de me rendre compte que l'un était en "83 Linux", l'autre en "fd Linux raid autodetect", ça ne me parait pas très propre.
 
Du coup je reprendrais bien les choses tant qu'il n'y a rien d'avancé, soit en reformatant les disques de 2 To et en recréant le RAID 1 puis les volumes LVM, les partitions et les montages, soit en réinstallant entièrement Debian. Mais j'aimerais tirer deux/trois choses au clair avant et avoir des avis d'autres utilisateurs de Linux !
 
1.
Quand j'ai installé Debian les deux disques dur n'étaient pas branchés, le SSD dédié au système était donc en /dev/sda. J'ai ensuite créé un volume RAID 1 et le SSD est maintenant en /dev/sdc, derrière les deux disques durs. Est-ce que ça ne risque pas de poser problème quand j'ajouterai des disques durs pour migrer vers un RAID 5 ? Quoi qu'il en soit y a-t-il un moyen "propre" de maintenir le SSD en /dev/sda, même s'il est sur le deuxième port Serial ATA ? (il ne peut pas être sur le premier) J'aimerais autant !
 
2.
Pour la création du RAID logiciel : Est-ce qu'il vaut mieux une table de partition GUID (parted) ou MBR (fdisk) ? Est-ce qu'il y a des optimisations à faire en matière de taille de secteurs ? Pour le moment j'ai :

Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

Et en matière de gestion de l'énergie ? Est-ce sûr d'activer la mise en veille ou le ralentissement de disques durs en RAID ? Est-ce activé par défaut ?
 
3.
Enfin pour LVM, il y a plusieurs écoles : certains créent d'abord une partition par disque dur et créent les volumes sur ces partitions, d'autres le font directement sur les "devices" (ce qui me parait plus simple). Que vaut-il mieux selon vous ?
 
Pour la suite, normalement je sais me débrouiller ! :-)
 
EDIT
Ah si, une dernière chose !
 
4.
Est-ce qu'il y a une arbo "standard" ou "recommandée" pour placer des partages destinés à être accessibles à plusieurs utilisateurs ? En gros je vais partager via Samba mon /home/romain protégé par login/password, mais j'aimerais avoir des partages "movies", "music" ou "pictures" accessibles à tous sans mot de passe, pour simplifier le paramétrage des équipements type lecteur multimédia notamment. Est-ce qu'il y a un dossier recommandé pour les placer ? Genre /export ou /srv/nfs4 en vue d'un partage en NFS ? Ou bien /share ?

Message cité 1 fois
Message édité par Romano2K le 25-12-2012 à 16:06:38
Reply

Marsh Posté le 25-12-2012 à 15:51:00   

Reply

Marsh Posté le 25-12-2012 à 16:09:20    

Pour le point 1, je te conseille d'utiliser les UUID (Universal Unique Identifier), identifiants uniques associés aux partitions lors de la création du système de fichiers.
La commande blkid permet d'afficher la liste de tes partitions avec les UUID
 
supermicro:/home/raf/scripts/hdd# blkid

Code :
  1. /dev/md0: LABEL="md0" UUID="9379f2be-e21d-4ace-a770-6871586c8dc9" TYPE="ext4"
  2. /dev/sdn1: LABEL="SYSTEM" UUID="b8086886-b77b-46da-983a-9165b4030472" TYPE="ext4"
  3. /dev/sdn5: TYPE="swap" UUID="99e3b1cd-9416-498a-a684-eabac2bd384c"
  4. /dev/sdm1: UUID="7fba5da7-0d77-4235-b29c-fd2dfccb96c4" TYPE="ext4"
  5. /dev/md1: UUID="ff9367c4-371e-4f3b-8faf-b21ace9b43b4" TYPE="ext4" LABEL="md1"


 
Tu peux aussi retrouvé ces UUID dans /dev/disk/by-uuid/

Code :
  1. lrwxrwxrwx 1 root root  9 Dec 24 23:19 9379f2be-e21d-4ace-a770-6871586c8dc9 -> ../../md0
  2. lrwxrwxrwx 1 root root 10 Dec 24 23:19 99e3b1cd-9416-498a-a684-eabac2bd384c -> ../../sdn5
  3. lrwxrwxrwx 1 root root 10 Dec 24 23:19 b8086886-b77b-46da-983a-9165b4030472 -> ../../sdn1


 
/etc/fstab

Code :
  1. UUID=9379f2be-e21d-4ace-a770-6871586c8dc9 /mnt/md0 ext4 user,users,noatime,exec 0 0
  2. UUID=ff9367c4-371e-4f3b-8faf-b21ace9b43b4 /mnt/md1 ext4 noatime,nodev,nosuid,noexec,rw 0 0


 
Pour le point 2, je ne me suis pas pris la tête:

Code :
  1. parted -a optimal /dev/sda
  2. p
  3. mklabel gpt
  4. mkpart primary ext4 0% 100%
  5. align-check optimal 1
  6. set 1 raid on
  7. q

Message cité 1 fois
Message édité par rapha3L le 25-12-2012 à 16:12:05
Reply

Marsh Posté le 25-12-2012 à 16:17:48    

Romano2K a écrit :


4.
Est-ce qu'il y a une arbo "standard" ou "recommandée" pour placer des partages destinés à être accessibles à plusieurs utilisateurs ? En gros je vais partager via Samba mon /home/romain protégé par login/password, mais j'aimerais avoir des partages "movies", "music" ou "pictures" accessibles à tous sans mot de passe, pour simplifier le paramétrage des équipements type lecteur multimédia notamment. Est-ce qu'il y a un dossier recommandé pour les placer ? Genre /export ou /srv/nfs4 en vue d'un partage en NFS ? Ou bien /share ?


 
Si ce sont des partitions que tu veux partager, je te conseille le /mnt/ mais tu peux aussi utiliser /media si tu veux :??:
Si ce sont des répertoires qui se trouve dans ton /home/romano2K/ , tu peux les laisser dedans je pense, tout se fera dans le fichier de conf de samba.  
En fait je sais pas trop s'il y a une norme pour ça...

Reply

Marsh Posté le 25-12-2012 à 16:40:37    

rapha3L a écrit :

Pour le point 1, je te conseille d'utiliser les UUID (Universal Unique Identifier), identifiants uniques associés aux partitions lors de la création du système de fichiers.
La commande blkid permet d'afficher la liste de tes partitions avec les UUID

 

supermicro:/home/raf/scripts/hdd# blkid

Code :
  1. /dev/md0: LABEL="md0" UUID="9379f2be-e21d-4ace-a770-6871586c8dc9" TYPE="ext4"
  2. /dev/sdn1: LABEL="SYSTEM" UUID="b8086886-b77b-46da-983a-9165b4030472" TYPE="ext4"
  3. /dev/sdn5: TYPE="swap" UUID="99e3b1cd-9416-498a-a684-eabac2bd384c"
  4. /dev/sdm1: UUID="7fba5da7-0d77-4235-b29c-fd2dfccb96c4" TYPE="ext4"
  5. /dev/md1: UUID="ff9367c4-371e-4f3b-8faf-b21ace9b43b4" TYPE="ext4" LABEL="md1"
 

Tu peux aussi retrouvé ces UUID dans /dev/disk/by-uuid/

Code :
  1. lrwxrwxrwx 1 root root  9 Dec 24 23:19 9379f2be-e21d-4ace-a770-6871586c8dc9 -> ../../md0
  2. lrwxrwxrwx 1 root root 10 Dec 24 23:19 99e3b1cd-9416-498a-a684-eabac2bd384c -> ../../sdn5
  3. lrwxrwxrwx 1 root root 10 Dec 24 23:19 b8086886-b77b-46da-983a-9165b4030472 -> ../../sdn1
 

/etc/fstab

Code :
  1. UUID=9379f2be-e21d-4ace-a770-6871586c8dc9 /mnt/md0 ext4 user,users,noatime,exec 0 0
  2. UUID=ff9367c4-371e-4f3b-8faf-b21ace9b43b4 /mnt/md1 ext4 noatime,nodev,nosuid,noexec,rw 0 0


Je peux utiliser des UUID au moment de la création de mon volume RAID 1 ? Puis plus tard lors de sa migration en RAID 5 ? Si toutes les références aux devices se font sous la forme d'UUID dans les fichiers de configuration, effectivement, les chemins /dev/sdX n'ont plus aucune importance.

 
rapha3L a écrit :

Pour le point 2, je ne me suis pas pris la tête:

Code :
  1. parted -a optimal /dev/sda
  2. p
  3. mklabel gpt
  4. mkpart primary ext4 0% 100%
  5. align-check optimal 1
  6. set 1 raid on
  7. q


Si tu fais un fdisk -l, qu'est-ce que tu obtiens comme "sector size" sur les disques durs "advanced format" ?

rapha3L a écrit :

Si ce sont des partitions que tu veux partager, je te conseille le /mnt/ mais tu peux aussi utiliser /media si tu veux :??:
Si ce sont des répertoires qui se trouve dans ton /home/romano2K/ , tu peux les laisser dedans je pense, tout se fera dans le fichier de conf de samba.
En fait je sais pas trop s'il y a une norme pour ça...

/mnt et /media ne sont-ils pas destinés aux montages temporaires ? /mnt pour des manipulations ponctuelles, /media pour des supports de stockage amovibles types disque durs ou clés USB, cartes mémoire and co. ? Y a-t-il une objection à ce que je crée un dossier du nom de mon choix à la racine ? Genre /share ?

 

En tout cas merci pour tes réponses !

 

D'autres, des idées ? :-)

Message cité 1 fois
Message édité par Romano2K le 25-12-2012 à 16:40:55
Reply

Marsh Posté le 25-12-2012 à 17:22:45    

Romano2K a écrit :

Je peux utiliser des UUID au moment de la création de mon volume RAID 1 ? Puis plus tard lors de sa migration en RAID 5 ? Si toutes les références aux devices se font sous la forme d'UUID dans les fichiers de configuration, effectivement, les chemins /dev/sdX n'ont plus aucune importance.


 
Pour créer un raid, on utilise les partitions non formatée (donc sans système de fichiers et donc sans UUID).
Je n'ai pas eu l'occasion de tester, mais je pense que mdadm saura retrouver ses petits même si les devices changent de lettre ;)
Je pourrais tester si tu veux.
 
 

Romano2K a écrit :

Si tu fais un fdisk -l, qu'est-ce que tu obtiens comme "sector size" sur les disques durs "advanced format" ?


 

Citation :

Disk /dev/sde: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sde1               1      243202  1953514583+  ee  GPT
Partition 1 does not start on physical sector boundary.


 

Citation :

supermicro:/# parted /dev/sde
GNU Parted 2.3
Using /dev/sde
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p
Model: ATA WDC WD20EARX-00M (scsi)
Disk /dev/sde: 2000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
 
Number  Start   End     Size    File system  Name     Flags
 1      1049kB  2000GB  2000GB               primary  raid
 
(parted)


 
 
 

Romano2K a écrit :

/mnt et /media ne sont-ils pas destinés aux montages temporaires ? /mnt pour des manipulations ponctuelles, /media pour des supports de stockage amovibles types disque durs ou clés USB, cartes mémoire and co. ? Y a-t-il une objection à ce que je crée un dossier du nom de mon choix à la racine ? Genre /share ?
 
En tout cas merci pour tes réponses !
 
D'autres, des idées ? :-)


 

Citation :

/mnt contient des répertoires utilisés comme points de montage pour les périphériques en mode block. Habituellement, on y trouve cdrom et floppy, respectivement utilisés pour le lecteur de CD-Rom et le lecteur de disquettes. Une mauvaise habitude considere à créer un répertoire /cdrom à la racine, mais il est plutôt conseillé de créer un lien symbolique entre /mnt/cdrom et /cdrom par ln -s /mnt/cdrom /cdrom


 
Tu peux faire ce que tu veux ( c'est du linux ;) ) mais je pense que rajouter des répertoires dans la racine n'est pas très "propre". /mnt est là pour :)
 
Un conseil? Si tu veux faire du raid logiciel avec du lvm, je te conseille fortement de t'entrainer (avec une VM par exemple) avec des petites partitions (sinon c'est long  :sleep: ).
Fait toi des scénarios catastrophes, genre remplacer un disque défectueux, réduction ou agrandissement de la grappe raid, ajouter ou supprimer un disque. L'idéal serait de te faire des petits tuto avec le rappel de toutes les commandes. Parce que quand t'auras une merde dans 6 mois, t'aurais ptet oublié des trucs :o
 
J'avais pensé à rajouter du LVM mais je n'en avais pas réellement besoin et surtout je ne voulais pas rajouter une couche supplémentaire qui risquerait de compliquer la situation lors d'un pépin.
 
 
 

Reply

Marsh Posté le 25-12-2012 à 17:27:24    

Une idée des perfs:
 

Citation :

/dev/md0:
 Timing cached reads:   19782 MB in  2.00 seconds = 9902.42 MB/sec
 Timing buffered disk reads: 1766 MB in  3.00 seconds = 588.63 MB/sec
 
 
supermicro/# mdadm -D /dev/md0
/dev/md0:
     Raid Level : raid6
     Array Size : 13674585344 (13041.10 GiB 14002.78 GB)
  Used Dev Size : 1953512192 (1863.01 GiB 2000.40 GB)
   Raid Devices : 9
  Total Devices : 9


 
 
 

Citation :


supermicro/# hdparm -tT /dev/md1
 
/dev/md1:
 Timing cached reads:   19810 MB in  2.00 seconds = 9916.12 MB/sec
 Timing buffered disk reads: 648 MB in  3.00 seconds = 215.95 MB/sec
 
 
supermicro/# mdadm -D /dev/md1
/dev/md1:
        Version : 1.2
  Creation Time : Tue Dec 25 09:24:04 2012
     Raid Level : raid5
     Array Size : 4395407616 (4191.79 GiB 4500.90 GB)
  Used Dev Size : 1465135872 (1397.26 GiB 1500.30 GB)
   Raid Devices : 4
  Total Devices : 4


Reply

Marsh Posté le 17-01-2013 à 19:35:40    

Re-bonjour rapha3l !
 
Désolé d'avoir laissé le topic en plan si longtemps, j'ai eu un long déplacement pro. J'aurais dû prévenir, mais je n'aurais pas pu avancer sur la question.
 
Aujourd'hui j'ai rallumé mon MicroServer pour la première fois depuis plusieurs semaines. Heureusement qu'il ne m'a pas couté cher car il n'a quasiment pas servi depuis que je l'ai !
 
Mais avant de mettre les mains dans le cambouis, je me suis fait un schéma sur papier pour repenser ma répartition des données.
 
Je ne suis plus sûr de vouloir m'embêter avec LVM, c'est vrai que j'ai peur de tout perdre à cause de mauvaises manipulations le jour où l'un des HDD tombera en panne.
 
Ce qui est sûr c'est que je vais réinstaller le système (/) sur le SSD.
 
Ensuite j'aimerais plusieurs dossiers à partager via SMB et/ou NFS, indépendants de tout le reste. Un dossier pour la photo, un autre pour la vidéo, un autre encore pour la musique. Tu m'as suggéré /mnt, mais ça m'imposerait de créer une partition par sous-répertoire, puisqu'il n'est pas recommandé de monter /mnt sur un volume, si ?
 
Du coup je pensais à /share (arbitraire) ou /srv (chemin par défaut de NFSv4).
 
Enfin je me demande encore si j'ai besoin de plus de quelques dizaines de gigaoctets pour /home, et s'il faut que je le mette sur mon RAID de disques durs de 2 To. Ce qui me retiens, c'est que si je mets à la fois /home et mes partages indépendants sur mon RAID, j'aurai plus de complications quand j'étendrai mon RAID, si je n'utilise pas LVM, non ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed