Apakah file gambar ISO sistem file dengan sendirinya?


45

Saya mencoba memahami hubungan apa yang dimiliki xxx.isofile dengan aspek lain dari perangkat blok, misalnya partisi dan sistem file.

Sudah umum bagi orang untuk menggambarkan mengakses atau membuat suatu penggunaan .isosebagai "pemasangan ISO".

Jadi untuk mengajukan pertanyaan dengan cara lain: Jika saya, atau beberapa perangkat lunak, ingin "me-mount" xxx.isofile ke perangkat USB, apakah perlu memiliki partisi yang sudah ada lengkap dengan sistem file (misalnya FAT x atau ext X ) atau apakah .isofile - sekali dalam keadaan "dipasang" - konstruksi tingkat lebih rendah yang melakukan peran yang sama / mirip dengan sistem file (atau bahkan partisi)?


15
Hanya komentar: Istilah "file ISO" dalam banyak kasus berarti file yang berisi sistem file dalam standar ISO 9660 untuk media disk optik. Anda bisa mendapatkan file ISO dengan menyalin CD-atau DVD-ROM menggunakan dd, misalnya.
Dubu

4
Pasang di USB? Maksud Anda seperti membuat konten ISO muncul sebagai bagian dari pohon VFS di bawah titik pemasangan stik USB? Maksudmu suka mount /dev/my_usb_stick /media/usb_stick && mount -o loop,ro foo.iso /media/usb_stick/some_dir? ( mountPerintah Linux mendukung loopopsi mount untuk menyiapkan perangkat loop loop, karena ingin me-mount gambar FS seperti .iso adalah umum.)
Peter Cordes

Anda menggunakan file sebagai perangkat blok saat Anda memasang ISO.

Jawaban:


64

File ISO bukan sistem file. Ini berisi sistem file. Dari sudut pandang penggunaan, ini berfungsi dengan cara yang sama seperti hard disk atau perangkat USB atau DVD - Anda harus memiliki titik pemasangan, yaitu tempat di sistem file tempat Anda dapat memasang itu untuk mendapatkan konten.


1
terima kasih, jadi apakah iso - sekali dalam keadaan terpasang - akan lebih analog dengan perangkat blok atau partisi dalam kasus itu? - atau apakah tidak mungkin untuk menggambar analogi langsung karena iso adalah hal yang sama sekali berbeda lagi?
the_velour_fog

@the_velour_fog Itu analogi yang sangat bagus!
Jenny D

19
Alasan Anda tidak dapat menulis bukan karena itu adalah file biasa yang dipasang bukan file khusus perangkat, tetapi karena driver sistem file tidak mendukungnya. Jika gambar tersebut mengandung sistem file lain seperti FAT32 atau EXT2 dan bukan ISO9660, Anda dapat membaca-menulis.
rexkogitans

4
@rexkogitans: ... or UDF , alias ISO 13346. Ini adalah format file yang digunakan oleh CD-R yang dapat ditulis ulang.
MSalters

1
@ hobbs: stik USB, HDD, dll. juga tidak perlu memiliki partisi. Perangkat blok tanpa partisi kadang-kadang disebut "SuperFloppy". Tidak perlu mempartisi sesuatu ketika Anda hanya menempatkan satu partisi di atasnya. Hanya saja beberapa sistem operasi hanya mengharapkan tabel partisi ada di sana, dan tidak mengenali sistem file secara langsung pada perangkat blok. OS tertanam di kamera digital point & shoot, misalnya, sering menolak memasang kartu SD dalam format SuperFloppy.
Jörg W Mittag

42

Ada tiga konsep terpisah di sini:

  • Sebuah perangkat blok , yang merupakan perangkat fisik atau virtual yang mewakili serangkaian sama blok data berukuran. HDD adalah perangkat blokir. Begitu juga CD data.
  • Sistem file , yang mendefinisikan cara menyimpan data dalam perangkat blok yang mewakili serangkaian file dan direktori dan informasi sistem file lainnya. ext3 adalah sistem file, seperti ISO9660.
  • File gambar adalah salinan data pada perangkat blok, dalam bentuk file (pada sistem file lain). File gambar dapat memiliki ekstensi apa pun; .imgitu biasa.

Sebuah .isofile yang biasanya merupakan file gambar dari perangkat blok yang mengandung ISO9660 filesystem . Ini berisi representasi tepat dari data yang disimpan dalam CD. Secara analog, Anda dapat memiliki .imgfile (panggil .ext3jika Anda mau) yang merupakan file gambar dari perangkat blok yang mengandung sistem file ext3 . Ini adalah cara umum untuk mendistribusikan USB bootable atau gambar floppy. Namanya sewenang-wenang, .isohanya apa yang kita sebut file gambar yang mengandung sistem file ISO9660 (atau, kadang-kadang, sistem file UDF, yang lebih modern).

