На главную    Контакты    Skymonk здесь    Правила    Статистика сайта    Вход / Регистрация
Gentoo 2011.01

Gentoo 2011.01Gentoo 2011.01 с поддержкой видео ATI (FGLRX), Для владельцев карт Radeon 9500 и выше.

 

 

 

 

Инструкция по установке: 
1). Записать образ на DVD-RW и загрузиться. Можно установить при этом систему на жёсткий диск. Установка на жёсткий диск производится всего одной командой. (Запуск образа под виртуальной машиной не поддерживается)

 

Установка:

# calculate -d /dev/sdXX
(Где XX - имя и номер раздела жёсткого диска, sda2 - к примеру)

Номер раздела указать надо обязательно!, если указать диск целиком
sda - к примеру, то утилита calculate разметит диск на своё усмотрение,
и сотрёт данные. (используется для установки на чистый жёсткий диск).

Список наиболее часто используемых опций установки 
--set-format=reiserfs (ext4, ext3, ext2, jfs, xfs) - формат файловой системы; 
--set-video_resolution=1280x1024 (1024x768, 1152x864, 1280x800 и т.д.) - разрешение экрана (актуально, если текущее разрешение экрана вас не устраивает); 
--set-hostname=linux - сетевое имя компьютера 
--set-mbr=off - не изменять MBR во время установки (установите в 'off', если вы хотите использовать свой загрузчик); 

Дополнительные параметры 
--set-erase=off - не выполнять форматирование раздела перед установкой (используйте, если уверены). 

Установка на жёсткий диск с LiveDVD, занимает примерно 6-10 минут, в зависимости от используемого железа.


2). Или распаковать образ системы Stage4, на свободный раздел винчестера.
Инструкцию по установке из stage4 можно найти в Gentoo wiki

Дополнительно, при установке из stage4 необходимо сгенерировать initrd,
который будет прописан в grub. Можно конечно использовать genkernel, но лучше
выяснить какие модули работают в ваше системе, а какие нет.
И сгенерировать оптимальный initrd.


genkernel

включены все модули:

# genkernel --splash=emerge-world --unionfs --all-ramdisk-modules --disklabel --slowusb ramdisk

или (необходимый стандартеый набор модулей)

# genkernel --splash=emerge-world --unionfs --disklabel --slowusb ramdisk

потом

# mv /boot/initramfs-* /boot/initrd

Cкрипт находяшийся ниже поможет сгенерировать оптимальный initrd:(при установке с livedvd используется именно этот метод, делается автоматически)

#!/usr/bin/perl
use Cwd;
use IO::Socket;
use Time::Local;

my %data; #объявим хэш переменных

initrd();
beep();
exit;

#------------------------------------------------------------------------------
# Создадим новый initrd файл
#------------------------------------------------------------------------------
sub initrd{
printmes(gettext('Create new initrd file')); printmes("...");
if(!initrd_clean()){
beep();
printmes(" ".gettext('error')."!n");
}
}

#------------------------------------------------------------------------------
# Создадим урезанный по железу initrd файл
#------------------------------------------------------------------------------
sub initrd_clean{
my $chroot = $_[0];
if($chroot && number_ver($data{os}) $dep){
$mod_run{$1} ++;
}
$mod_all{$1} ++;
}
}

#получим пути к модулям
foreach(keys %mod_all){
my $type = `modinfo $_ | grep "filename:"`;
chomp $type;
$type=~m/^filename:s+([^s]+)$/;
$mod_all{$_} = $1;
}

#уберем некоторые из работающих модулей
foreach(keys %mod_run){
if(
$mod_all{$_}!~m#/kernel/# ||
$mod_all{$_}=~m#/kernel/fs/cifs/# ||
$mod_all{$_}=~m#/kernel/fs/nfs/#
){delete $mod_run{$_};}
}

#переведем модуль fglrx в статус работающего
foreach(keys %mod_all){
if(
$mod_all{$_}=~m#fglrx.ko#
){$mod_run{$_}++;}
}

#объединим работающие модули с зависимостями
foreach(keys %mod_run){
if($mod_dep{$_}){
foreach(split /,/, $mod_dep{$_}){
$mod_run{$_} ++;
}
}
}

#распакуем initrd
my $tmpdir = "$chroot/tmp/initrd";
`$data{path} rm -rf $tmpdir`;
`$data{path} mkdir $tmpdir`;
chdir($tmpdir);

if(!-e "$chroot/boot/initrd-install"){
`$data{path} cp -a $chroot/boot/initrd-ati $chroot/boot/initrd-install`;
}
`$data{path} cp $chroot/boot/initrd-install $tmpdir/initrd-install.gz`;
`$data{path} gunzip $tmpdir/initrd-install.gz`;
`$data{path} cat $tmpdir/initrd-install | cpio -idv >/dev/null 2>&1`;
`$data{path} rm $tmpdir/initrd-install`;

#удалим не работающие модули из initrd
foreach(`$data{path} find $tmpdir/lib/modules/ -name *.ko`){
m//([^/]+).ko$/;
if(!$mod_run{$1}){`rm $_`;}
}

#соберем распакованный initrd
`$data{path} find * | cpio -o --quiet -H newc | gzip -9 > $chroot/boot/initrd`;

chdir($ENV{PWD});
`$data{path} rm -rf $tmpdir`;

printmes(" ".gettext('done')); printmes(".n");
return 1;
}
#------------------------------------------------------------------------------
# Звуковое предупреждение
#------------------------------------------------------------------------------
sub beep{
system "echo -e -n "a"";
}
#------------------------------------------------------------------------------
#
# Выведем сообщение в текущей локали
#
#------------------------------------------------------------------------------
sub printmes{
if($data{NOMES}){return "";} #флаг не печатать сообщения

#определим наличие установленной программы gettext
#и очистим файл лога
if(!defined $date{gettext}){
my $gettext = `$data{path} which gettext`; chomp $gettext;
if($gettext){ $date{gettext}++; }
else{ $date{gettext}=''; }
}

#считаем входящее сообщение
my $mes = $_[0];
$mes=~s/'/"/g;

#ведем лог
$data{LOG} .= $mes;
if($date{gettext}){
my ($from, $after);
#обрежем левые и правые отступы для перевода фразы
if($mes=~m/^(s*)(.+)([!?:.]s*)$/ || $mes=~m/^(s*)(.+)(s*)$/){
$from = $1; $mes = $2; $after = $3;
}
if($mes){
my $text;
if($mes!~/^-/){$text = "gettext -n -d calculate -s '$mes'";}
else{$text = "echo -n '$mes'";}
system "export TEXTDOMAINDIR='$data{dir}/install/i18n'; echo -n '$from'; $text; echo -n '$after'";
}
}else{
print $mes;
}

return 1;
}

#------------------------------------------------------------------------------
# Локализация. Процедура нужна для извлечения переводимых строк xgettext-ом
#------------------------------------------------------------------------------
sub gettext{
return $_[0];
}

 

Скачать с Letitbit.net


Другие новости по теме:


Добавление комментария
. .