Perangkat / dev / sdb1 tidak ditemukan (atau diabaikan dengan penyaringan)

10

Saya mencoba menambahkan volume fisik untuk digunakan untuk menambah grup volume dan dengan demikian LV di dalamnya. Sayangnya saya mendapatkan kesalahan berikut.

[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

Saya sangat menghargai bantuan yang bisa Anda berikan. Ini akan menjadi pertama kalinya saya harus menambahkan pv dan ketika meneliti masalah ini saya tidak menemukan apa pun yang banyak membantu.

OS adalah centos 6 - 64bit

Filter

# 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/.*/" ]

Berpisah:

parted /dev/sdb "unit s" "print"
Model: Adaptec AdaptecRAID5 (scsi)
Disk /dev/sdb: 38996510720s
Sector size (logical/physical): 512B/512B
Partition Table: gpt
awmusic12635
sumber
Oke, jadi filter apa yang Anda miliki /etc/lvm.conf? Dan saat Anda melakukannya, perlihatkan tabel partisi Anda.
Michael Hampton
Tunjukkan ini dengan grep filter /etc/lvm.confdanparted /dev/sdb "unit s" "print"
suprjami
Filter: pastie.org/8201254
awmusic12635
Parted: pastie.org/8201275
awmusic12635

Jawaban:

7

Tipe partisi dalam MBR diatur ke " ee" yang berarti bahwa harus ada tabel partisi GPT pada disk, tetapi seperti yang partedditunjukkan, tidak ada tabel GPT sama sekali.

Anda perlu:
a) menggunakan parted untuk membuat partisi GPT, dan menggunakan partisi itu sebagai PV
b) menghapus tabel partisi dari MBR sama sekali dan hanya menggunakan perangkat blok /dev/sdbsebagai PV

suprjami
sumber
Saya menggunakan parted untuk membuat partisi GPT. Saya kemudian pergi untuk memformatnya: mkfs.ext4 / dev / sdb1 mke2fs 1.41.12 (17-May-2010) mkfs.ext4: Ukuran perangkat / dev / sdb1 terlalu besar untuk diekspresikan dalam 32 bit menggunakan blocksize 4.096.
awmusic12635
@ awmusic12635 Anda tidak akan memformat partisi ini, Anda akan menggunakan pvcreate untuk mengubahnya menjadi volume fisik, lvcreate untuk membuat volume logis dari itu dan kemudian Anda akan memformat volume logis dengan sistem file.
DerfK
Anda menggunakan EL6. Ukuran sistem file ext4 maksimum yang mungkin dibatasi hingga 16Tb karena EL6 mkfs tidak tahu tentang 64bitflag sistem file. Jika Anda memiliki EL7, Anda dapat membuat sistem file ext4 19Tb. Baik gunakan sistem file lain seperti XFS, atau lakukan apa yang dikatakan @DerfK dan buat LVM Logical Volumes lebih kecil.
suprjami
3

Jenis perangkat blok juga bisa menjadi masalah. Jika Anda menjalankan pvcreatedengan -vvvvdan Anda melihat kesalahan seperti "Skipping: tidak dikenal LVM jenis perangkat 251", maka Anda harus menambahkan angka ajaib ke daftar perangkat yang diperbolehkan.

Lihat saja tipe perangkat untuk nomor dalam /proc/devicesdan tambahkan ke devicesbagian konfigurasi lvm /etc/lvm/lvm.conf, misalnya:

types = [ "bcache", 251 ]

Itu saja, sekarang Anda dapat menggunakan pvcreateseperti yang diharapkan.

Phillipp
sumber
The -vvvvmembantu saya untuk mengetahui bahwa dalam naskah, di mana pvcreateitu segera setelah parted /dev/nvme0n1 set 1 lvm onada pendek, tapi saat penting saat perangkat /dev/nvme0n1p1diciptakan oleh udev. Jadi, pvcreate benar - benar tidak dapat menemukannya, mengajukan dengan kesalahan yang diberikan, sementara mengeluarkan perintah yang sama dalam sebuah shell selesai dengan sukses.
Timur Bakeyev
@TimurBakeyev oke, itu tangkapan yang bagus ;-)
Phillipp
2

Output parted Anda menunjukkan bahwa Anda tidak memiliki partisi, sehingga /dev/sdb1tidak ada. Anda harus membuat partisi terlebih dahulu.

Michael Hampton
sumber
Aneh, sepertinya fdisk dan parted memberikan output yang berbeda. Terima kasih
awmusic12635
2

Saya menemukan bahwa saya perlu me-reboot server atau menjalankan 'partprobe / dev / sdaX' agar pvcreate mendapat informasi yang benar tentang partisi tersebut.

Juga, fdisk tidak lvm sadar sehingga membagikan kesalahan tentang partisi membuat saya berpikir ada masalah yang lebih besar ketika itu tidak terjadi.

flickerfly
sumber
2

Silakan jalankan perintah di bawah ini sebelum pvcreate

partprobe
partprobe /dev/sdb

Kemudian jalankan perintah Anda

pvcreate /dev/sdb1

Catatan: Terkadang Anda perlu memperbarui kernel Anda secara manual. Karena itulah diperlukan perintah di atas.

Mahmud Riad
sumber