CDS — 2014: различия между версиями

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску
(Пересборка ядра с поддержкой дисковых квот)
 
(не показано 45 промежуточных версий этого же участника)
Строка 1: Строка 1:
 
=Установка и запуск в работу=
 
=Установка и запуск в работу=
 +
 +
Внимание! В kvm при установке должна быть выбрана конфигурация '''Generic 2.6.x kernel'''
 +
 +
Внимание! Затем вручную нужно переключить тип сетевого интерфейса на '''virtio'''
 +
 +
==Настройка сети==
 +
 +
cl-setup-network --netconf openrc --iface ens3:192.168.10.2:24 --route default:192.168.10.1 --dns 8.8.8.8
 +
 +
'''Внимание!''' не
 +
 +
--iface eth0:off:192.168.10.2:24
 +
 +
, а
 +
 +
--iface eth0:192.168.10.2:24
 +
 +
файл для ручной настройки сети
 +
 +
/etc/conf.d/net
 +
 +
==Переименовать машину==
 +
 +
cl-setup-network --hostname cds-master.local
 +
 +
==Настройка локали и временной зоны==
 +
 +
cl-console --method setup_locale -l ru_RU --timezone Europe/Moscow
 +
 +
==Установка==
 
  ! В виртмашине диски должны быть НЕ virtio, а ide
 
  ! В виртмашине диски должны быть НЕ virtio, а ide
 +
 +
! Не забудьте установить пароль руту
  
 
  cl-install -d /dev/sda1
 
  cl-install -d /dev/sda1
 +
 +
==Устранить зависание машины в гипервзоре==
 +
 +
