mount -o loop
Takılı görüntü dosyasını değiştirir gibi görünüyor . ISO görüntü dosyasını indirdim ve SHA-1 kontrol toplamını kontrol ettim. Sonra bu ISO dosyasını bağladım ve sağlama toplamı değişti. İşte benim adım attığım adımlar, konsolumdan bir kopyala-yapıştır, CentOS 7 x64 (ISO dosyasının salt okunur olduğunu unutmayın):
[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
Öyle şaşırmıştım ki, aynı sonucu elde etmek için başka bir makinede (Ubuntu 14.04 x64) yukarıdaki adımları tekrarladım mount -o loop
. ISO görüntüsünün kaldırılması sağlama toplamını orijinal değerine döndürmez; dosya değişikliği kalıcı. Dahası, bir sonraki montaj sağlama toplamı tekrar yeni bir değere değiştirir. Nasıl açıklanabilir?
PS
Yalnızca ro
mount seçeneği eklenerek salt okunur şekilde montaj yapılması, dosyanın değiştirilmesini önler, eğer kullanırsam:
sudo mount -o ro,loop X17-58997.iso /mnt/iso
sonra her şey yolunda ve ISO görüntü dosyası bağlandıktan sonra değişmeden kalıyor. Yanlış davranış, yalnızca ro
ISO görüntü dosyası dosya sistemi düzeyinde salt okunur olsa bile, seçenek belirtilmediğinde ortaya çıkar . Üç farklı ISO görüntüsü denedim: Windows 7 kurulum DVD'si (resmi), SystemRescueCD (küçük kurtarma Linux) ve el yapımı ISO genisoimage
aracı tarafından yaratıldı .
Tüm bu ISO dosyalarını file
yardımcı programla kontrol ettim ve file
hepsinin ISO 9660 CD-ROM dosya sistemi verileri olduğunu söyledim . ISO görüntüleri içindeki dosyalar değişmedi - Ben de kontrol ettim - hatalı montaj senaryosu bazı meta veri veya sadece çöp ekliyor gibi görünüyor.
genisoimage -o empty.iso emptydir
?
iso
ve onu bağlamaya çalışabilir misiniz ? mknod -m 660 /dev/loop1 b 7 1
Çalıştırdıktan sonra da kullanabilirsinizchmod 660 /dev/loop*