Я использую следующие параметры ведения журнала после установки:
%post
exec < /dev/tty3 > /dev/tty3
chvt 3
echo
echo "################################"
echo "# Running Post Configuration #"
echo "################################"
(
echo 'Hello, World!'
cat > test_file <<EOF
Hello World
EOF
) 2>&1 | /usr/bin/tee /var/log/post_install.log
chvt 1
Проблема в том, что я на самом деле не записываю команды, используемые для создания test_file (код, начинающийся с cat и заканчивающийся EOF) в моем файле журнала. Утверждение эха есть, но не более того.
Следующий код решает проблему, но будет означать, что мне нужно добавить оператор tee ко всем моим процедурам после установки, что не является удовлетворительным.
echo -e "# Writing test_file and capturing to log_file" && /usr/bin/tee -ai log_file >> test_file << EOF
Hello World
EOF
Текущий созданный файл журнала записывает только эхо-запрос, чего недостаточно. Я хочу фиксировать выполненные команды вместе с соответствующими параметрами и аргументами.
Сообщение может автоматически регистрировать:
%post --log=/root/kickstart-post.log
И бег
set -xshould log all executed commands and arguments.