[http://www.calculate-linux.ru/boards/16/topics/23369 Первоисточник!]
 +
 +
[http://www.calculate-linux.ru/boards/6/topics/25827 Еще первоисточник!]
 +
 +
Цитата (Добавил(а) Данила Жукоцкий 10 месяца назад):
 +
<pre>
 +
P.S. РЕШЕНО.
 +
Итак, разобрался после сравнения dmesg с livecd и установленной системы. Виноват оказался efifb. Он захватывал виртуальный framebuffer,
 +
конфликтовал с uvesafb и вешал гостя в момент попытки погасить экран консоли (как раз спустя нескольких минут неактивности юзверя в виртуальной vnc консоли).
 +
На livecd этого не происходило, так как в livecdшное ядро efifb не вкомпилён.
 +
Как лечить: отредактировать параметры загрузки ядра в конфиге груба, добавить в «video=» «efifb:off,» перед «uvesafb:uwrap»,
 +
или выкинуть все framebuffers совсем пересобрав ядро.
 +
</pre>
 +
 +
Решение для этого проекта:
 +
 +
nano /etc/default/grub
 +
 +
Заменить строку
 +
 +
GRUB_CMDLINE_LINUX="video=uvesafb:ywrap,1024x768-32,mtrr:3,splash=silent,theme:calculate  elevator=cfq doscsi console=tty1 udev quiet"
 +
 +
на
 +
 +
GRUB_CMDLINE_LINUX=" elevator=cfq doscsi console=tty1 udev quiet"
 +
 +
переконфигурировать GRUB командой
 +
 +
grub-mkconfig -o /boot/grub/grub.cfg
 +
 +
перезагрузиться
 +
 +
==Обновить GRUB==
 +
grub-mkconfig -o /boot/grub/grub.cfg
 +
 +
==Обновление системы==
 +
 +
Выполнить обновление сразу дерева портежей и оверлея Calculate, а также базы данных программы eix можно одной командой:
 +
eix-sync
 +
 +
Выполнить обновление portage
 +
emerge portage
 +
 +
Выполнить обновление системы
 +
emerge -uDNa world
 +
 +
==Установка необходимого софта==
 +
 +
утилиту управления квотами и screen
 +
emerge sys-fs/quota app-misc/screen sys-power/acpid
 +
 +
==Пересборка ядра с поддержкой дисковых квот==
 +
 +
[http://www.calculate-linux.ru/main/ru/cl-kernel как это делается по документации]
 +
 +
[http://www.calculate-linux.ru/boards/6/topics/20341?r=20354 как это было в прошлый раз]
 +
 +
В портежах Gentoo есть несколько версий Linux-ядер, решающих различные задачи. Все пакеты с исходным кодом ядра находятся в категории sys-kernel, поэтому вы можете легко их увидеть, выполнив команду:
 +
 +
eix -C sys-kernel
 +
 +
Для сборки нового ядра достаточно установить пакет с исходным кодом ядра либо обновить текущее, командой:
 +
 +
USE="symlink" emerge -1uD sys-kernel/calculate-sources
 +
 +
Флаг USE="symlink" создаст символическую ссылку /usr/src/linux на директорию с исходным кодом ядра. Виртуальный пакет virtual/linux-sources установит последнюю версию используемого в системе ядра.
 +
 +
Если вы хотите пересобрать под свои нужды ядро Calculate, сначала необходимо пересобрать пакет sys-kernel/calculate-sources с отключённым USE-флагом minimal, так как по умолчанию оно поставляется в бинарном виде, даже если вы на небинарном профиле:
 +
 +
echo sys-kernel/calculate-sources -minimal -vmlinuz >> /etc/portage/package.use/custom
 +
emerge calculate-sources
 +
 +
Перед конфигурацией ядра необходимо взять текущий конфиг ядра и скопировать его в директорию /usr/src/linux в файл .config
 +
т.е. как-то так (см. версию ядра):
 +
cp /boot/config-3.13.7-calculate /usr/src/linux/.config
 +
 +
иначе собирётся ядро со стандартным ванильным конфигом и ничего работать не будет (как у меня сегодня ;-) --[[Участник:Vovan|Vovan]] ([[Обсуждение участника:Vovan|обсуждение]]) 23:19, 27 мая 2014 (MSK))
 +
 +
Для изменения параметров ядра перед компиляцией используйте опцию --menuconfig:
 +
 +
cl-kernel --menuconfig
 +
 +
В открывшемся диалоге выставляем настройки в соответствии с картинками:
 +
 +
[[Файл:one.jpg|left|thumb]]
 +
 +
[[Файл:two.jpg|left|thumb]]
 +
 +
<br clear="all">
 +
 +
Для изменения extraversion ядра используется опция --extraversion:
 +
при компилировании ядра 2.6.31 полное имя ядра будет 2.6.31-test
 +
cl-kernel --extraversion test
 +
 +
==Советы из irc==
 +
 +
Система вешается на emerge portage
 +
 +
[16:22] <RodionD> выключи сборку в несколько потоков с make.conf, ищи строку с --jobs=2 поставь 1,
 +
так же убери компиляцию в несколько потоков, это там же MAKEOPTS="-j2" ставь 1

Текущая версия на 20:09, 29 мая 2014

Установка и запуск в работу

Внимание! В kvm при установке должна быть выбрана конфигурация Generic 2.6.x kernel
Внимание! Затем вручную нужно переключить тип сетевого интерфейса на virtio

Настройка сети

cl-setup-network --netconf openrc --iface ens3:192.168.10.2:24 --route default:192.168.10.1 --dns 8.8.8.8

Внимание! не

--iface eth0:off:192.168.10.2:24

, а

--iface eth0:192.168.10.2:24

файл для ручной настройки сети

/etc/conf.d/net

Переименовать машину

cl-setup-network --hostname cds-master.local

Настройка локали и временной зоны

cl-console --method setup_locale -l ru_RU --timezone Europe/Moscow

Установка

! В виртмашине диски должны быть НЕ virtio, а ide
! Не забудьте установить пароль руту
cl-install -d /dev/sda1

Устранить зависание машины в гипервзоре

Первоисточник!

Еще первоисточник!

Цитата (Добавил(а) Данила Жукоцкий 10 месяца назад):

P.S. РЕШЕНО.
Итак, разобрался после сравнения dmesg с livecd и установленной системы. Виноват оказался efifb. Он захватывал виртуальный framebuffer, 
конфликтовал с uvesafb и вешал гостя в момент попытки погасить экран консоли (как раз спустя нескольких минут неактивности юзверя в виртуальной vnc консоли).
На livecd этого не происходило, так как в livecdшное ядро efifb не вкомпилён.
Как лечить: отредактировать параметры загрузки ядра в конфиге груба, добавить в «video=» «efifb:off,» перед «uvesafb:uwrap», 
или выкинуть все framebuffers совсем пересобрав ядро.

Решение для этого проекта:

nano /etc/default/grub

Заменить строку

GRUB_CMDLINE_LINUX="video=uvesafb:ywrap,1024x768-32,mtrr:3,splash=silent,theme:calculate  elevator=cfq doscsi console=tty1 udev quiet" 

на

GRUB_CMDLINE_LINUX=" elevator=cfq doscsi console=tty1 udev quiet" 

переконфигурировать GRUB командой

grub-mkconfig -o /boot/grub/grub.cfg

перезагрузиться

Обновить GRUB

grub-mkconfig -o /boot/grub/grub.cfg

Обновление системы

Выполнить обновление сразу дерева портежей и оверлея Calculate, а также базы данных программы eix можно одной командой:

eix-sync

Выполнить обновление portage

emerge portage

Выполнить обновление системы

emerge -uDNa world

Установка необходимого софта

утилиту управления квотами и screen

emerge sys-fs/quota app-misc/screen sys-power/acpid

Пересборка ядра с поддержкой дисковых квот

как это делается по документации

как это было в прошлый раз

В портежах Gentoo есть несколько версий Linux-ядер, решающих различные задачи. Все пакеты с исходным кодом ядра находятся в категории sys-kernel, поэтому вы можете легко их увидеть, выполнив команду:

eix -C sys-kernel

Для сборки нового ядра достаточно установить пакет с исходным кодом ядра либо обновить текущее, командой:

USE="symlink" emerge -1uD sys-kernel/calculate-sources

Флаг USE="symlink" создаст символическую ссылку /usr/src/linux на директорию с исходным кодом ядра. Виртуальный пакет virtual/linux-sources установит последнюю версию используемого в системе ядра.

Если вы хотите пересобрать под свои нужды ядро Calculate, сначала необходимо пересобрать пакет sys-kernel/calculate-sources с отключённым USE-флагом minimal, так как по умолчанию оно поставляется в бинарном виде, даже если вы на небинарном профиле:

echo sys-kernel/calculate-sources -minimal -vmlinuz >> /etc/portage/package.use/custom
emerge calculate-sources

Перед конфигурацией ядра необходимо взять текущий конфиг ядра и скопировать его в директорию /usr/src/linux в файл .config т.е. как-то так (см. версию ядра):

cp /boot/config-3.13.7-calculate /usr/src/linux/.config

иначе собирётся ядро со стандартным ванильным конфигом и ничего работать не будет (как у меня сегодня ;-) --Vovan (обсуждение) 23:19, 27 мая 2014 (MSK))

Для изменения параметров ядра перед компиляцией используйте опцию --menuconfig:

cl-kernel --menuconfig

В открывшемся диалоге выставляем настройки в соответствии с картинками:

One.jpg
Two.jpg


Для изменения extraversion ядра используется опция --extraversion: при компилировании ядра 2.6.31 полное имя ядра будет 2.6.31-test

cl-kernel --extraversion test

Советы из irc

Система вешается на emerge portage

[16:22] <RodionD> выключи сборку в несколько потоков с make.conf, ищи строку с --jobs=2 поставь 1,
так же убери компиляцию в несколько потоков, это там же MAKEOPTS="-j2" ставь 1