`mount -o loop` thay đổi tập tin ảnh ISO được gắn


22

Dường như mount -o loopthay đổi tập tin hình ảnh được gắn kết. Tôi đã tải xuống tệp hình ảnh ISO và kiểm tra tổng kiểm tra SHA-1 của nó. Sau đó, tôi gắn tập tin ISO đó và tổng kiểm tra đã thay đổi. Dưới đây là các bước chính xác mà tôi đã thực hiện, sao chép-dán từ bảng điều khiển của tôi, CentOS 7 x64 (lưu ý rằng tệp ISO là chỉ đọc):

[mbartnicki@89-78-33-81 Downloads]$ ls -lh
total 3.1G
-r--r--r--. 1 mbartnicki mbartnicki 3.1G Mar 31 18:28 X17-58997.iso
[mbartnicki@89-78-33-81 Downloads]$ sha1sum X17-58997.iso 
6c9058389c1e2e5122b7c933275f963edf1c07b9  X17-58997.iso
[mbartnicki@89-78-33-81 Downloads]$ sudo mount -o loop X17-58997.iso /mnt/iso/
mount: /dev/loop0 is write-protected, mounting read-only
[mbartnicki@89-78-33-81 Downloads]$ sha1sum X17-58997.iso 
994944df320e9e03c032263d7b9e36157a0a587c  X17-58997.iso

Tôi đã rất ngạc nhiên, tôi đã lặp lại các bước trên các máy khác (Ubuntu 14.04 x64), để có được kết quả tương tự: tổng kiểm tra tệp đã thay đổi sau đó mount -o loop. Việc ngắt hình ảnh ISO không trả lại tổng kiểm tra của nó về giá trị ban đầu; thay đổi tập tin là liên tục. Hơn nữa, lần gắn kết tiếp theo thay đổi tổng kiểm tra một lần nữa thành một số giá trị mới. Làm thế nào nó có thể được giải thích?

PS

Gắn kết rõ ràng chỉ đọc bằng cách thêm rotùy chọn gắn kết ngăn không cho tệp bị thay đổi, do đó nếu tôi sử dụng:

sudo mount -o ro,loop X17-58997.iso /mnt/iso

sau đó mọi thứ đều ổn, và tập tin ảnh ISO tồn tại không thay đổi sau khi mount. Hành vi sai chỉ xảy ra khi rotùy chọn không được chỉ định, ngay cả khi tệp ảnh ISO ở chế độ chỉ đọc ở cấp hệ thống tệp. Tôi đã thử trên ba hình ảnh ISO khác nhau: DVD cài đặt Windows 7 (chính thức), SystemResTHERCD (cứu Linux nhỏ) và ISO làm bằng tay được tạo bởi genisoimagecông cụ.

Tôi đã kiểm tra tất cả các tệp ISO đó với filetiện ích và filenói rằng tất cả chúng là dữ liệu hệ thống tệp CD-ROM ISO 9660 . Các tệp bên trong ảnh ISO không bị thay đổi - Tôi cũng đã kiểm tra nó - có vẻ như kịch bản gắn kết bị lỗi thêm một số dữ liệu meta hoặc chỉ là rác.


Sha1sum sau khi vượt qua là gì?
Volker Siegel

Bạn có thể thử với một hình ảnh iso trống, được tạo bởi genisoimage -o empty.iso emptydir?
Volker Siegel

bạn có thể thử làm thiết bị vòng lặp mới và thử gắn isonó vào nó không? Bạn cũng có thể sử dụng mknod -m 660 /dev/loop1 b 7 1sau khi chạychmod 660 /dev/loop*
Simply_Me

@VolkerSiegel unmounting không trả lại tổng kiểm tra trước đó. Tập tin được thay đổi cho tốt. Nhưng cảm ơn vì đã chỉ ra điều này, tôi sẽ chỉnh sửa câu hỏi của mình để đưa thông tin này vào.

2
Báo cáo lỗi tương tự tại launchpad: mount -o loop .... thay đổi hình ảnh udf
Volker Siegel

Câu trả lời:


1

Iso không đồng nghĩa với chỉ đọc, trong một số trường hợp, bạn có thể muốn gắn / đọc iso (khi tạo phương tiện khởi động).

Nếu bạn muốn đọc chỉ, sử dụng tùy chọn

 mount -o ro,iso

3
Tệp ISO của tôi chỉ được đọc bởi các quyền của hệ thống tệp và nó được gắn ở chế độ chỉ đọc như được nêu trong đầu ra gắn kết.
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.