ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
* [sisyphus] средства создания chroot'ов в Сизифе
@ 2007-10-10  9:01 Peter V. Saveliev
  2007-10-10  9:09 ` Alex Gorbachenko
  2007-10-10  9:49 ` Michael Shigorin
  0 siblings, 2 replies; 11+ messages in thread
From: Peter V. Saveliev @ 2007-10-10  9:01 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

...

Задача:

 * создать директорию с некоторым набором установленных пакетов из k репозитариев

На входе есть _только_:

 * список пакетов, которые _необходимо_ иметь в системе
 * список репозитариев (джоступ -- file, ftp, rsync)
 * кэш уже скачанных однажды пакетов (возможно, пустой)

На выходе _необходимо_ получить:

 * директорию, в которой установлены _необходимые_ пакеты
 * там же _должны_ быть установлены пакеты, _достаточные_ для обеспечения
  зависимостей _необходимых_ пакетов
 * там же _не должны_ быть установлены никакие другие пакеты

Вопросы:

 * Что из имеющегося репозитария в Сизифе на данный момент удовлетворяет
  условиям этой задачи?
 * Что в Сизифе возможно доточить до этой задачи? Каковы ожидаемые трудозатраты?

Disclaimer:

 Ответы вида "man hsh-initroot" не принимаются, т.к. не относятся к делу (исключение --
 если только будет достаточное обоснование)

Всем огромное спасибо.
-- 
Peter V. Saveliev

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-10  9:01 [sisyphus] средства создания chroot'ов в Сизифе Peter V. Saveliev
@ 2007-10-10  9:09 ` Alex Gorbachenko
  2007-10-10  9:52   ` Peter V. Saveliev
  2007-10-10  9:49 ` Michael Shigorin
  1 sibling, 1 reply; 11+ messages in thread
From: Alex Gorbachenko @ 2007-10-10  9:09 UTC (permalink / raw)
  To: sisyphus

[-- Attachment #1: Type: text/plain, Size: 299 bytes --]

On Wed, 10 Oct 2007 13:01:01 +0400
Peter wrote:

>Ответы вида "man hsh-initroot" не принимаются, т.к. не относятся к
>делу (исключение --
> если только будет достаточное обоснование)

почему ?

http://lists.altlinux.ru/pipermail/sisyphus/2007-March/199063.html

-- 
np: Naildown - Lame

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-10  9:01 [sisyphus] средства создания chroot'ов в Сизифе Peter V. Saveliev
  2007-10-10  9:09 ` Alex Gorbachenko
@ 2007-10-10  9:49 ` Michael Shigorin
  2007-10-10 10:19   ` Peter V. Saveliev
  1 sibling, 1 reply; 11+ messages in thread
From: Michael Shigorin @ 2007-10-10  9:49 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

On Wed, Oct 10, 2007 at 01:01:01PM +0400, Peter V. Saveliev wrote:
> На входе есть _только_:
>  * список пакетов, которые _необходимо_ иметь в системе
>  * список репозитариев (джоступ -- file, ftp, rsync)
>  * кэш уже скачанных однажды пакетов (возможно, пустой)
> На выходе _необходимо_ получить:
>  * директорию, в которой установлены _необходимые_ пакеты
>  * там же _должны_ быть установлены пакеты, _достаточные_ для
>  обеспечения зависимостей _необходимых_ пакетов
>  * там же _не должны_ быть установлены никакие другие пакеты
> Вопросы:
>  * Что из имеющегося репозитария в Сизифе на данный момент
>  удовлетворяет условиям этой задачи?

spt и ltsp5-server (ltsp-build-client) посмотри.  Последний
сейчас переведён с использования spt (вместе с обставлением его
псевдопользователем) на формирование чрута от root (как и в 
sandman, если помнишь).  Поскольку предполагается использование
или рутом, или в инсталере, то это только упрощает картинку.

BTW с правами у тебя как?

>  * Что в Сизифе возможно доточить до этой задачи? Каковы
>  ожидаемые трудозатраты?

