Видео смотреть бесплатно

Смотреть мамки видео

Официальный сайт jetune 24/7/365

Смотреть видео бесплатно

16.04.10 12:35 Shtsh

How-to`sLinux From Scratch. Part1. Подготовка к установке

Данные статьи являются сокращённой вольной интерпретацией руководства LFS. Тут будет даваться перевод необходимых действий для сбора работоспособной ОС с нуля (from scratch) с некоторыми комментариями. Стоит отметить, что я буду делать некоторые действия, которые, возможно, Вам не понадобятся — например, я буду ставить систему в файл для удобного переноса на другой компьютер. И вообще, я собираю систему только для понимания, как это делать, так что для комфортной работы будущей системы понадобится несколько другая конфигурация (например, /sources рекомендуется делать несколько десятков гигабайт, так как там происходит сборка — у меня же этого нету)

Свежую версию руководства можно получить через svn
svn co svn://svn.linuxfromscratch.org/LFS/trunk/BOOK/

После этого можно его собрать в нужном виде и читать.
Пакеты для сборки можно скачать одним файлом отсюда. Подробнее стоит почитать тут.

Естественно, для того, чтобы делать то, что указано ниже, нужно обладать некоторыми знаниями. Самое главное — не копировать тупо команды, а понимать, что они делают и для чего это нужно, адаптируя к конкретной машине.

Это первая статья, которая описывает самый быстрый этап — подготовку к установке LFS.

Сначала нужно создать новый раздел для установки системы. Тестовая сборка LFS, как написано в рукодстве, занимает примерно от 650 Мбайт (32бит) до 710 Мбайт (64бит). Кроме того, потребуется место для сборки файлов. Я пока решил, что гигабайт трёх мне хватит, поэтому создал файл примерно на 3,1GB.
dd if=/dev/zero of=/media/win_d/lfswelinux bs=100M count=30

Дальнейшие операции выполнялись под рутом
1
2
sudo -s
mkfs.ext3 /media/win_d/lfswelinux

Тут мы создаём в файле файловую систему ext3. mkfs ругнётся, что это не блочное устройство, на что мы ответим, что нам всё равно. Далее для удобства создадим переменную LFS, где будет храниться путь к точке монтирования нашего раздела с LFS, создадим такую директорию и примонтируем туда наш образ.
1
2
3
4
export LFS=/mnt/lfs
mkdir -vp $LFS
mount -o rw,loop /media/win_d/lfswelinux $LFS
mkdir -v $LFS/usr


После этого создаём там папочку sources и присваиваем ему права 1777. Для чего нужна единичка в начале? Это так называемый sticky-bit. В результате у нас все могут писать в этот каталог, но удалять можно только те файлы, владельцем которого являешься.
1
2
mkdir -v $LFS/sources
chmod -v a+wt $LFS/sources


Так как при установке будет собираться временная система, то создаётся специальный каталог /tools для того, чтобы потом отделять её от основной системы
1
2
mkdir -v $LFS/tools
ln -sv $LFS/tools /

В результате в системе-хосте появился каталог /tools. Это будет полезно при работе инструментов с хоста, чтобы собранные программы понимали, что они находятся в /tools, а не /mnt/lfs/tools.
Так как собирать систему под рутом не есть хорошая идея, есть смысл создать специального пользователя для данной цели.
1
2
3
4
5
6
groupadd lfs
useradd -s /bin/bash -g lfs -m -k /dev/null lfs
passwd lfs
chown -v lfs $LFS/tools
chown -v lfs $LFS/sources
su - lfs

В результате этих действий мы создаём пользователя, его каталог, назначаем ему шелл /bin/bash, запрещаем копирование из /etc/skel и добавляем его в группу lfs. Далее там всё логично — задаём пароль, делаем владельцем $LFS/tools и $LFS/sources и логинимся под ним.

Теперь настройка пользователя. Сначала сделаем так, чтобы все переменные окружения (кроме HOME, TERM, и PS1) были пустыми в целях безопасной и корректной сборки.
1
2
3
cat > ~/.bash_profile << "EOF"
exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
EOF


Далее настраиваем .bash
1
2
3
4
5
6
7
8
9
cat > ~/.bashrc << "EOF"
set +h
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
LFS_TGT=$(uname -m)-lfs-linux-gnu
PATH=/tools/bin:/bin:/usr/bin
export LFS LC_ALL LFS_TGT PATH
EOF

Сначала тут отключаем функцию хеширования bash, которая запоминает полный путь к программам, чего нам не нужно. Затем задаём umask, то есть новые созданные файлы буду иметь права 755, задаём переменную LFS, задаём локаль (в основном для совместимости с glibc < 2.2.4), задаём описание машины и PATH и делаем следующее.
source ~/.bash_profile


Так как сейчас у многих несколько процессоров (ядер), то есть смысл указать make, что нужно работать в несколько потоков. Для двухъядерного процессора я указал, что нужно использовать 2 потока.
set MAKEFLAGS='-j 2'


После этого можно приступать к сборке.




Username 16.04.10 13:46 # +1
Для двухъядерного процессора я указал, что нужно использовать 2 потока.

рекомендуют количество ядер + 1
Shtsh 16.04.10 13:52 # +0
Да, я это читал. Но в руководстве LFS для двухъядерного процессора было выбрано 2, и я не думаю, что разница будет очень уже большая. Да и хотелось бы что-то параллельно на компьютере делать, а при большом количестве потоков хост-система (как я понимаю) будет слишком сильно для этого нагружена.
Username 16.04.10 13:58 # +0
да вообще ты прав, все эти флаги - по-моему унылая попытка увеличить скорость света. Бррррр вспомнил как ставил генту. Фу прям.
CrankY 16.04.10 20:24 # +0
Несколько раз пробовал собирать LFS, но... как говорится, "то ли лыжи не едут..." - постоянные проблемы при сборке, обычно затыкаюсь на этапе второй сборки gcc.

Короче, подумал, что не стоит эта штука моего времени, и пока забил)
У меня так же с Gentoo было, но в конце концов собрал.
Может, и LFS когда-нить получится)
Shtsh 16.04.10 20:41 # +0
У меня в первый раз не получилась вторая сборка gcc, когда я забыл туда скопировать папки mpfr и gmp
Как вариант, может помочь сборка в один поток
Ну, и традиционный совет - попробовать проверить память при помощи memtest
predator 16.04.10 21:37 # +1
Странно. Мне сборка LFS показалась простым копипастом в командную строку. Были проблемы, но только из-за моей невнимательности.
Shtsh 16.04.10 22:49 # +2
ну, лично моё мнение - сейчас сборка LFS имеет реальный смысл лишь в учебных целях. В обычных условиях удобнее использовать ту же генту или слаку. А для того, чтобы разобраться - просто копипастить не продуктивно.
zivot_je_cudo 19.04.10 11:59 # +0
http://welinux.ru/post/861/

Лучшие блоги (все 133)
Топ пользователей Топ блогов
Топ пользователей Топ блогов
Элита (все 2589 из 203 городов)
Топ пользователей Топ блогов
welinux.ru

Смотреть видео онлайн

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн