BLKID(8) Administracja systemem BLKID(8)

blkid - lokalizuje urządzenie blokowe lub wypisuje jego atrybuty

blkid --label etykieta | --uuid uuid

blkid [--no-encoding --garbage-collect --list-one --cache-file plik] [--output format] [--match-tag znacznik] [--match-token NAZWA=wartość] [urządzenie...]

blkid --probe [--offset przesunięcie] [--output format] [--size rozmiar] [--match-tag znacznik] [--match-types lista] [--usages lista] [--no-part-details] urządzenie...

blkid --info [--output format] [--match-tag znacznik] urządzenie...

Program blkid jest interfejsem wiersza poleceń do pracy z biblioteką libblkid(3). Potrafi określić typ zawartości (np. system plików lub przestrzeń wymiany) występującej w urządzeniu blokowym, jak również atrybuty (tokeny, pary NAZWA=wartość) z metadanych zawartości (np. pól LABEL lub UUID).

Zaleca się korzystać z polecenia lsblk(8), aby uzyskać informacje o urządzeniach blokowych lub lsblk --fs aby uzyskać przegląd systemów plików albo z findmnt(8) aby poszukać już zamontowanych systemów plików.

lsblk(8) udostępnia więcej informacji, umożliwia lepszą kontrolę nad formatowaniem wyjścia, jest prostszy do użycia w skryptach i nie wymaga uprawnień roota do faktycznego uzyskania informacji. blkid odczytuje informacje bezpośrednio z urządzeń i w przypadku użytkowników innych niż root, zwraca niezweryfikowane informacje zbuforowane. blkid jest przeznaczony głównie do usług systemowych i testowania funkcjonalności libblkid(3).

Gdy poda się urządzenie, wyświetlane są tokeny jedynie z tego urządzenia. W wierszu polecenia można podać wiele argumentów urządzenie. Jeśli nie poda się żadnego, pokazywane są wszystkie partycje lub urządzenia niespartycjonowane, które pojawiają się w /proc/partitions, o ile tylko są rozpoznane.

blkid ma dwa główne tryby działania: szukanie urządzenia po określonej parze NAZWA=wartość lub wyświetlanie par NAZWA=wartość dla jednego lub więcej określonych urządzeń.

Z powodów bezpieczeństwa, blkid po cichu ignoruje wszelkie urządzenia, których sprawdzenie daje niejednoznaczne wyniki (wykryto wiele kolidujących systemów plików). W takim przypadku tryb sondowania niskopoziomowego (-p) zapewni więcej informacji i dodatkowy status zakończenia. Zaleca się korzystać z wipefs(8) w celu uzyskania szczegółowego przeglądu i usunięcia staroci (łańcuchów magicznych) z takiego urządzenia.

Po argumentach rozmiar i przesunięcie mogą występować przyrostki oznaczające wielokrotność: KiB (=1024), MiB (=1024*1024), itd. dla GiB, TiB, PiB, EiB, ZiB i YiB (cząstka "iB" jest opcjonalna, tzn. np. "K" znaczy to samo co "KiB") lub przyrostki KB (=1000), MB (=1000*1000), itd. dla GB, TB, PB, EB, ZB i YB.

-c, --cache-file plik-pamięci-podręcznej

Odczytuje z podanego pliku-pamięci-podręcznej, zamiast z domyślnego (więcej szczegółów w rozdziale *PLIK KONFIGURACYJNY). Aby uruchomić program z pustym plikiem pamięci podręcznej (tj. nie zgłaszać urządzeń poprzednio przeskanowanych, które mogą już nie być dostępne), proszę podać /dev/null jako argument.

-d, --no-encoding

Nie koduje znaków niedrukowalnych. Domyślnie, znaki niedrukowalne są kodowane za pomocą notacji ^ i M-. Proszę zauważyć, że format wyjściowy --output udev używa innego kodowania, którego nie można wyłączyć.

-D, --no-part-details

Nie wypisuje informacji (znaczników PART_ENTRY_*) z tablicy partycji, w trybie sondowania niskopoziomowego.

-g, --garbage-collect

Dokonuje odśmiecenia pamięci podręcznej blkid, aby usunąć urządzenia, które już nie istnieją.

-H, --hint ustawienie

Ustawia podpowiedź dla sondowania. Podpowiedzi są opcjonalnym sposobem zmuszenia funkcji sondujących do sprawdzenia np. innego położenia. Obecnie obsługiwane jest ustawienie "session_offset=liczba", ustawiające przesunięcie sesji na wielosesyjnym UDF-ie.

-i, --info

Wyświetla informacji o limitach wejścia/wyjścia (inaczej topologii wejścia/wyjścia). Automatycznie włączony zostanie format wyjściowy "export". Opcję tę można łączyć z opcją --probe.

-k, --list-filesystems

Wypisuje wszystkie znane systemy plików oraz RAID i wychodzi.

-l, --list-one