Anda tidak dapat memasang file gambar secara langsung, karena itu bukan perangkat blok, tetapi hanya salinan data dalam perangkat blok. Namun, Linux dan OS lain memiliki fitur yang disebut perangkat loop yang memungkinkan file gambar dapat diakses sebagai perangkat blok. Untuk memasang file ISO, pertama-tama Anda membuat perangkat loop yang mewakili perangkat blok virtual dengan konten yang sama dengan file ISO. Kemudian Anda dapat memasangnya seperti halnya Anda menggunakan CD fisik, atau seperti Anda menggunakan drive USB yang berisi sistem file ext3, atau yang lainnya. The mountperintah dapat melakukan ini untuk Anda secara otomatis, tetapi di bawah tenda mereka adalah langkah-langkah yang terpisah.

Partisi adalah cara memecah perangkat blok menjadi beberapa, lebih kecil, perangkat blok logis. Partisi adalah opsional. CD analog dengan drive USB yang tidak dipartisi atau floppy disk dalam hal ini, di mana sistem file disimpan pada seluruh perangkat tanpa tabel partisi. Karena itu file ISO tidak mengandung tabel partisi. Tidak ada yang menghentikan Anda dari, katakanlah, membuat sistem file ISO9660 pada partisi HDD. Bila Anda lakukan memiliki partisi, file gambar mungkin satu partisi atau perangkat fisik seluruh termasuk tabel partisi, tetapi CD tidak dipartisi, sehingga perbedaan tidak relevan untuk ISO images.

Anda tidak perlu memasang perangkat - atau file gambar - untuk mengakses file yang ada di dalamnya. Beberapa aplikasi dan perpustakaan memiliki kemampuan untuk mengakses data secara langsung, tanpa melibatkan sistem operasi. Mereka hanya memahami sistem file secara langsung, dan memiliki kode yang meniru apa yang dilakukan OS ketika mengakses file dalam sistem file. Inilah sebabnya mengapa ada alat yang dapat menunjukkan kepada Anda konten file ISO, tanpa benar-benar memasangnya melalui OS. Mounting adalah konsep sistem operasi, tetapi itu bukan satu-satunya cara mengakses data pada perangkat blok. Beberapa orang mungkin menganggap tindakan sekadar melakukan "pemasangan" ini dengan cara tertentu.

Apa yang Anda pasang perangkat (atau file ISO melalui perangkat loopback) tidak relevan. Di situlah di hierarki jalur Anda meminta OS untuk menampilkan konten perangkat. Di Linux, Anda biasanya akan memilih direktori pada beberapa sistem file yang sudah terpasang. Tapi tidak ada yang menghentikan Anda dari, katakanlah, boot dari CD dan meminta kernel untuk memasangnya sebagai sistem file root. Tentu saja, karena file ISO adalah, well, file, mungkin ada pada beberapa sistem file untuk memulainya, yang harus Anda pasang di suatu tempat untuk mengakses ISO sama sekali.


11

Tidak, file gambar ISO bukan sistem file dengan sendirinya. Sama seperti partisi dapat berisi sistem file, tetapi bukan sistem file, apakah file gambar ISO berisi sistem file, tetapi itu bukan sistem file.

Tetapi Anda membutuhkan sistem file untuk dua hal:

  • tempat untuk menyimpan file iso (dengan asumsi jika itu tidak datang sebagai cakram perak mengkilap)
  • direktori tempat untuk me-mount misalnya /mnt/isotmp

Setelah itu, jika jalur menyelesaikan sesuatu di bawahnya /mnt/isotmp, kode untuk sistem file gambar ISO akan melakukan penyelesaian, pembukaan, dll.


bagus, pengaturan yang Anda jelaskan mirip dengan bagaimana hard disk dipasang, yaitu block device/partition/filesystem/memasang di /some/directory. jadi saya kemudian menganggap iso pada dasarnya melakukan fungsi sistem file?
the_velour_fog

Saya tidak akan menyebutnya demikian. File ISO berisi sistem file. Persis seperti partisi berisi sistem file. Anda tidak akan mengatakan bahwa partisi adalah sistem file juga (saya harap)
Anthon

Bagaimana ini berbeda dari mengatakan "file png berisi gambar, tetapi bukan gambar", yaitu perbedaan konyol dan tidak berguna?
Nick Matteo

@the_velour_fog: Lebih tepatnya mengatakan iso pada dasarnya menjalankan fungsi perangkat blok.
TMN
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.