From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrey Astafiev To: devel@linux.iplabs.ru Subject: Re: [devel] minimal system Message-Id: <20011127090539.09c3d6ca.andrei@tvcell.ru> In-Reply-To: <20011126112429.GG25753@pc152.belcaf.minsk.by> References: <20011126093551.6d234204.andrei@tvcell.ru> <20011126112429.GG25753@pc152.belcaf.minsk.by> X-Mailer: Sylpheed version 0.6.5 (GTK+ 1.2.10; i586-alt-linux) Mime-Version: 1.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 8bit Sender: devel-admin@linux.iplabs.ru Errors-To: devel-admin@linux.iplabs.ru X-BeenThere: devel@linux.iplabs.ru X-Mailman-Version: 2.0 Precedence: bulk Reply-To: devel@linux.iplabs.ru List-Help: List-Post: List-Subscribe: , List-Id: ALT Linux Team Developers mailing list List-Unsubscribe: , List-Archive: X-Original-Date: Tue, 27 Nov 2001 09:05:39 +0300 Date: Tue, 27 Nov 2001 09:05:39 +0300 Archived-At: List-Archive: List-Post: On Mon, 26 Nov 2001 13:24:30 +0200 Alexander Bokovoy wrote: Александр, спасибо, за такое подробное разъяснение. > Подготовка chroot-а должна производится другим образом: > > 1. mkdir -t /mnt/test/{bin,etc/rpm,usr/lib/rpm,var/lib/rpm} > 2. rpm2cpio rpm-4.0.3-alt*.i586.rpm | \ > (cd /mnt/test ; \ > cpio -iumd --quiet bin/rpm usr/lib/rpm/{rpmrc,macros}) > 3. echo "%_dbapi 3" >/mnt/test/etc/rpm/macros.db1 > 4. chroot /mnt/test /bin/rpm --initdb обязательно учту в своих следующих опытах. > Суть этих операций состоит в том, что: > 1. Текущий RPM 4.0.3 содержит совместную с DB3 > ошибку при работе с chroot-ованием, проявляющуюся > при использовании опции --root и выражающуюся в > порче как системной, так и за-chroot-енной базы > RPM (видно ниже в Вашем примере). т.е. на некоторое время про опцию --root в rpm 4.0.3 можно забыть? > > # du -s /mnt/test > > 108M /mnt/test > В моем случае (в BTE), когда в систему > ставятся setup и basesystem, получается: > # du -s -x sandroot.K26513 > 212M sandroot.K26513 отличие в том, что я не уставливал пакеты для разработки как-то gcc, kernel-headers, glibc-devel, perl, python и т.д. т.е. я ставил целью сделать систему, пакеты для которой будут собираться вне системы... > BTE использует вот такой алгоритм: > 1. Команда > apt-get --print-uris > -o Dir::Cache=${root}/var/cache/apt \ > -o Dir::State=${root}/var/lib/apt \ > -o Dir::Etc=${root}/etc/apt \ > -o Debug::pkgProblemResolver=false \ > -o Debug::pkgRPMPM=false \ > -o RPM::RootDir=${root} \ > install имя-пакета если бы в rpm 4.0.3 работал правильно переход в chroot, то с пакетами в chroot-системе можно было бы работать с помощью apt, добавляя -o RPM::RootDir=${chroot}, например: # apt-get -o -o RPM::RootDir=${chroot} install имя-пакета > Дважды повторив эту команду для (последовательно) > setup и basesystem получаем список файлов, которые > необходимо установить для минимальной системы. > > Затем выданный список подсовывается внутри chroot-а > имеющемуся там статическому RPM-у, с соответствующей > заменой пути к файлам на адекватную внутри chroot-а > (в случае BTE -- это /repos) и RPM ставит пакеты. > > Очень важно ставить в два приема -- вначале setup, > затем basesystem. Дело в том, что setup содержит > /etc/{group,passwd} с системными пользователями, > на которые опираются многие системные пакеты. т.е. rpm внутри chroot устанавливает сначала все пакеты из списка, сгенерированного при помощи эмуляции установки пакета setup в chroot, а уже потом - из аналогичного списка для basesystem? > 1. Setup обеспечивает установку архитектурнонезависимых > файлов, содержащих описание системных пользователей, > групп и некоторой другой важной информации. > > > при установке последнего пакета появилось: > > chown: `root.utmp': invalid user > > chown: `root.utmp': invalid user > > такие пользователь и группа в системе есть :) > > Это последствие отсутствия в glibc-core libnss_files. это значит, что файлы из glibc-nss будут возвращены в glibc-core, или же просто будет добавлена зависимость setup от glibc-nss? -- andrei at tvcell d0t ru _______________________________________________ Devel mailing list Devel@linux.iplabs.ru http://www.logic.ru/mailman/listinfo/devel