Scroll to navigation

LOSETUP(8) Administracja systemem LOSETUP(8)

NAZWA

losetup - konfiguruje i steruje urządzeniami pętli (loop)

SKŁADNIA

Pobieranie informacji:

losetup [urządzenie-pętli]

losetup -l [-a]

losetup -j plik [-o przesunięcie]

Odłączenie urządzenia pętli:

losetup -d urządzenie-pętli ...

Odłączenie wszystkich przypisanych urządzeń pętli:

losetup -D

Konfigurowanie urządzenia pętli:

losetup [-o przesunięcie] [--sizelimit rozmiar] [--sector-size rozmiar] [--loop-ref nazwa] [-Pr] [--show] -f|urządzenie-pętli plik

Zmiana rozmiaru urządzenia pętli:

losetup -c urządzenie-pętli

OPIS

losetup służy do kojarzenia urządzeń pętli (loop) z plikami zwykłymi lub urządzeniami blokowymi, do odłączania urządzeń pętli i sprawdzania ich stanu. Jeżeli podano tylko argument urządzenie-pętli, to pokazywany jest stan odpowiedniego urządzenia pętli. Jeśli nie podano żadnej opcji, to wyświetlane są wszystkie urządzenia pętli.

Proszę zauważyć, że stary format wyjściowy (tj. losetup -a), z łańcuchami znaków oddzielonymi od siebie przecinkami, jest przestarzały. Zamiast niego preferowanym formatem jest format --list.

Dla tego samego powiązanego pliku można utworzyć więcej niezależnych urządzeń pętli. Taka konfiguracja może być niebezpieczna, spowodować utratę danych, ich uszkodzenie lub nadpisanie. Aby uniknąć tego problemu, podczas konfiguracji należy korzystać z opcji --nooverlap wraz z --find.

Konfiguracja urządzenia pętli nie jest operacją niepodzielną, gdy korzysta się z opcji --find, a losetup nie chroni tej operacji żadną blokadą. Liczba prób jest wewnętrznie ograniczona do 16. Zaleca się korzystanie np. z flock(1), aby uniknąć kolizji w przypadku intensywnego korzystania równoległego.

OPCJE

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.

-a, --all

Wyświetla stan wszystkich urządzeń pętli. Proszę zauważyć, że nie wszystkie informacje są dostępne dla użytkowników niebędących administratorami. Patrz także --list. Stary format wyjściowy (wypisywany, jeśli nie podano --list) jest niezalecany.

-d, --detach urządzenie-pętli...

Odłącza plik lub urządzenie związane z podanym(i) urządzeniem(-ami) pętli. Proszę zauważyć, że Linux od v3.7 korzysta z "leniwego niszczenia urządzeń". Operacja odłączenia nie zwróci obecnie błędu EBUSY, gdy urządzenie jest aktywnie używane przez system, lecz jest znakowane znacznikiem automatycznego wyczyszczenia i jest niszczone później. Nawet jeśli urządzenie nie jest używane, urządzenie pętli może zostać zniszczone dopiero później. Jeśli konieczne jest poczekanie na całkowite usunięcie urządzenia pętli, po losetup należy wywołać udevadm settle.

-D, --detach-all

Odłącza wszystkie przypisane urządzenia pętli.

-f, --find [plik]

Szuka pierwszego nieużywanego urządzenia pętli. Jeśli podano argument plik, to używa tego znalezionego urządzenia jako urządzenia pętli. W przeciwnym wypadku wyświetla jego nazwę.

--show

Wyświetla nazwę przypisanego urządzenia pętli, jeśli podano opcję -f i argument plik.

-L, --nooverlap

Sprawdza pod kątem konfliktów, aby uniknąć sytuacji, gdy ten sam powiązany plik jest dzielony pomiędzy większą liczbą urządzeń pętli. Jeśli plik jest już używany przez inne urządzenie, to zamiast użyć nowego, program skorzysta ponownie z istniejącego urządzenia. Opcja ma sens tylko w połączeniu z --find.

-j, --associated plik [-o przesunięcie]

Wyświetla stan wszystkich urządzeń pętli skojarzonych z podanych plikiem.

-o, --offset przesunięcie

Początek danych przesuwany jest o przesunięcie bajtów podanego pliku lub urządzenia. Po przesunięciu można podać przyrostki oznaczające wielokrotność; zob. wyżej.

--loop-ref łańcuch

