Релизная версия CentOS ISO

Использование только функций оболочки:

s1=ka3ak
s2=Raman

maxlen=${#s1}
diffs=0
[[ ${#s2} -gt $maxlen ]] && maxlen=${#s2}
for((i=0; i < maxlen; i++))
do
  [[ ${s1:i:1} == ${s2:i:1} ]] || ((++diffs))
done
echo $((100 * diffs / maxlen))
-2
05.09.2019, 11:32
2 ответа

В корневом каталоге любого RHEL/CentOS ISO вы найдете два скрытых файла:.discinfoи .treeinfo.

Файл .discinfoбудет выглядеть так:

1504618416.850667
7.4
x86_64

Вторая строка указывает, что этот пример файла .discinfoбыл из CentOS версии 7.4.

Файл .treeinfoбудет выглядеть следующим образом:

[general]
name = CentOS-7
family = CentOS
timestamp = 1504618609.47
variant = 
version = 7
packagedir = 
arch = x86_64

[stage2]
mainimage = LiveOS/squashfs.img

[images-x86_64]
kernel = images/pxeboot/vmlinuz
initrd = images/pxeboot/initrd.img
boot.iso = images/boot.iso

[images-xen]
kernel = images/pxeboot/vmlinuz
initrd = images/pxeboot/initrd.img

Итак, если вам нужен только основной номер версии:

# mount -o loop,ro CentOS.iso /mnt
# grep ^version /mnt/.treeinfo | cut -d " " -f 3
7
# umount /mnt

Если вам также нужен дополнительный номер версии («уровень исправления»):

# mount -o loop,ro CentOS.iso /mnt
# head -2 /mnt/.discinfo | tail -1
7.4
# umount /mnt
3
28.01.2020, 05:15

Возможно, это умеренное мошенничество, но :проект CentOS публикует контрольные суммы своих официальных ISO-образов(ссылка на пример для CentOS 6.10 ). Запустите sha1sum на вашем iso и идите сравните, контрольная сумма не зависит от имени файла. Вы также можете посмотреть приблизительный размер ISO (, но имейте в виду, что некоторые программы отображают 2 ^ 20 байт как МБ, некоторые 10 ^ 6 байт, поэтому лучше исключать, только если разница в размере составляет не менее 10% ). ].

0
28.01.2020, 05:15

Теги

Похожие вопросы