[devel] double chroot
Денис Смирнов
mithraen на altlinux.ru
Вт Ноя 7 23:31:43 MSK 2006
On Tue, Nov 07, 2006 at 12:25:36PM +0300, Alex V. Myltsev wrote:
AVM> * инструменты (mksquashfs, genromfs, mkisofs и прочие необходимые
AVM> для сборки вещи) нельзя выполнять в чруте, потому что мы их туда не
AVM> устанавливаем (они не нужны на получающемся образе, их может не
AVM> быть в исходном репозитарии).
AVM> * инструменты нельзя выполнять в хост-системе, потому что тогда
AVM> потеряется информация, которую хранит fakeroot.
Какой кошмар. Пример скрипта который без этого всего обходится в аттаче.
Все что требуется -- _библиотеки_, которые требует этот пакет (в
большинстве случаев речь всего лишь о glibc).
--
С уважением, Денис
http://freesource.info
----------------------------------------------------------------------------
Настоящие программисты делают так: COPY CON PROGRAM. EXE.
-------------- next part --------------
#!/bin/bash
#=============================================================================#
# Make cpios image from fakeroot directory #
#=============================================================================#
# Requires:
# hasher by Dmitry V. Levin (ldv)
# cpio
#=============================================================================#
# (C) Denis Smirnov <mithraen at freesource.info 12.06.2006 #
#=============================================================================#
set +e
WORKDIR=`realpath $1`
touch "$2"
RESULT=`realpath $2`
chroot="$WORKDIR/chroot/"
T=`mktemp`
echo -en '/etc\0/etc/group\0/etc/passwd\0' > $T
cp -a `which cpio` $chroot/.host/
echo "Creating $RESULT" | csed '/.*/ p green' >&2
hsh-run "$WORKDIR" --rooter --save-fakeroot -- /.host/find / \
-mindepth 1 \
-name .in -prune -o \
-name .out -prune -o \
-name .host -prune -o \
-name .fakedata -prune -o \
-name .altlinux.img -prune -o \
-wholename /usr/lib*/*fakeroot* -prune -o \
-print0 \
| grep -vz ^/etc$ \
| grep -vz ^/etc/passwd$ \
| grep -vz ^/etc/group$ \
>> $T \
2> /dev/null
hsh-run "$WORKDIR" --rooter --save-fakeroot -- /.host/cpio \
-0 -c --create --quiet > "$RESULT" < $T
rm -f $T
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.altlinux.org/pipermail/devel/attachments/20061107/7c824afe/attachment.bin
Подробная информация о списке рассылки Devel