Настольная книга по Linux/Блочные устройства


Получение общей информации

править
  • Вывести список действительных в данный момент блочных устройств:

    $ lsblk 
    

    … Включая информацию о подключенных файловых системах:

    $ lsblk -f 
    
  • Вывести списки блочных устройств по идентификатору, способу подключения, метке и UUID (в последних двух случаях — только для тех устройств, где они назначены):

    $ ls -- /dev/disk/by-id/ 
    $ ls -- /dev/disk/by-path/ 
    $ ls -- /dev/disk/by-label/ 
    $ ls -- /dev/disk/by-uuid/ 
    
  • Вывести отдельные метаданные (UUID, метка, тип ФС, etc.) блочных устройств:

    $ blkid 
    
  • Вывести сведения о разделах доступных носителей:

    $ partprobe -ds 
    

    … Таблицу разделов, используемую ядром (можно использовать partprobe(8) для обновления):[1]

    $ cat < /proc/partitions 
    

    … Более подробную информацию о разделах устройства /dev/sdX:

    $ parted -- /dev/sdX unit mib print 
    
  • Вывести таблицу разделов MBR устройства /dev/sdX в текстовом представлении:

    $ sfdisk -uM -l -- /dev/sdX 
    

    … В виде, пригодном для последующего восстановления:

    $ sfdisk -d -- /dev/sdX 
    

    … Скопировать таблицу с /dev/sdX на /dev/sdY:

    $ sfdisk -d -- /dev/sdX | sfdisk -- /dev/sdY 
    
  • Скопировать главную загрузочную запись с устройства /dev/sdX в файл sdX.mbr:

    $ dd count=1 < /dev/sdX > sdX.mbr
    $ dd count=1 if=/dev/sdX of=sdX.mbr
    
  • Считать данные температурных датчиков устройств:

    $ hddtemp -- /dev/sd? 
    

    … Получить эти же данные с hddtemp(8), работающего в режиме демона и обслуживающего запросы на порту 7634:

    $ nc localhost 7634 | sed -e 's/||/|\n|/g' ; echo 
    

Образы

править
  • Снять образ устройства /dev/sdX в файл image:

    $ cp -- /dev/sdX image 
    $ cp --sparse=always -- /dev/sdX image
    

    … Упакованный образ в файл image.gz (image.bz2, image.xz):

    $ gzip  -9c < /dev/sdX > image.gz 
    $ bzip2 -9c < /dev/sdX > image.bz2 
    $ xz    -7c < /dev/sdX > image.xz 
    
  • Восстановить содержимое устройства /dev/sdX из файла image (осторожно! очевидно, эта команда приведет к потере всех находящихся на устройстве данных):

    $ cp -- /dev/sdX image 
    
  • Записать образ image на DVD в приводе /dev/sr3:

    $ growisofs /dev/sr3=image
    $ growisofs -speed=6 /dev/sr3=image
    

    … На компакт-диск:

    $ wodim dev=/dev/sr3 -v image
    


Горячее подключение

править
  • Обнаружить и инициализировать новое устройство на порту hostA:

    # echo - - - > /sys/class/scsi_host/hostA/scan 
    
  • Удалить из системы устройство /dev/sdX:

    # echo 1 > /sys/block/sdX/device/delete 
    

Проверка состояния

править
  • Измерить производительность устройства /dev/sdX:

    # hdparm -Tt -- /dev/sdX 
    
  • Запустить процедуры самодиагностики S.M.A.R.T. для устройства /dev/sdX:

    # smartctl -t short -- /dev/sdX 
    # smartctl -t long  -- /dev/sdX 
    # smartctl -t conveyance -- /dev/sdX 
    
  • Вывести информацию об известных физических томах, группах, и логических томах LVM:

    # pvs 
    # pvdisplay 
    # vgs 
    # vgdisplay 
    # lvs 
    # lvdisplay 
    

    … Только о физических томах /dev/sdX4, /dev/sdY2:

    # pvs -- /dev/sdX4 /dev/sdY2 
    # pvdisplay -- /dev/sdX4 /dev/sdY2 
    

    … Только о логических томах группы vgfoo:

    # lvs -- vgfoo 
    
  • Активировать логический том lvbar группы vgfoo:

    # lvchange -a y -- /dev/vgfoo/lvbar 
    

    … Все тома группы vgfoo:

    # vgchange -a y -- vgfoo 
    

    … Деактивировать:

    # lvchange -a n -- /dev/vgfoo/lvbar 
    # vgchange -a n -- vgfoo 
    
  • Запретить (разрешить) запись на логический том lvbar группы vgfoo:

    # lvchange -p r   -- /dev/vgfoo/lvbar 
    # lvchange -p rw  -- /dev/vgfoo/lvbar 
    
  • Инициализировать устройства /dev/sdX4, /dev/sdY2 как физические тома:

    # pvcreate -- /dev/sdX4 /dev/sdY2 
    
  • Создать группу томов vgfoo с использованием физических томов /dev/sdX4, /dev/sdY2:

    # vgcreate -- vgfoo /dev/sdX4 /dev/sdY2 
    

    … Удалить (осторожно! перед выполнением проверьте, что группа не содержит каких-либо имеющих значение данных):

    # vgremove -- vgfoo 
    
  • Создать логический том lvbar объемом 4880 MiB в группе vgfoo:

    # lvcreate -n lvbar -L 4880M -- vgfoo 
    

    … Используя только свободное пространство физических томов /dev/sdY2, /dev/sdZ:

    # lvcreate -n lvbar -L 4880M -- vgfoo /dev/sdY2 /dev/sdZ 
    

    … Удалить (осторожно! перед выполнением проверьте, что том не содержит каких-либо имеющих значение данных):

    # lvremove -- /dev/vgfoo/lvbar 
    
  • Перенести данные физического тома /dev/sdY2 на другие физические тома группы:

    # pvmove -- /dev/sdY2 
    

    … На физический том /dev/sdX4

    # pvmove -- /dev/sdY2 /dev/sdX4 
    

    … Исключение из группы физического тома /dev/sdY2:

    # vgreduce -- vgfoo /dev/sdY2 
    

    … Включение в группу физического тома /dev/sdZ:

    # vgextend -- vgfoo /dev/sdZ 
    


См. также

править

Примечания

править
  1. The /proc filesystem(англ.) Linux Kernel Documentation Проверено 2015-05-03 г.