Не знаю, но есть некоторый интерес в том, чтобы нечто более-менее
одно [на каждый существенно отличный случай] всё-таки появилось.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/
 ----       Oct 26--27, Kiev, Ukraine:
--       http://conference.osdn.org.ua


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-10  9:09 ` Alex Gorbachenko
@ 2007-10-10  9:52   ` Peter V. Saveliev
  2007-10-10 10:09     ` Andrew Borodin
  2007-10-10 11:30     ` Dmitry V. Levin
  0 siblings, 2 replies; 11+ messages in thread
From: Peter V. Saveliev @ 2007-10-10  9:52 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

On Wednesday 10 October 2007, Alex Gorbachenko wrote:
> On Wed, 10 Oct 2007 13:01:01 +0400
>
> Peter wrote:
> >Ответы вида "man hsh-initroot" не принимаются, т.к. не относятся к
> >делу (исключение --
> > если только будет достаточное обоснование)
>
> почему ?
>

мне категорически не нужен rpm со всеми зависимостями rpmbuild.

hasher не удовлетворяет условию, что в чруте не должно быть пакетов, не 
входящих в список достаточных для удовлетворения зависимостей необходимых 
пакетов.

-- 
Peter V. Saveliev

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-10  9:52   ` Peter V. Saveliev
@ 2007-10-10 10:09     ` Andrew Borodin
  2007-10-10 10:14       ` Andrew Borodin
  2007-10-10 11:30     ` Dmitry V. Levin
  1 sibling, 1 reply; 11+ messages in thread
From: Andrew Borodin @ 2007-10-10 10:09 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

On Wed, Oct 10, 2007 at 01:52:11PM +0400, Peter V. Saveliev wrote:
> мне категорически не нужен rpm со всеми зависимостями rpmbuild.

> hasher не удовлетворяет условию, что в чруте не должно быть пакетов, не 
> входящих в список достаточных для удовлетворения зависимостей необходимых 
> пакетов.

Мне как-то надо было создать chroot для запуска одного САПРа.  
Делал я как раз через hasher.

Там надо переопределить build список пакетов. Вместо всяких 
-devel написать то, что вам надо. Точнее сейчас не скажу -- делал 
дома.  В результате никаких -devel пакетов в chroot не ставилось, 
был как раз необходимый минимум.

Если надо, то подробности завтра.

-- 

С уважением,
А. Бородин.


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-10 10:09     ` Andrew Borodin
@ 2007-10-10 10:14       ` Andrew Borodin
  0 siblings, 0 replies; 11+ messages in thread
From: Andrew Borodin @ 2007-10-10 10:14 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

On Wed, Oct 10, 2007 at 02:09:42PM +0400, Andrew Borodin wrote:
> Там надо переопределить build список пакетов. Вместо всяких 
> -devel написать то, что вам надо. Точнее сейчас не скажу -- 
> делал дома.  В результате никаких -devel пакетов в chroot не 
> ставилось, был как раз необходимый минимум.

О, кажется, танцевать надо отсюда:

hsh-initroot --pkg-build-list=LIST --pkg-init-list=LIST

Я pkg-init-list оставил дефолтовый, а в pkg-build-list внёс 
нужные для программы пакеты.

-- 

С уважением,
А. Бородин.


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-10  9:49 ` Michael Shigorin
@ 2007-10-10 10:19   ` Peter V. Saveliev
  0 siblings, 0 replies; 11+ messages in thread
From: Peter V. Saveliev @ 2007-10-10 10:19 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

On Wednesday 10 October 2007, Michael Shigorin wrote:
<skip />
> spt и ltsp5-server (ltsp-build-client) посмотри.  Последний
> сейчас переведён с использования spt (вместе с обставлением его
> псевдопользователем) на формирование чрута от root (как и в
> sandman, если помнишь).  Поскольку предполагается использование
> или рутом, или в инсталере, то это только упрощает картинку.
>
> BTW с правами у тебя как?

образ должен собираться от пользователя. 