Szuka tylko jednego urządzenia pasującego do podanego z opcją --match-token parametru wyszukiwania. Jeśli wystąpi wiele urządzeń pasujących do podanego parametru wyszukiwania, zwracane jest urządzenie o najwyższym priorytecie i/lub pierwsze odnalezione urządzenie o podanym priorytecie (lecz zob. niżej informację o udev). Typy urządzeń, od najwyższego priorytetu, to: Device Mapper, EVMS, LVM, MD i na końcu zwykłe urządzenia blokowe. Jeśli nie poda się tej opcji, blkid wypisze wszystkie urządzenia pasujące do parametru wyszukiwania.

Opcja ta zmusza blkid do korzystania z udev, jeśli w --match-token korzysta się z tokenów LABEL lub UUID. Celem jest zapewnienie wyniku spójnego z innymi urządzeniami (jak mount(8) itp.) w systemach, gdzie ten sam znacznik jest używany wobec wielu urządzeń.

-L, --label etykieta

Szuka urządzenia używającego podanej etykiety systemu plików; równoważne --list-one --output device --match-token LABEL=etykieta. Ta metoda wyszukiwania może rzetelnie korzystać z dowiązań symbolicznych udev /dev/disk/by-label (w zależności od ustawienia w /etc/blkid.conf). Proszę unikać bezpośredniego korzystania z dowiązań symbolicznych; nie jest pewne korzystanie z nich bez weryfikacji. Opcja --label działa na systemach z i bez udev.

Niestety, pierwotne blkid(8) z e2fsprogs używa opcji -L jako synonimu -o list. Aby poprawić przenośność, proszę korzystać w swoich skryptach z -l -o device -t LABEL=etykieta i -o list, zamiast z opcji -L.

-n, --match-types lista

Ogranicza funkcje sondowania do podanej listy typów (nazw) superbloków (separatorem jest przecinek). Elementy listy można poprzedzić przedrostkiem "no" aby określić, które typy zignorować. Na przykład:

blkid --probe --match-types vfat,ext3,ext4 /dev/sda1

sonduje pod kątem systemów plików vfat, ext3 i ext4, a

blkid --probe --match-types nominix /dev/sda1

sonduje pod kątem wszystkich obsługiwanych formatem poza systemami plików minix. Opcja ta jest przydatna tylko w połączeniu z --probe.

-o, --output format

Używa podanego formatu wyjściowego. Proszę zauważyć, że koeljność zmiennych i urządzeń nie jest stała. Zob. też opcję -s. Parametrem format może być:

full

wypisuje wszystkie znaczniki (domyślnie)

value

wypisuje wartość znaczników

list

wypisuje urządzenia w formacie przyjaznym dla użytkownika; format wyjściowy nieobsługiwany w przypadku sondowania niskopoziomowego (--probe lub --info).

Ten format wyjściowy jest PRZESTARZAŁY na rzecz polecenia lsblk(8).

device

wypisuje tylko nazwę urządzenia; format wyjściowy włączany zawsze przy korzystaniu z opcji --label i --uuid

udev

wypisuje pary klucz="wartość" umożliwiając łatwy import do środowiska udev; klucze są poprzedzone przedrostkami ID_FS_ lub ID_PART_. Wartość może być zmodyfikowana, aby być bezpieczną dla środowiska udev; dozwolone są proste znaki ASCII, znaki cytowane szesnastkowo i prawidłowe znaki UTF-8, wszystko pozostałe (w tym białe znaki) jest zastępowane przez znak '_'. Klucze z przyrostkiem _ENC korzystają z cytowania szesnastkowego, ze względu na niebezpieczne znaki.

Wyjście udev zwraca znacznik ID_FS_AMBIVALENT, jeśli wykryto więcej superbloków, a znaczniki ID_PART_ENTRY_* są zawsze zwracane dla wszystkich partycji, w tym partycji pustych.

Ten format wyjściowy jest PRZESTARZAŁY

export

wypisuje pary klucz=wartość umożliwiając łatwy import do środowiska; format wyjściowy włączany automatycznie, jeśli zażądano informacji o limitach wejścia/wyjścia (I/O Limits; opcja --info).

Znaki niedrukowalne są kodowane za pomocą notacji ^ i M-, a wszystkie potencjalnie niebezpieczne znaki są cytowane.

json

Wypisuje wpisy znaczników w obiektach JSON.

-O, --offset przesunięcie

Sonduje na podanym przesunięciu (przydatne tylko z --probe). Opcję tę można łączyć z opcją --info.

-p, --probe

Przełącza się na niskopoziomowy tryb sondowania superbloku (z pominięciem pamięci podręcznej).

Proszę zauważyć, że to niskopoziomowe sondowanie zwraca także informacje o typie tablicy partycji (znacznik PTTYPE) oraz partycjach (znaczniki PART_ENTRY_*). Nazwy znaczników tworzone przy sondowaniu niskopoziomowy opierają się na nazwach używanych wewnętrznie przez libblkid i mogą różnić się od wyniku wykonania bez opcji --probe (np. PART_ENTRY_UUID= vs PARTUUID=). Zob. też --no-part-details.

