Команда isosize позволяет задействовать одноименную утилиту, предназначенную для вывода информации о размере файловой системы ISO9660, которая присутствует на оптическом диске в указанном приводе или в файле образа оптического диска (ISO-файле). Данная утилита поставляется в комплекте с утилитами для записи оптических дисков wodim. Она работает исключительно с файловой системой ISO9660.
Примечание: ввиду особенностей стандарта ISO9660, размер файловой системы может отличаться от размера оптического диска или ISO-файла.
Базовый синтаксис команды выглядит следующим образом:
$ isosize [параметры] имя-iso-файла
В первую очередь следует отметить, что утилите необходимо указать способ доступа к существующей файловой системе ISO9660. Для этого следует передать утилите либо путь к ISO-файлу, либо путь к файлу устройства привода для чтения оптических дисков (чаще всего это /dev/sr0). Хотя по умолчанию утилита выводит размер файловой системы в байтах, она поддерживает параметр -x, позволяющий выводить количество блоков и параметр -d, позволяющий указать делитель для полученного значения размера файловой системы в байтах. В случае возникновения ошибок выводятся соответствующие сообщения.
Для того, чтобы получить информацию о размере файловой системы оптического диска достаточно передать утилите путь к файлу устройства чтения оптических дисков:
$ isosize /dev/sr0
isosize: невозможно открыть /dev/sr0: Носитель не найден
Это пример сообщения об ошибке — в приводе нет диска.
Если вставить диск и снова использовать приведенную выше команду, будет выведена информация о размере файловой системы в байтах:
$ isosize /dev/sr0
3124246528
Размер файловой системы — 3124246528 байт. Если вам удобнее видеть размер в килобайтах, вы можете использовать параметр -d с делителем 1024, в мегабайтах — делитель 1048576 (1024 × 1024), в гигабайтах — делитель 1073741824 (1024 × 1024 × 1024):
$ isosize -d 1024 /dev/sr0
3051022
$ isosize -d 1048576 /dev/sr0
2979
$ isosize -d 1073741824 /dev/sr0
2
Утилита осуществляет простое целочисленное деление, поэтому выводимые ею значения при использовании делителей очень примерные.
Если вас интересует размер в блоках, может использоваться параметр -x:
$ isosize -x /dev/sr0
число секторов: 1525511, размер сектора: 2048
В данном случае утилита выводит подробное сообщение.
В случае наличия ISO-файла вместо оптического диска процесс получения информации о размере файловой системы принципиально не отличается от описанного выше:
$ isosize ./alpine-extended-3.18.3-x86_64.iso
883949568
$ isosize -d 1024 ./alpine-extended-3.18.3-x86_64.iso
863232
$ isosize -d 1048576 ./alpine-extended-3.18.3-x86_64.iso
843
$ isosize -d 1073741824 ./alpine-extended-3.18.3-x86_64.iso
0
$ isosize -x ./alpine-extended-3.18.3-x86_64.iso
число секторов: 431616, размер сектора: 2048
Несложно увидеть, что утилита вполне корректно работает с ISO-файлами.