Пустой файл журнала, если%post содержит обратную галочку или подстановку команд
При создании пользовательского установщика USB для Centos6.6 (не легко) я обнаружил, что если в разделе%post файла кикстарта есть обратные ссылки
- Анаконда завершает работу, но сразу выходит на пустой экран (без вывода видео). Обычно она завершается с сообщением о прекращении Анаконды и т. Д. И
- И anaconda-ks.log, и файл журнала%post существуют, но имеют нулевую длину.
Это работает
%pre --log=/root/postLog.log
echo "This is the post"
ls
%end
Это не работает
%pre --log=/root/postLog.log
echo "This is the post"
echo `ls`
%end
Это тоже не работает
%pre --log=/root/postLog.log
echo "This is the post"
echo $(ls)
%end
Зачем? У меня есть много вещей, которые мне нужно сделать в%post, и отсутствие поддержки подстановки команд / обратной галочки сделает это более трудным.
Любое решение?
Редактировать: И почему мне нужны кавычки?
Программа установки предназначена для продукта устройства, поэтому необходимо установить базовую ОС, пользовательские версии ОС и версии продукта.
Так что в разделе%post что-то похожее на этот шаблон очень распространено:
cd $ApplicationPackageDir
RPMLIST=`ls *.rpm`
RPMCOUNT=`ls *.rpm | /usr/bin/wc -l`
for theRpm in $RPMLIST
do
echo /bin/rpm --quiet --upgrade --nodeps --force $theRpm
done
Аналогичный шаблон для общих действий с файлами, существующими в определенном каталоге.
Вся концепция не работает, если anaconda препятствует наличию обратной черты в файле.
Кроме того, backtick - это действительный оператор bash, с которым, похоже, возникли проблемы с кикстартом.
Должны ли бэк-кнуты работать в кикстарте?
Редактировать II: добавлен $(ls) к примеру