Во-первых, /bin/echo -e "\x1b\x5b\x48\x1b\x5b\x32\x4a\c" на самом деле не очищает экран. Вы можете прокрутить вверх, чтобы увидеть предыдущее содержимое.
Во-вторых, я открыл IRB (, интерактивную оболочку Ruby ), и набрал:
p `clear`
Или
p %x(clear)
Или:
require 'open3'
p Open3.capture2('clear')[0]
Все коды должны вернуться"\e[3J\e[H\e[2J"
Теперь откройте терминал, введитеecho -e "\e[3J\e[H\e[2J"
Экран должен очиститься. Они называются управляющими последовательностями ANSI :
.
https://en.wikipedia.org/wiki/ANSI_escape_code
Вы можете использовать эти коды, чтобы мигать текст (\e[5m
), раскрашивать текст:(for i in {0..255} ; do printf "\e[38;5;${i}m${i} " ; done ; echo
)и многое другое!
Я только что понял. Две вещи, которые должны соответствовать друг другу в команде genisoimage
и файле isolinux.cfg
, указаны какTHISNEEDSTOMATCH
:
genisoimage -o../centoscustom.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -v -T -V 'THISNEEDSTOMATCH'.
append inird=inird.img inst.stage2=hd:LABEL=THISNEEDSTOMATCH quiet
Я только что боролся с этой самой проблемой (или, скорее, с теми же симптомами ). Оказалось, что я на самом деле забыл включить весь images/install.img
, что, к удивлению, к удивлению, означает, что у установщика возникли проблемы с поиском stage2.
mkisofs/genisoimage просто слепо включает все, что находится в каталоге «staging area».
Короче говоря, вам нужны и isolinux, и install.img, чтобы добиться успеха. То, как я решил проблему, заключалось в том, чтобы смонтировать стоковое изображение и проверить его.
Для справки, все происходит примерно так (замените подходящее зеркало самостоятельно.)
mkdir iso
rsync -av rsync://mirrors.dotsrc.org/centos/8.2.2004/BaseOS/x86_64/os/isolinux./iso/
rsync -av rsync://mirrors.dotsrc.org/centos/8.2.2004/BaseOS/x86_64/os/images/*.img./iso/images/
cp my_custom_isolinux.cfg iso/isolinux/isolinux.cfg #Optional
cp my_custom_splash.png iso/isolinux/splash.png #Optional
cd iso && mkisofs -o../qeyeboot8.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "CentOS-8-2-2004-x86_64-dvd" -R -J -v -T.
isohybrid../qeyeboot8.iso #Optional, allows the image to also be booted from USB