Ustawia łańcuch odniesienia. Domyślnie, i zgodnie wstecznie, używa się nazwy powiązanego pliku jako odniesienia w ioctl konfigurującym pętlę (inaczej lo_file_name). Ta opcja może przesłonić opisane zachowanie domyślne i ustawić odniesienie na łańcuch. Odniesienie może być użyte przez udevd w /dev/loop/by-ref. Jądro Linux nie używa tego odniesienia, lecz mogą się nim posłużyć pewne starsze narzędzia, które nie potrafią odczytać powiązanego pliku z sysfs. Odniesienie może odczytać tylko użytkownik root (zob. --output +REF) i jest ograniczone do 64 bajtów.

--sizelimit rozmiar

Koniec danych jest ustawiany na nie więcej niż rozmiar bajtów, licząc od początku danych. Po rozmiarze można podać przyrostki oznaczające wielokrotność; zob. wyżej.

-b, --sector-size rozmiar

Ustawia rozmiar sektora logicznego urządzenia pętli w bajtach (od Linuksa 4.14). Opcję można podać przy tworzeniu nowego urządzenia pętli, jak również jako samodzielne polecenie, służące do modyfikacji rozmiaru sektora istniejącego urządzenia pętli.

-c, --set-capacity urządzenie-pętli

Wymusza na sterowniku pętli ponowne odczytanie rozmiaru pliku skojarzonego z podanym urządzeniem pętli.

-P, --partscan

Zmusza jądro do przeskanowania tablicy partycji na tworzonym urządzeniu pętli. Proszę zauważyć, że przetwarzanie tablicy partycji jest zależne od rozmiarów sektora. Domyślnym rozmiarem sektora są 512 bajty, w innych przypadkach konieczne jest użycie opcji --sector-size łącznie z --partscan.

-r, --read-only

Konfiguruje urządzenie pętli jako tylko do odczytu.

--direct-io[=on|off]

Włącza lub wyłącza bezpośredni dostęp wejścia/wyjścia do powiązanego pliku. Domyślnym ustawieniem jest wyłączenie (off). Podanie --direct-io lub --direct-io=on włączy tę opcję. Aby jawnie ją wyłączyć, można podać --direct-io=off.

-v, --verbose

Tryb szczegółowy.

-l, --list

Jeśli podano urządzenie loop lub opcję -a, to wyświetla domyślne kolumny albo dla podanego urządzenia, albo dla wszystkich urządzeń loop. Domyślnie wyświetla informacje o wszystkich urządzeniach. Patrz także --output, --noheadings --raw oraz --json.

-O, --output kolumna[,kolumna]...

Określa kolumny, które będą wypisane przez opcję --list. Opcja --help wypisze listę wszystkich obsługiwanych kolumn.

--output-all

Wypisuje wszystkie dostępne kolumny.

-n, --noheadings

Nie wyświetla nagłówków w wyjściu formatu opcji --list.

--raw

Używa surowego formatu wyjściowego w --list.

-J, --json

Używa formatu JSON w wyjściu --list.

SZYFROWANIE

Cryptoloop jest przestarzały, zamiast niego zalecany jest dm-crypt. Szczegóły można znaleźć w podręczniku cryptsetup(8).

STATUS ZAKOŃCZENIA

losetup zwraca 0, jeśli zakończyło się pomyślnie, a wartość niezerową w przypadku błędu. Gdy losetup wyświetla stan urządzenia pętli, to zwraca 1, jeśli urządzenie nie jest skonfigurowane, lub 2, gdy wystąpił błąd uniemożliwiający określenie stanu urządzenia.

UWAGI

Od wersji 2.37, losetup korzysta z ioctl LOOP_CONFIGURE do skonfigurowania nowego urządzenia pętli, za pomocą pojedynczego wywołania ioctl. Starsze wersje używały do tego samego celu ioctl: LOOP_SET_FD i LOOP_SET_STATUS64.

ŚRODOWISKO

LOOPDEV_DEBUG=all

włącza wyjście debugowania.

PLIKI

/dev/loop[0..N]

urządzenia blokowe pętli

/dev/loop-control

urządzenie kontrolne pętli

PRZYKŁAD

Jako przykład użycia urządzenia loop posłużą poniższe polecenia:

# dd if=/dev/zero of=~/plik.img bs=1024k count=10
# losetup --find --show ~/plik.img
/dev/loop0
# mkfs -t ext2 /dev/loop0
# mount /dev/loop0 /mnt
...
# umount /dev/loop0
# losetup --detach /dev/loop0

AUTORZY

Karel Zak <kzak@redhat.com>, korzystając z pierwotnej wersji Theodore’a Ts’o <tytso@athena.mit.edu>.

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ŚĆ

Polecenie losetup 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-19 util-linux 2.41