Périphérique / dev / sdb1 introuvable (ou ignoré par filtrage)


10

J'essaie d'ajouter un volume physique à utiliser pour ajouter des groupes de volumes et donc LV à l'intérieur. Malheureusement, j'obtiens l'erreur suivante.

[root@server ~]# pvcreate /dev/sdb1
Device /dev/sdb1 not found (or ignored by filtering).

[root@server ~]# fdisk -l /dev/sdb

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdb: 19966.2 GB, 19966213488640 bytes
255 heads, 63 sectors/track, 2427420 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1      267350  2147483647+  ee  GPT

J'apprécierais toute aide que vous pourriez apporter. Ce serait ma première fois d'avoir à ajouter un pv et lors de la recherche sur le problème, je n'ai rien trouvé de très utile.

OS est centos 6 - 64bit

Filtres

# By default we accept every block device:
filter = [ "a/.*/" ]

# Exclude the cdrom drive
# filter = [ "r|/dev/cdrom|" ]

# When testing I like to work with just loopback devices:
# filter = [ "a/loop/", "r/.*/" ]

# Or maybe all loops and ide drives except hdc:
# filter =[ "a|loop|", "r|/dev/hdc|", "a|/dev/ide|", "r|.*|" ]

# Use anchors if you want to be really specific
# filter = [ "a|^/dev/hda8$|", "r/.*/" ]

Séparé:

parted /dev/sdb "unit s" "print"
Model: Adaptec AdaptecRAID5 (scsi)
Disk /dev/sdb: 38996510720s
Sector size (logical/physical): 512B/512B
Partition Table: gpt

OK, alors quels filtres avez-vous /etc/lvm.conf? Et pendant que vous y êtes, montrez-nous votre table de partition.
Michael Hampton

Montrez-les avec grep filter /etc/lvm.confetparted /dev/sdb "unit s" "print"
suprjami


Réponses:


7

Le type de partition dans le MBR est défini sur " ee", ce qui signifie qu'il devrait y avoir une table de partition GPT sur le disque, mais comme partedindiqué, il n'y a pas du tout de table GPT.

Vous devez soit:
a) utiliser parted pour créer une partition GPT, et utiliser cette partition comme PV
b) supprimer complètement la table de partition du MBR et utiliser simplement le périphérique de bloc /dev/sdbcomme PV


J'ai utilisé parted pour créer une partition GPT. Je suis ensuite allé le formater: mkfs.ext4 / dev / sdb1 mke2fs 1.41.12 (17 mai 2010) mkfs.ext4: Taille du périphérique / dev / sdb1 trop grande pour être exprimée en 32 bits avec une taille de bloc de 4096.
awmusic12635

@ awmusic12635 vous ne formaterez pas cette partition, vous utiliserez pvcreate pour la transformer en un volume physique, lvcreate pour créer des volumes logiques à partir de celle-ci et ensuite vous formaterez les volumes logiques avec un système de fichiers.
DerfK

Vous utilisez EL6. La taille maximale possible du système de fichiers ext4 est limitée à 16 To car EL6 mkfs ne connaît pas l' 64bitindicateur du système de fichiers. Si vous aviez EL7, vous pourriez créer un système de fichiers ext4 de 19 To. Soit utiliser un autre système de fichiers comme XFS, soit faire ce que @DerfK a dit et créer des volumes logiques LVM plus petits.
suprjami

3

Le type de périphérique de bloc peut également être un problème. Si vous exécutez pvcreateavec -vvvvet que vous voyez une erreur comme «Ignorer: type de périphérique LVM non reconnu 251», vous devez ajouter le numéro magique à la liste des périphériques autorisés.

Recherchez simplement le type de périphérique pour le numéro /proc/deviceset ajoutez-le à la devicessection de la configuration lvm /etc/lvm/lvm.conf, par exemple:

types = [ "bcache", 251 ]

Voilà, vous pouvez maintenant utiliser pvcreatecomme prévu.


Le -vvvvm'a aidé à découvrir que dans le script, où pvcreatele suivait immédiatement parted /dev/nvme0n1 set 1 lvm onun court, mais un moment remarquable alors que le dispositif /dev/nvme0n1p1est recréée par udev. Donc, pvcreate je ne pouvais vraiment pas le trouver, le dépôt avec l'erreur donnée, tout en émettant la même commande dans un shell s'est terminé avec succès.
Timur Bakeyev

@TimurBakeyev bien, QUE est une bonne prise ;-)
Phillipp

2

Votre sortie séparée montre que vous n'avez aucune partition, donc /dev/sdb1n'existe pas. Vous devez d'abord créer la partition.


Bizarre, il semble que fdisk et parted ont donné des sorties différentes. Merci
awmusic12635

2

J'ai trouvé que j'avais besoin de redémarrer le serveur ou d'exécuter «partprobe / dev / sdaX» pour que pvcreate soit correctement informé de la partition.

En outre, fdisk n'est pas au courant de LVM, donc il distribuait des erreurs sur les partitions, ce qui me faisait penser qu'il y avait un problème plus important alors que ce n'était tout simplement pas le cas.


2

Veuillez exécuter la commande ci-dessous avant pvcreate

partprobe
partprobe /dev/sdb

Exécutez ensuite votre commande

pvcreate /dev/sdb1

Remarque: Parfois, vous devez mettre à jour votre noyau manuellement. C'est pourquoi la commande ci-dessus est requise.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.