From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <45C35141.6070004@altlinux.org> Date: Fri, 02 Feb 2007 17:57:05 +0300 From: Mikhail Yakshin User-Agent: Thunderbird 1.5.0.5 (X11/20060822) MIME-Version: 1.0 To: ALT Devel discussion list References: <45C321A4.9090403@altlinux.org> <45C3247A.2020904@altlinux.org> <45C32733.5000402@altlinux.org> <45C34ADB.9010804@altlinux.org> In-Reply-To: Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: [devel] propagator - diet vs glibc X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.9rc1 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Feb 2007 14:58:29 -0000 Archived-At: List-Archive: List-Post: Nick S. Grechukh пишет: >>>>> нет, туда кладутся только из списка profile/modules. >>>> Я как бы немножко в курсе ;) >>> так откуда 30-40 мегабайт? ;) >> Ну 30-40 - это если класть все по максимуму. > > ага. так ведь в mar/tar/cpio они ненамного меньше были бы. Они примерно так: Выборочные + запакованные ~ 2.5 мега Выборочные + незапакованные ~ 9-10 мегов Все + запакованные ~ 10-11 мегов Все + незапакованные ~ 35-50-55 мегов Отсюда и решать, сколько не жалко требовать с пользователя. Кстати, относительно pivot'а в propagator - он делается так: /* overmount image under new root if needed */ if ( statfs(IMAGE_LOCATION, &sfs) ) fatal_error("statfs "IMAGE_LOCATION); /* if something is mounted under IMAGE_LOCATION ? */ if ( sfs.f_type != RAMFS_MAGIC && sfs.f_type != TMPFS_MAGIC ) { if ( mount(IMAGE_LOCATION, "." IMAGE_LOCATION, NULL, MS_MOVE, NULL) ) fatal_error("overmounting image location"); /* test for nested mount: disk or nfs with iso image */ if ( statfs(IMAGE_LOCATION, &sfs) ) fatal_error("nested statfs "IMAGE_LOCATION); if ( sfs.f_type != RAMFS_MAGIC && sfs.f_type != TMPFS_MAGIC ) if ( mount(IMAGE_LOCATION, "." IMAGE_LOCATION "/isolinux", NULL, MS_MOVE, NULL) ) fatal_error("overmounting nested image location"); } umount("/sys"); umount("/proc/bus/usb"); umount("/proc"); /* Delete rootfs contents */ if ( nuke_dir("/") ) fatal_error("nuking initramfs contents"); /* Overmount the root */ if ( mount(".", "/", NULL, MS_MOVE, NULL) ) fatal_error("overmounting root"); /* chroot, chdir */ if (chroot(".") || chdir("/")) fatal_error("chroot"); Судя по вот этому вызову nuke_dir - если он действительно отрабатывает и у нас ramfs/tmpfs - то все должно быть хорошо. Просто мы поднимаем планку минимального количества памяти, на которой запустится наш новый propagator. -- WBR, Mikhail Yakshin AKA GreyCat