Jak zamontować pliki .img w systemie Ubuntu?

11

Właśnie pobrałem pliki Debiana i Arch Linuxa i chciałbym je zamontować przed wypaleniem na karcie SD. Jak mogę zamontować IMG?

Próbowałem zamontować, ale pojawia się następujący błąd:

sudo mount -o loop archlinuxarm-13-06-2012.img /mnt/
mount: you must specify the filesystem type

Czy to yaffs2? Jak mogę zamontować yaffs2, o ile wiem, że nie jest jeszcze obsługiwany w systemie Ubuntu 12.04 i nie mogłem znaleźć żadnego pakietu.

O LA LA
źródło

Odpowiedzi:

12

Trudna droga

Przeczytaj moją drugą odpowiedź na temat Czy można zaktualizować, zaktualizować i zainstalować oprogramowanie przed flashowaniem obrazu? .

Musisz obliczyć przesunięcie systemu plików, który chcesz zamontować.

Prosty, ale eksperymentalny sposób

Zastanów się nad użyciem mojego nowego narzędzia piimg . Po prostu zbuduj i uruchom

$ sudo ./piimg mount archlinuxarm-13-06-2012.img /mnt

UWAGA To nie zostało jeszcze w pełni przetestowane.

Co ma piimgzrobić?

piimgwykonuje serię podłączeń, analizując obraz i ustawiając prawidłowe urządzenia pętli i mocowania. /Najpierw montuje , następnie /bootwiąże /dev(rekurencyjnie), wiąże /sysi tworzy /proc. Aby odmontować, musisz zrobić coś przeciwnego, ale umountwkrótce powinna pojawić się podkomenda.

ZASTRZEŻENIE I, Alex Chamberlain, jestem głównym programistą piimg. Jako taki, mogę być skłonny do stosowania piimgw stosunku do innych metod.

Alex Chamberlain
źródło
@iungi Której metody użyłeś?
Alex Chamberlain,
Dziękuję za tę cenną pracę. Właśnie wskazałem, że aby poprawnie zbudować, konieczne jest zainstalowanie pakietu libparted0-dev. Wykorzystam twoje narzędzie i wskażę potencjalne problemy. Mała uwaga: logiczne wydaje się instalowanie w / usr / local / sbin programu zarezerwowanego dla roota! Z poważaniem.
<br/> Kolejna uwaga, w linii poleceń występuje niedopatrzenie: <br/> $ sudo ./piimg mount sd.img / mnt
@MarkBooth Nie pracowałem od piimgdawna. Sądzę, że dokumentacja tego wymaga aktualizacji, a nie tej odpowiedzi (ponieważ nie mówi ci, jak ją zbudować!)
Alex Chamberlain
@MarkBooth Och, były 2. Tak, wymaga aktualizacji. Sporządzono
Alex Chamberlain
1

Problem polega na tym, że obraz jest kompletnym obrazem dysku zawierającym tablicę partycji, a nie obraz pojedynczej partycji.

Jest na to kilka sposobów, jednym ze sposobów jest obliczenie przesunięcia i użycie go do montażu (więcej szczegółów znajdziesz w odpowiedzi Alexa).

Innym sposobem, jeśli masz najnowsze jądro i najnowszą wersję programu losetup, jest skorzystanie z opcji -P, aby stracić np

losetup -P -f <nazwa_pliku>

stworzy to serię węzłów urządzeń. Główny węzeł / dev / loop <numer>, a także węzły dla każdej partycji w / dev / loop <numer> p <numer>. Następnie możesz pracować z urządzeniem, tak jak każde inne sparowane urządzenie.

Po zakończeniu możesz usunąć urządzenie sprzężenia zwrotnego za pomocą

losetup -d / dev / loop <numer>

Peter Green
źródło