Как убрать лишние устройства из вывода fdisk -l ?
В бубунте fdisk -l выдаёт список разделов только на реальных устройствах, вроде такого:
Диск /dev/sda: 400.0 ГБ, 400088457216 байт 255 heads, 63 sectors/track, 48641 cylinders Units = цилиндры of 16065 * 512 = 8225280 bytes Disk identifier: 0x0000fc84 Устр-во Загр Начало Конец Блоки Id Система /dev/sda1 1 14 112423+ 83 Linux /dev/sda2 15 1582 12594960 82 Linux своп / Solaris /dev/sda3 1583 48641 378001417+ 8e Linux LVM Диск /dev/sdb: 750.1 ГБ, 750156374016 байт 255 heads, 63 sectors/track, 91201 cylinders Units = цилиндры of 16065 * 512 = 8225280 bytes Disk identifier: 0x0003f49a Устр-во Загр Начало Конец Блоки Id Система /dev/sdb1 1 91201 732572001 8e Linux LVM
Gentoo я ставил частично на lvm. (на диске 100мб /boot, 1Gb корень, а всё остальное - разделы LVM (/tmp, /var, /usr, /home) )
Проблема в том, что в gentoo вывод fdisk -l в блочные устройства включает также все разделы lvm - и помимо /dev/sda, /dev/sdb туда же влезает куча /dev/dm-0, /dev/dm-1, /dev/dm-2 и т.д. (по количеству lvm-томов). Поскольку lvm-тома уже являются, собственно, разделами, и их не нужно разбивать с помощью fdisk, то последний не обнаружив на подобном устройстве корректной таблицы разделов разражается десятком строк ругательств.
В результате - запуск fdisk -l чтобы посмотреть "каким же устройством там стала флэшка" выдаёт пару полезных записей, а затем длинную простыню ругательств.
Вопрос: можно как-то исключить mapped-устройства из списка блочных устройств? Ну или хотя бы сделать, чтобы они считались разделами, а не устройствами?
- Для комментирования войдите или зарегистрируйтесь
.
df или pydf
alias df='pydf -h -B'
alias df='df | grep sd'
alias df='df | grep -v dm'
Это подпись, которую невозможно истолковать неправильно
А без алиасов это делается?
Про флэшку был просто в качестве примера.
Вопрос в том, почему на убунте при использовании lvm выполнение fdisk -l показывает только физические накопители, а на gentoo при этом в список попадают ВСЕ блочные устройства, в том числе за-map-енные.
Наверняка тут как-то завязан dev-mapper или что-то в этом роде. А как именно? И можно ли (и как?) настроить всё так, чтобы ничего лишнего не выводилось и не упоминалось?
.
Робко рискну предположить... потому что gentoo лучше, чем убунта? :-)
Можно. По-разному.
1) с помощью alias
2) как в убунте (посмотрите, как там, и сделайте так же; ИМХО тут не у многих есть убунта и/или желание с ней ...)
3) ещё как-то - всё в ваших руках
Это подпись, которую невозможно истолковать неправильно
Покажите which fdisk
Покажите
на Gentoo и на Ubunt'е.
Я ♥ Gentoo & Funtoo
/sbin/fdisk
на обеих системах. И в обоих случаях это ELF-executable, а не скрипт или алиас.
man fdisk какбе намекает: man
man fdisk
какбе намекает:Собсно
cat /proc/partitions
вам это и покажет.Решение: юзайте
parted -l
, как вариант. С флагом device-mapper он понимает lvm партиции. Ну либо ищите, что за патчи накладывает убунта на свой fdiskДа, это похоже на правду
Сейчас покопаюсь в убунтовских патчах.
cat /proc/partitions выдаёт (на убунте):
Вывод с fdisk -l я уже приводил. В убунте перечислены только sda и sdb; в генту - абсолютно все устройства, в т.ч. те, которые уже являются разделами. Очень похоже, что просто отфильтровываются устройства, у которых в имени есть цифра (т.е. sda - нормально, а sda1 или dm-0 уже в вывод не попадает).
Но - в самом деле - лучше посмотрю в исходники.
хм! у меня gentoo ~x86,
хм! у меня gentoo ~x86, только что обновился...
все 3 dm-раздела lvm и смонтированы...
P.S. что мне сделать, чтобы было как у вас, ничего этакого не настраивал, по крайней мере в окрестности fdisk.
В том-то и вопрос, как этого добиться
У меня две машины. На одной AMD64, на другой x86. + убунта x86_64 - на которой всё как у вас.
В конечном итоге, чую я, сведётся всё к какой-нибудь единичке в каком-нибудь конфиге...