| LIBBLKID(3) | Podręcznik programisty | LIBBLKID(3) |
NAZWA
libblkid - biblioteka identyfikacji urządzeń blokowych
SKŁADNIA
#include <blkid.h>
cc file.c -lblkid
OPIS
Biblioteka libblkid służy do identyfikacji urządzeń blokowych (dysków) w zakresie zawartości (np. typu systemu plików) oraz pozyskiwania dodatkowych informacji, takich jak etykiety systemu plików/nazwy woluminów, unikalne identyfikatory/numery seryjne. Częstym zastosowaniem jest możliwość użycia znaczników LABEL= i UUID= zamiast ustawionych na sztywno nazw urządzeń blokowych w plikach konfiguracyjnych. W rozdziale ZNACZNIKI znajduje się lista wszystkich dostępnych znaczników.
Niskopoziomowa część biblioteki pozwala również pozyskiwać informacje o topologii urządzeń blokowych i partycji.
Wysokopoziomowa część biblioteki buforuje informacje o urządzeniach blokowych w pliku podręcznym i weryfikuje, czy są one wciąż prawidłowe, przed zwróceniem ich użytkownikowi (jeśli użytkownik ma uprawnienia do odczytu surowego urządzenia blokowego, w innym przypadku tak się nie dzieje). Plik podręczny pozwala również zlokalizować urządzenia na podstawie etykiety/identyfikatora użytkownikom nieuprzywilejowanym (zwykle innym niż root, lub nieujętych w grupie "disk"). Standardowe położenie pliku podręcznego można przesłonić zmienną środowiskową BLKID_FILE.
W sytuacjach, gdy uzyskuje się informacje o pojedynczym, znanym urządzeniu, na wydajność nie ma wpływu to, czy plik podręczny jest używany czy nie (chyba, że nie można bezpośrednio odczytać urządzenia blokowego).
Wysokopoziomowa część biblioteki obsługuje dwie metody sprawdzenia LABEL/UUID. Odczytuje informacje bezpośrednio z urządzenia blokowego lub odczytuje informacje z dowiązań symbolicznych udev w /dev/disk/by-*. Domyślnie preferowana jest metoda udev.
Jeśli bada się wiele urządzeń, bardzo zalecane jest korzystanie z pliku podręcznego (nawet jeśli jest pusty), ponieważ urządzenia zostaną przeskanowane co najwyżej jednokrotnie i plik podręczny zostanie zaktualizowany, jeśli to możliwe.
W niektórych sytuacjach (jądra modularne), urządzenia blokowane nie są nawet widoczne do momentu uzyskania dostępu po raz pierwszy, więc istnienie metody na zlokalizowanie tych urządzeń bez wymieniania jedynie widocznych urządzeń jest krytyczne, zatem użycie pliku podręcznego w takich sytuacjach jest wymagane.
PLIK KONFIGURACYJNY
Standardowe położenie pliku konfiguracyjnego /etc/blkid.conf można przesłonić zmienną środowiskową BLKID_CONF. Więcej informacji na temat pliku konfiguracyjnego można znaleźć w podręczniku blkid(8).
ZNACZNIKI
Wszystkie dostępne znaczniki wypisano poniżej. Nie wszystkie są obsługiwane we wszystkich systemach plików. Aby włączyć znacznik, należy ustawić jeden z poniższych znaczników za pomocą blkid_probe_set_superblocks_flags():
BLKID_SUBLKS_TYPE
BLKID_SUBLKS_SECTYPE
BLKID_SUBLKS_LABEL
BLKID_SUBLKS_LABELRAW
BLKID_SUBLKS_UUID
BLKID_SUBLKS_UUIDRAW
BLKID_SUBLKS_USAGE
BLKID_SUBLKS_VERSION
BLKID_SUBLKS_MAGIC
BLKID_SUBLKS_FSINFO
Poniższe znaczniki są zawsze włączone
AUTORZY
libblkid napisał Andreas Dilger w ramach narzędzi systemu plików ext2, ze wskazówkami Teda Ts’o. Biblioteka została następnie mocno zmieniona przez Teda Ts’o.
Niskopoziomowy kod sprawdzania został przepisany przez Karela Zaka.
KOPIOWANIE
libblkid jest dostępny na warunkach licencji GNU Library General Public License (LGPL), w wersji 2 (lub dowolnie wybranej przez użytkownika wersji późniejszej).
ZOBACZ TAKŻE
ZGŁASZANIE BŁĘDÓW
Problemy należy zgłaszać w systemie śledzenia błędów https://github.com/util-linux/util-linux/issues.
DOSTĘPNOŚĆ
Biblioteka libblkid jest częścią pakietu util-linux od wersji 2.15. Można go pobrać ze strony Archiwum jądra Linux https://www.kernel.org/pub/linux/utils/util-linux/.
| 2026-09-02 | util-linux 2.42.3 |