-s, --match-tag znacznik

Dla każdego (podanego) urządzenia, pokazuje jedynie znaczniki pasujące do znacznika. Można podać opcję --match-tag wielokrotnie. Jeśli nie poda się znacznika, pokazywane są tokeny dla wszystkich (podanych) urządzeń. Aby jedynie odświeżyć pamięć podręczną bez pokazywania tokenów, należy podać --match-tag none bez innych opcji.

-S, --size rozmiar

Przesłania rozmiar urządzenia/pliku (przydatne tylko z --probe).

-t, --match-token NAZWA=wartość

Szuka urządzeń blokowych, z tokenami o nazwach NAZWA, które mają wartość wartość i wyświetla odnalezione urządzenia. Częstymi wartościami NAZWY są: TYPE, LABEL i UUID. Jeśli w wierszu polecenia nie podano urządzeń, przeszukane będą wszystkie urządzenia blokowe; w innym przypadku - tylko podane urządzenia.

-u, --usages lista

Ogranicza funkcje sondujące do podanej listy typów "zastosowań" (z przecinkiem jako separatorem). Obsługiwanymi typami zastosowań są: filesystem (system plików), raid, crypto (kryptografia) i other (inne). Listę pozycji można poprzedzić przedrostkiem "no", aby określić typy zastosowań do zignorowania. Na przykład:

blkid --probe --usages filesystem,other /dev/sda1

sonduje pod kątem systemów plików i innych formatów (np. przestrzeni wymiany), a

blkid --probe --usages noraid /dev/sda1

sonduje pod kątem wszystkich obsługiwanych formatów z wyjątkiem RAID-ów. Opcja jest przydatna tylko w połączeniu z --probe.

-U, --uuid uuid

Wyszukuje urządzenia, które używa podanego uuid-u systemu plików. Więcej szczegółów w opisie opcji --label.

-h, --help

Wyświetla ten tekst i wychodzi.

-V, --version

Wyświetla wersję i wychodzi.

Jeśli podane urządzenie lub urządzenie opisane określonym tokenem (opcja --match-token) zostało odnalezione i dało się zebrać jakieś informacje o urządzeniu, zwracany jest status zakończenia równy 0. Proszę zauważyć, że opcja --match-tag filtruje znaczniki wyjściowe, ale nie wpływa na status zakończenia.

Jeśli nie odnaleziono podanego tokenu lub nie dało się zidentyfikować (podanych) urządzeń albo gdy nie dało się zebrać jakichkolwiek informacji o identyfikatorach urządzenia lub jego zawartości, zwracany jest status zakończenia równy 2.

W przypadku błędnego użycia lub innych błędów, zwracany jest status zakończenia równy 4.

Jeśli w trybie sondowania niskopoziomowego (-p) wykryto niejednoznaczny wynik, zwracany jest status zakończenia równy 8.

Standardowe położenie pliku konfiguracyjnego /etc/blkid.conf można przesłonić zmienną środowiskową BLKID_CONF. Poniższe opcje kontrolują bibliotekę libblkid:

SEND_UEVENT=<yes|not>

Wysyła uevent gdy dowiązanie symboliczne /dev/disk/by-{label,uuid,partuuid,partlabel}/ nie pasuje do LABEL, UUID, PARTUUID lub PARTLABEL na urządzeniu. Domyślnie "yes" (tak).

CACHE_FILE=<ścieżka>

Przesłania standardowe położenie pliku pamięci podręcznej. Ustawienie to można przesłonić zmienną środowiskową BLKID_FILE. Domyślnie /run/blkid/blkid.tab albo /etc/blkid.tab w systemach bez katalogu /run.

EVALUATE=<metody>

Określa metodę/metody sprawdzania LABEL i UUID. Obecnie biblioteka libblkid obsługuje metody "udev" i "scan". Można podać więcej niż jedną metodę, w liście rozdzielonej przecinkiem. Domyślnie "udev,scan". Metoda "udev" używa dowiązań symbolicznych /dev/disk/by-*, a metoda "scan" skanuje wszystkie urządzenia blokowe z pliku /proc/partitions.

ŚRODOWISKO

Ustawienie LIBBLKID_DEBUG=all włącza wyjście debugowania.

blkid zostało napisane przez Andreasa Dilgera (do libblkid) i usprawnione przez Theodore’a Ts’o i Karela Zaka.

libblkid(3), findfs(8), lsblk(8), wipefs(8)

Problemy należy zgłaszać w systemie śledzenia błędów https://github.com/util-linux/util-linux/issues.

Polecenie blkid jest częścią pakietu util-linux, który można pobrać ze strony Archiwum jądra Linux https://www.kernel.org/pub/linux/utils/util-linux/.

2025-03-29 util-linux 2.41