[Comm] Бездисковый клиент: не применяется patch0.iso

George V. Kouryachy george на altlinux.org
Пт Сен 27 10:57:17 MSK 2013


On Mon, Sep 23, 2013 at 04:27:55PM +0400, Михаил Радюк wrote:
> Всем доброго дня!
> Не могу добиться применения файла-заплатки из /srv/public/netinst/overlays-live
Ошибка локализована, после того, как будет собран новый
make-initrd-propagator, она исправится.

Временный фикс состоит в подхакивании full.cz вот таким скриптом:
------ 8< --------------------
#!/bin/sh

ALT0=/var/lib/tftpboot/syslinux/alt0
test -r "$ALT0/full.cz.orig" || cp -a "$ALT0/full.cz" "$ALT0/full.cz.orig"
gzip -d < "$ALT0/full.cz.orig" > /tmp/full
sed 's|&> /dev/null| > /dev/null|' < /tmp/full > /tmp/fullN
gzip < /tmp/fullN > "$ALT0/full.cz"
------ >8 --------------------

Поясняю: монтирование заплаток заскриптовано так:
if nfsmount -o nolock откуда куда &> /dev/null ; then
...
	find куда -name "$profile*.iso" | и смонтировать
...

Ну так вот "&>" (перенаправление и stdout и stderr) -- не только башизм,
но ещё и башизм, не вызывающий у /bin/ash синтаксической ошибки! Вместо
этого mount просто запускается в фоне и последующий find ничего не
находит, пока mount не сработает :(.

На всякий случай скрипт бэкапит исходный full.cz

-- 
				  Георгий Владимирович Курячий
				  Эксперт компании "Альт Линукс"
				  Mailto/JID: george на altlinux.org
				  Mobile: (8)9161738325


Подробная информация о списке рассылки community