от рута он у меня и сейчас собирается в моей среде. Но настало время "выйти в 
люди", а для этого нужно оторвать использование sudo и всё такое прочее.

>
> >  * Что в Сизифе возможно доточить до этой задачи? Каковы
> >  ожидаемые трудозатраты?
>
> Не знаю, но есть некоторый интерес в том, чтобы нечто более-менее
> одно [на каждый существенно отличный случай] всё-таки появилось.

Проблема в том, что всё, что в Сизифе есть или будет, заточено исключительно 
под текущую проблематику сборки дистрибутивов ALT. При этом все прочие 
варианты не проходят, т.к. ALT-специфика прибивается гвоздями.

Казалось бы, задача простая: сделать директорию и установить туда пакеты из 
списка, который вполне определён и _ограничен_. Мне не нужны там rpm, libX11 
и kdelibs. У меня там нет инсталлера и etcnet.

А уж что потом из этого делать -- или ALT, или нет -- неважно. Доставить 
нужное всегда проще, чем отрезать лишнее.

Я, похоже, к имеющимся ндцати средствам рискую добавить ндцатьпервое :(((
-- 
Peter V. Saveliev

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-10  9:52   ` Peter V. Saveliev
  2007-10-10 10:09     ` Andrew Borodin
@ 2007-10-10 11:30     ` Dmitry V. Levin
  2007-10-29  9:59       ` Alexey Tourbin
  1 sibling, 1 reply; 11+ messages in thread
From: Dmitry V. Levin @ 2007-10-10 11:30 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

[-- Attachment #1: Type: text/plain, Size: 1055 bytes --]

On Wed, Oct 10, 2007 at 01:52:11PM +0400, Peter V. Saveliev wrote:
> On Wednesday 10 October 2007, Alex Gorbachenko wrote:
> > On Wed, 10 Oct 2007 13:01:01 +0400
> >
> > Peter wrote:
> > >Ответы вида "man hsh-initroot" не принимаются, т.к. не относятся к
> > >делу (исключение --
> > > если только будет достаточное обоснование)
> >
> > почему ?
> >
> 
> мне категорически не нужен rpm со всеми зависимостями rpmbuild.
> hasher не удовлетворяет условию, что в чруте не должно быть пакетов, не 
> входящих в список достаточных для удовлетворения зависимостей необходимых 
> пакетов.

псевдокод решения этой задачи:

$ mkaptbox
$ needed=$(path/to/aptbox/apt-get -y --print-uris install список-нужных-пакетов |sed регвыражение |sort -u)
$ hsh --ini --pkg-build=,
$ hsh-install список-нужных-пакетов
$ installed=$(hsh-run -- rpmquery -a --qf '%{name}\n' |sort -u)
$ hsh-run --r -- rpmi -e $(comm -23 <(echo "$installed") <(echo "$needed"))

регвыражение можно позаимствовать из
/usr/bin/hsh-sh-functions:print_uris()


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-10 11:30     ` Dmitry V. Levin
@ 2007-10-29  9:59       ` Alexey Tourbin
  2007-10-29 10:31         ` Dmitry V. Levin
  0 siblings, 1 reply; 11+ messages in thread
From: Alexey Tourbin @ 2007-10-29  9:59 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

[-- Attachment #1: Type: text/plain, Size: 3171 bytes --]

On Wed, Oct 10, 2007 at 03:30:40PM +0400, Dmitry V. Levin wrote:
> > мне категорически не нужен rpm со всеми зависимостями rpmbuild.
> > hasher не удовлетворяет условию, что в чруте не должно быть пакетов, не 
> > входящих в список достаточных для удовлетворения зависимостей необходимых 
> > пакетов.
> 
> псевдокод решения этой задачи:
> 
> $ mkaptbox
> $ needed=$(path/to/aptbox/apt-get -y --print-uris install список-нужных-пакетов |sed регвыражение |sort -u)
> $ hsh --ini --pkg-build=,
> $ hsh-install список-нужных-пакетов
> $ installed=$(hsh-run -- rpmquery -a --qf '%{name}\n' |sort -u)
> $ hsh-run --r -- rpmi -e $(comm -23 <(echo "$installed") <(echo "$needed"))
> 
> регвыражение можно позаимствовать из
> /usr/bin/hsh-sh-functions:print_uris()

Что-то я не понял, какой в этом смысл.

Я бы очень не рекомендовал делать делать какой-либо чрут, в котором
нету пакета basesystem.  Я бы даже сказал, что работоспособность
чего-либо без basesystem никто гарантировать не будет.

Поэтому делать можно, как мне кажется, гораздо проще:

$ hsh --initroot --pkg-build-list=basesystem
Components: hasher
Processing pkglists... hasher done
Processing srclists...  hasher done
Creating component releases... done
Updating global release file... done
Appending MD5Sum... hasher done
All your base are belong to us!!!
Preparing packages for installation...
altlinux-release-Sisyphus-alt20070101
libreadline-5.1.4-alt3
bash-3.1.17-alt3
bzip2-1.0.4-alt3
chkconfig-1.3.29-alt2
common-licenses-1.3-alt1
diffutils-2.8.7-alt3
libuuid-1.40.2-alt1
libdevmapper-1.02.22-alt1
libblkid-1.40.2-alt1
libcom_err-1.40.2-alt1
libe2fs-1.40.2-alt1
libss-1.40.2-alt1
e2fsprogs-1.40.2-alt1
libtcb-1.0.2-alt1
shadow-convert-4.0.4.1-alt7
nss_tcb-1.0.2-alt1
sed-4.1.5-alt2
findutils-4.2.29-alt1
libpcre3-7.4-alt1
grep-2.5.1a-alt3
control-0.7.4-alt1
pam-config-control-1.4.3.1-alt1
libpasswdqc-1.1.0-alt0.3
pam-config-1.4.3.1-alt1
libpam0-0.99.6.3-alt2
pam0_tcb-1.0.2-alt1
tcb-utils-1.0.2-alt1
pam-0.99.6.3-alt2
pam0_userpass-1.0.2-alt2
pam0_mktemp-1.0.3-alt4
pam0_passwdqc-1.1.0-alt0.3
shadow-utils-4.0.4.1-alt7
etcskel-2.0.11-alt2
gawk-3.1.5-alt3
gzip-1.3.5-alt4
hashalot-0.3-alt1
losetup-2.12r-alt5
perl-base-5.8.8-alt14
rootfiles-alt-alt9.3
libtic-5.6-alt4
termutils-5.6-alt4
msulogin-0.9.1-alt3
SysVinit-2.86-alt1
psmisc-22.3-alt1
service-0.5.14-alt1
libwrap-7.6-alt8
portmap-4.0-alt2
nfs-utils-1.1.1-alt1
mount-2.12r-alt5
libgpm-1.20.1-alt8
libncurses-5.6-alt4
procps-3.2.5-alt7
util-linux-2.12r-alt5
libshhopt-1.1.7-alt4
hwclock-2.24-alt2
module-init-tools-3.3-alt0.5.pre6
startup-0.9.8.17-alt1
tar-1.18-alt3
libattr-2.4.39-alt1
libacl-2.2.45-alt1
vim-minimal-7.1.140-alt1
vitmp-1.0-alt4
mktemp-1.5-alt2
$

Что-то встало многовато.  Надо подумать, насколько там нужен mount
и кое-что ещё.  Но *-devel пакетов тут нет, система вполне себе
минимальная.

$ hsh-run --rooter -- du -hs /     
du: `/.out': Permission denied
du: `/.host': Permission denied
41M     /
$

Кстати есть ещё пакет interactivesystem, который лучше подходит для
конструирования "живых систем", а не чрутов.

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-29  9:59       ` Alexey Tourbin
@ 2007-10-29 10:31         ` Dmitry V. Levin
  2007-10-29 10:52           ` Alexey Tourbin
  0 siblings, 1 reply; 11+ messages in thread
From: Dmitry V. Levin @ 2007-10-29 10:31 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

[-- Attachment #1: Type: text/plain, Size: 1566 bytes --]

On Mon, Oct 29, 2007 at 12:59:46PM +0300, Alexey Tourbin wrote:
> On Wed, Oct 10, 2007 at 03:30:40PM +0400, Dmitry V. Levin wrote:
> > > мне категорически не нужен rpm со всеми зависимостями rpmbuild.
> > > hasher не удовлетворяет условию, что в чруте не должно быть пакетов, не 
> > > входящих в список достаточных для удовлетворения зависимостей необходимых 
> > > пакетов.
> > 
> > псевдокод решения этой задачи:
> > 
> > $ mkaptbox
> > $ needed=$(path/to/aptbox/apt-get -y --print-uris install список-нужных-пакетов |sed регвыражение |sort -u)
> > $ hsh --ini --pkg-build=,
> > $ hsh-install список-нужных-пакетов
> > $ installed=$(hsh-run -- rpmquery -a --qf '%{name}\n' |sort -u)
> > $ hsh-run --r -- rpmi -e $(comm -23 <(echo "$installed") <(echo "$needed"))
> > 
> > регвыражение можно позаимствовать из
> > /usr/bin/hsh-sh-functions:print_uris()
> 
> Что-то я не понял, какой в этом смысл.

Этого автор вопроса не раскрыл.

> Я бы очень не рекомендовал делать делать какой-либо чрут, в котором
> нету пакета basesystem.  Я бы даже сказал, что работоспособность
> чего-либо без basesystem никто гарантировать не будет.

Гарантий работоспособности такого чрута автор вопроса тоже не спрашивал.

> Поэтому делать можно, как мне кажется, гораздо проще:
> 
> $ hsh --initroot --pkg-build-list=basesystem

Если точно знать узкую цель, то можно и это множество уменьшить.

> Что-то встало многовато.  Надо подумать, насколько там нужен mount
> и кое-что ещё.

mount вытягивается по зависимостям пакета startup.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [sisyphus] средства создания chroot'ов в Сизифе
  2007-10-29 10:31         ` Dmitry V. Levin
@ 2007-10-29 10:52           ` Alexey Tourbin
  0 siblings, 0 replies; 11+ messages in thread
From: Alexey Tourbin @ 2007-10-29 10:52 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

[-- Attachment #1: Type: text/plain, Size: 814 bytes --]

On Mon, Oct 29, 2007 at 01:31:34PM +0300, Dmitry V. Levin wrote:
> > Поэтому делать можно, как мне кажется, гораздо проще:
> > $ hsh --initroot --pkg-build-list=basesystem
> Если точно знать узкую цель, то можно и это множество уменьшить.

$ hsh-run -- rpm -qa --qf '%{NAME}\t%{SIZE}\n' |sort -k2n |tail
libncurses      888652
libdb4.4        943506
bash    1031308
e2fsprogs       1340689
gawk    1392400
tar     1700304
glibc-core      2625086
util-linux      3417025
perl-base       3772345
coreutils       7764576
$

Большой экономии всё равно не получится, потому что самый большой
пакет -- coreutils.  Зато зависимости пакета basesystem неплохо
продуманы "на все случаи жизни".

А совсем уж микросистемы наверное лучше делать на основе какого-нибудь
busybox.  Типа моего ADSL модема.

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2007-10-29 10:52 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-10-10  9:01 [sisyphus] средства создания chroot'ов в Сизифе Peter V. Saveliev
2007-10-10  9:09 ` Alex Gorbachenko
2007-10-10  9:52   ` Peter V. Saveliev
2007-10-10 10:09     ` Andrew Borodin
2007-10-10 10:14       ` Andrew Borodin
2007-10-10 11:30     ` Dmitry V. Levin
2007-10-29  9:59       ` Alexey Tourbin
2007-10-29 10:31         ` Dmitry V. Levin
2007-10-29 10:52           ` Alexey Tourbin
2007-10-10  9:49 ` Michael Shigorin
2007-10-10 10:19   ` Peter V. Saveliev

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sisyphus


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git