Duyệt .img mà không cần gắn


13

Có cách nào để duyệt một tập tin .img mà không cần cài đặt nó không? Tôi có một tệp .img mà tôi đã tạo từ ảnh chụp phân vùng clonezilla. Tôi bằng cách nào đó có vấn đề gắn tập tin với lệnh mount -o loop sda5.img /mnt/.

dmesg | tail cho tôi thấy lỗi sau:

[1325.395286] EXT4-fs (loop0): hình học xấu: số khối 11221248 vượt quá kích thước của thiết bị (khối 11218432)

Bất cứ ai cũng có một ý tưởng làm thế nào để duyệt mà không cần gắn hoặc những gì có thể gây ra lỗi này?


Điều đó có vẻ xấu .
Uri Herrera

Câu trả lời:


18

Nếu đây là hình ảnh của toàn bộ ổ cứng hoặc trong trường hợp của bạn thì đây có thể là hình ảnh của một phân vùng mở rộng, bạn sẽ cần biết bố cục phân vùng và độ lệch của từng phân vùng trong tệp để có thể gắn kết chúng.

Để làm điều này, bạn sẽ cần partedcông cụ, bạn có thể cài đặt nó bằng lệnh sau:

apt-get install parted

Sau khi cài đặt parted, bắt đầu nó với đường dẫn đến tệp hình ảnh của bạn. Một parteddấu nhắc sẽ được hiển thị:

$ parted /path/to/image/file/sda5.img
GNU Parted 2.3
.....
(parted)

Trong lời nhắc này (tiền tố với (parted)), gõ các lệnh sau:

(parted) unit B
(parted) print
.....
Number  Start          End            Size           Type     File system  Flags
 1      1048576B       1573912575B    1572864000B    primary  ntfs         boot
 2      1573912576B    156774694911B  155200782336B  primary  ntfs
 3      156774694912B  171454758911B  14680064000B   primary  ntfs
 4      171454758912B  180044693503B  8589934592B    primary

(parted) q

Bảng trong đầu ra sẽ cho bạn biết độ lệch của từng phân vùng trong tệp và loại hệ thống tệp trong mỗi phân vùng. Ví dụ, để gắn kết phân vùng đầu tiên trong đầu ra mẫu mực ở trên, bạn sẽ cần nhập lệnh sau:

sudo mount -o loop,ro,offset=1048576 /path/to/image/file/sda5.img /mnt/partition

Hãy chắc chắn rằng /mnt/partitiontồn tại đầu tiên.


1
Ok, tôi nghĩ vấn đề có thể là tôi gặp lỗi, khi chạy lệnh in, vì nó nói bảng partiton không xác định. Đoán hình ảnh bị hỏng?
Ahatius

Trông rất giống như nó bị hỏng. Nhưng hãy thử tìm kiếm lỗi của bạn trên Google trước.
bender

Can't have a partition outside the disk!lỗi với chia tay như với gparted ...
Philippe Gachoud

8

Tôi gặp vấn đề tương tự với hình ảnh ext4 được tạo từ ảnh chụp nhanh Clonezilla.

Những gì thực sự làm việc cho tôi là mở rộng tệp theo kích thước báo cáo bảng phân vùng, sử dụng cắt ngắn. Lỗi dmesg báo cáo trong trường hợp của tôi là:

[15687.653868] EXT4-fs (loop0): bad geometry: block count 18482176 exceeds size
  of device (18352672 blocks)

Vì vậy, tôi đã điều chỉnh độ dài của tệp với:

truncate -o -s 18482176 /path/to/partition.img

(^ lưu ý đó là số đầu tiên và lớn hơn trong hai số trong nhật ký)

Sau khi gắn kết đó là hạnh phúc và tôi có thể truy cập dữ liệu của tôi.


Điều này làm việc cho tôi mặc dù kích thước là sai, tôi đoán kích thước khối là khác nhau, vì vậy tôi phải chỉ định kích thước theo byte. Hãy cẩn thận vì bạn có thể mất dữ liệu nếu bạn cắt tệp hình ảnh của mình xuống kích thước ngắn hơn kích thước ban đầu.
golimar

1
Làm thế nào bạn biết kích thước chính xác? vui lòng thêm các lệnh ở đây.
Hunsu

@Hunsu Kích thước được báo cáo trong thông báo lỗi (dmesg).
Melebius
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.