如何制作ISO文件 cdfs文件系統是什么意思

我們裝linux或windows系統時,首先都會下載對應的系統鏡像文件,這些文件都是以.iso結尾 。ISO是一種什么格式的文件呢?
ISO文件(通常稱為 ISO 鏡像)是一種存檔文件,是光盤(如 CD 或 DVD)上數據的完整復制(或鏡像) 。ISO文件通常用于備份光盤,或用于分發旨在刻錄到光盤的大型文件集 。下面是下載的Ubuntu22.04系統安裝ISO文件 。

如何制作ISO文件 cdfs文件系統是什么意思

文章插圖

ubuntu 鏡像文件
ISO文件介紹
ISO 名稱取自光盤使用的文件系統名稱,通常是 ISO 9660,也被稱為CDFS 。ISO鏡像是物理光盤(如 CD、DVD 或藍光光盤)上包括文件系統本身的所有內容的無壓縮完整副本 。ISO 鏡像背后的想法是,可以存檔光盤的精確數字副本,然后使用該鏡像刻錄新光盤,該光盤又是原始光盤的精確副本 。大多數操作系統(和許多實用程序)可以把 ISO 鏡像掛載為虛擬光盤,在這種情況下,應用程序視其為插入了真正的光盤 。
雖然許多人確實使用 ISO 鏡像來創建光盤備份,但如今 ISO 鏡像主要用于分發大型程序和操作系統 。因為它允許所有文件都包含在一個易于下載的文件中 。然后,人們可以決定是要掛載該鏡像還是使用它來刻錄光盤 。包括 Windows 和各種 Linux 發行版的大多數可以下載的操作系統,都是使用 ISO 鏡像分發 。
下面介紹下如何在Linux上掛載、制作ISO文件
linux上如何掛載ISO文件
使用mount指令掛載ISO文件到指定目錄 。
wq@wq-VirtualBox:~/Downloads/iso % ll
total 3.5G
-rwxr-x— 1 wq wq 3.5G 6月11 11:38 ubuntu-22.04-desktop-amd64.iso
wq@wq-VirtualBox:~/Downloads/iso % sudo mkdir -p /iso
wq@wq-VirtualBox:~/Downloads/iso % sudo mount -o loop ubuntu-22.04-desktop-amd64.iso /iso
mount: /iso: WARNING: device write-protected, mounted read-only.
wq@wq-VirtualBox:~/Downloads/iso % ll /iso
total 42K
dr-xr-xr-x 1 root root 2.0K 4月16 06:08 boot
-r–r–r– 1 root root 2.0K 4月19 18:23 boot.catalog
dr-xr-xr-x 1 root root 2.0K 4月19 18:21 casper
dr-xr-xr-x 1 root root 2.0K 4月19 18:19 dists
dr-xr-xr-x 1 root root 2.0K 4月16 06:08 EFI
dr-xr-xr-x 1 root root 2.0K 4月19 18:19 install
-r–r–r– 1 root root26K 4月19 18:23 md5sum.txt
dr-xr-xr-x 1 root root 2.0K 4月19 18:19 pool
dr-xr-xr-x 1 root root 2.0K 4月19 18:19 preseed
lr-xr-xr-x 1 root root1 4月19 18:19 ubuntu -> .
把Ubuntu系統安裝鏡像掛載到/iso目錄,查看目錄下的文件,發現文件權限都是只讀的,原因是ISO 9660(CDFS)文件系統是一個只讀文件系統,即使root 用戶也無法修改 。下面用root用戶刪除/iso下一個文件做下實驗
root@wq-VirtualBox:/iso# rm -f boot.catalog
rm: cannot remove ‘boot.catalog’: Read-only file system
root@wq-VirtualBox:/iso#
linux上如何制作ISO文件
使用mkisofs 命令制作ISO文件 。下面對此命令做一個簡單的示例 。
首先制作一個100M大文件 。
wq@wq-VirtualBox:~/Downloads/test % dd if=/dev/zero of=test bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 0.112925 s, 929 MB/s
wq@wq-VirtualBox:~/Downloads/test % ll
total 100M
-rw-rw-r– 1 wq wq 100M 6月12 08:20 test
使用mkisofs把此文件封裝到ISO,可以看到封裝后的ISO文件大小為100M,沒有做任何壓縮 。
wq@wq-VirtualBox:~/Downloads/test % sudo mkisofs -o test.iso ~/Downloads/test
[sudo] password for wq:
I: -input-charset not specified, using utf-8 (detected in locale settings)
9.73% done, estimate finish Sun Jun 12 08:32:40 2022
19.48% done, estimate finish Sun Jun 12 08:32:40 2022
29.20% done, estimate finish Sun Jun 12 08:32:40 2022
38.95% done, estimate finish Sun Jun 12 08:32:40 2022
48.66% done, estimate finish Sun Jun 12 08:32:40 2022
58.41% done, estimate finish Sun Jun 12 08:32:40 2022
68.13% done, estimate finish Sun Jun 12 08:32:40 2022
77.88% done, estimate finish Sun Jun 12 08:32:40 2022
87.59% done, estimate finish Sun Jun 12 08:32:40 2022
97.34% done, estimate finish Sun Jun 12 08:32:40 2022
Total translation table size: 0
Total rockridge attributes bytes: 0
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
51374 extents written (100 MB)
wq@wq-VirtualBox:~/Downloads/test % ll test.iso
-rw-r–r– 1 root root 101M 6月12 08:32 test.iso
使用mount指令把test.iso掛載到/iso目錄, 可以看到先前制作的100M大文件
wq@wq-VirtualBox:~/Downloads/test % sudo mount -o loop test.iso /iso
mount: /iso: WARNING: device write-protected, mounted read-only.
wq@wq-VirtualBox:~/Downloads/test % ll /iso
total 100M
【如何制作ISO文件 cdfs文件系統是什么意思】-r-xr-xr-x 1 root root 100M 6月12 08:22 test