Установка Longene 0.3

Документация связанная с установкой, настройкой и работой пользовательского ПО
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Установка Longene 0.3

Post by Raven » 03 Jun 2010, 19:43

Подготовка:
Longene-0.3.0 поддерживает только привилегии пользователя root, поэтому для работы нужно перейти в режим rоot командой su либо залогиниться как root.
Далее выкачиваем архив с Longene-0.3.0 c официального сайта, либо с нашего файлохранилища.

Учтите - некоторых утилит, библиотек в вашем установленном дистрибутиве может не оказаться, их нужно будет доустановить:
Для ubuntu:

Code: Select all

apt-get install build-essential 
(устанавливаем install gcc, make, patch, и все их зависимости)

Code: Select all

apt-get install libncurses5-dev   
библиотека для make-menuconfig
Загружаем с wine.mirror.linux.kgпоследнюю версию wine и собираем ее (не буду пояснять как, информации по сборке исходных кодов на форуме и вообще в интернете достаточно), либо ставим свежую версию с репозитория (опять же на примере ubuntu):

Code: Select all

 apt-get build-dep wine1.2
I. Сборка ядра.
Последний релиз Longene расчитан на работу с ядром linux-2.6.30, поэтому выкачиваем его с kernel.mirror.linux.kg в /usr/src, а затем распаковываем:

Code: Select all

tar jxvf linux-2.6.30.tar.bz2
Теперь ядро нужно пропатчить для работы с Longene, патч находится в выкачанном нами архиве Longene-0.3.0.tar.bz2 под именем Longene-0.3.0-linux-2.6.30.diff. Идем в корень директории с ядром linux-2.6.30:

Code: Select all

cd linux-2.6.30
и патчим:

Code: Select all

patch –p1 < /путь к папке с патчем/longene-0.3.0-linux-2.6.30.diff
Далее составляем конфигурацию ядра (.config). Работоспособный конфиг уже создается патчем, но кое-какие мелочи лучше подправить вручную.

Code: Select all

make menuconfig
Поравляем необходимые нам опции и жмем “ save and exit”.

Если вы решите составить свой вариант конфига, хорошим тоном считается использование рабочего конфига с вашей системы - файла config-*** из директории /boot. Скопируйте его в папку с исходниками модифицируемого ядра linux-2.6.30 и мереименуйте в .config, а затем сконфигурируйте ядро:

Code: Select all

make menuconfig
В конфигураторе необходимо будет включить следующие опции:

Code: Select all

1. [*] General setup -> Longene support
      2. -*- General setup ->  Configure standard kernel features (for small systems) -> Load all symbols for debugging/ksymoops
      3. [*] General setup ->  Configure standard kernel features (for small systems) ->  Do an extra kallsyms pass
      4. [*] General setup -> Disable heap randomization
      5. [*] File systems -> Native language support -> 
Simplified Chinese charset (CP936, GB2312)
и исключить следующие:

Code: Select all

1. [ ] Enable loadable module support -> Module versioning support
      2. [ ] Processor type and features -> Symmetric multi-processing support
По завершению конфигурирования выполняем следующие команды:

Code: Select all

make
make modules_install
make install
Затем необходимо скопировать собранное ядро в /boot

Code: Select all

cp /usr/src/linux-2.6.30/arch/x86(тут указывается архитектура вашей машины, будьте внимательны)/boot/bzImage /boot/vmlinuz-2.6.30-longene-0.3.0
В некоторых дистрибутивах linux, например таких как Ubuntu, Альт Линукс вам необходимо будет создать вручную образ виртуального диска initrd

Code: Select all

mkinitramfs –o /boot/initrd.img-2.6.30-longene-0.3.0  /lib/modules/2.6.30-longene-0.3.0
Где initrd.img-2.6.30-longene-0.3.0 это имя файла initrd.img созданного вами, вы можете использовать для названия несколько иные варианты на ваше усмотрение. Далее необходимо будет подправить загрузчик вашей операционной системы и включить в него секцию загрузки вашего свеже собранного ядра:
Для ubuntu необходимо подправить файл /boot/grub/menu.list для ubuntu версии 9.04 или старше, для ubuntu 9.10 и младше подправляется файл /boot/grub/grub.cfg, для Альт Линукс (и вообще дистрибутивов использующих lilo) правится файл /etc/lilo.conf. Необходимо скопировать секцию дефолтной загрузки и заменить слова vmlinuz и initrd.img названиями соответствующих файлов созданных Longene (как мы помним это vmlinuz-2.6.30-longene-0.3.0 и initrd.img-2.6.30-longene-0.3.0), а также меняем название секции. Затем заставляем загрузчик обновить параметры:

Code: Select all

lilo 
(для Альт Линукс)
grub-install /dev/sdX
(для Ubuntu, где sdX - ваш загрузочный раздел)
Перезагружаем систему и видим новую запись в загрузочном меню, выбираем ее и загружаемся с новым ядром.

II. Сборка Wine для Longene
Заходим в папку с Wine для Longene (wine-1.0-longene), и даем следующие команды:

Code: Select all

./configure
make depend && make
make install
В случае наличия установленного простого Wine перед всеми этими плясками с бубном и напильником вам необходимо будет удалить все файлы exe.so из /usr/lib/wine:

Code: Select all

rpcss.exe.so
explorer.exe.so
services.exe.so
winemenubuilder.exe.so
Открываем /etc/ld.so.conf и добавляем путь к библиотекам: /usr/local/lib и даем команду:

Code: Select all

ldconfig
III. Сборка модуля Longene
Заходим в папку с модулем и собираем:

Code: Select all

make
Компилятор сгенерирует файл модуля unifiedkernel.ko, теперь необходимо подгрузить его

Code: Select all

insmod unifiedkernel.ko
Предупреждение: После каждой перезагрузки модуль автоматически подгружаться не будт, поэтому необходимо будет подгружать его вручную каждый раз при запуске системы.

Теперь вы можете использовать Longene и радоваться себе.

IV. Деинсталляция Longene
Для удаления Wine для Longene топаем в папку wine-1.0-longene и командуем:

Code: Select all

make uninstall
make distclean

Для деинсталляции модуля Longene заходим в папку с модулем и командуем:

Code: Select all

rmmod unifiedkernel
make clean 

Для удаления ядра Linux-2.6.30-longene-0.3.0 заходим в корень папки с исходниками ядра и даем команду:

Code: Select all

make distclean
Удаляем добавленные нами секции из файла конфигурации загрузчика и даем команду обновления меню загрузчика.

Источник: http://www.longene.org/
Перевод: мой :)
Я не злопамятный, я просто часто ковыряю логи
Trust
Юзер
Юзер
Posts: 7
Joined: 23 Jun 2011, 11:13

Re: Установка Longene 0.3

Post by Trust » 23 Jun 2011, 11:16

Доброго утра!!

Ты можешь описать по-подробнее вот это действие:
"Необходимо скопировать секцию дефолтной загрузки и заменить слова vmlinuz и initrd.img названиями соответствующих файлов созданных Longene (как мы помним это vmlinuz-2.6.30-longene-0.3.0 и initrd.img-2.6.30-longene-0.3.0), а также меняем название секции"

Я не могу найти секцию загрузки в grub.cfg
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Re: Установка Longene 0.3

Post by Raven » 23 Jun 2011, 12:31

Ось какая?
Вот мой пример с АльтЛинукс Centaurus:

Code: Select all

menuentry "ALT Linux 6.0.0 Centaurus " --class gnu-linux --class gnu --class os {
	savedefault
	load_video
	insmod part_msdos
	insmod reiserfs
	set root='(hd0,msdos6)'
	search --no-floppy --fs-uuid --set d8c121bb-0919-4876-9c59-0140b720f3cd
	echo	'Loading Linux  ...'
	linux	/boot/vmlinuz root=UUID=d8c121bb-0919-4876-9c59-0140b720f3cd ro  noapic pci=nomsi acpi=off panic=30 splash=silent
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initrd.img
}
Аналогичную секцию нужно скопировать и вставить ниже, а затем заменить значения
menuentry "ALT Linux 6.0.0 Centaurus "
linux /boot/vmlinuz
initrd /boot/initrd.img
Изменив в 1 строке название на желаемое, в 2 остальных подставить те файлы, которые созданы пересборкой ядра.
Я не злопамятный, я просто часто ковыряю логи
Trust
Юзер
Юзер
Posts: 7
Joined: 23 Jun 2011, 11:13

Re: Установка Longene 0.3

Post by Trust » 24 Jun 2011, 08:26

Вообщем не сработало... У меня Ubuntu 10.04 сделал как ты написал...Вот мой отрывок:
menuentry 'Ubuntu, с Linux 2.6.32-21-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set 16e0bf81-afb3-404c-a55c-b0b857c10ce1
linux /boot/vmlinuz-2.6.32-21-generic root=UUID=16e0bf81-afb3-404c-a55c-b0b857c10ce1 ro quiet splash
initrd /boot/initrd.img-2.6.32-21-generic
}

И ещё, на команду mkinitramfs –o /boot/initrd.img-2.6.30-longene-0.3.0 /lib/modules/2.6.30-longene-0.3.0, пишет что не нашёл библиотеку, чё я пропустил??
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Re: Установка Longene 0.3

Post by Raven » 24 Jun 2011, 09:12

Давай всю ругань сюда
Я не злопамятный, я просто часто ковыряю логи
Trust
Юзер
Юзер
Posts: 7
Joined: 23 Jun 2011, 11:13

Re: Установка Longene 0.3

Post by Trust » 24 Jun 2011, 09:37

root@ubuntu-desktop:/usr/src/linux-2.6.30# mkinitramfs -o /boot/initrd.img-2.6.30-longene-0.3.0 /lib/modules/2.6.30-longene-0.3.0
Cannot find /lib/modules/2.6.30-longene-0.3.0
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Re: Установка Longene 0.3

Post by Raven » 24 Jun 2011, 10:32

Code: Select all

ls /lib/modules/
что говорит?
Я не злопамятный, я просто часто ковыряю логи
Trust
Юзер
Юзер
Posts: 7
Joined: 23 Jun 2011, 11:13

Re: Установка Longene 0.3

Post by Trust » 24 Jun 2011, 10:40

2.6.30 2.6.32-21-generic
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Re: Установка Longene 0.3

Post by Raven » 24 Jun 2011, 11:23

Так и думал - ты ядро longene не собрал.
Я не злопамятный, я просто часто ковыряю логи
Trust
Юзер
Юзер
Posts: 7
Joined: 23 Jun 2011, 11:13

Re: Установка Longene 0.3

Post by Trust » 24 Jun 2011, 11:37

А што нужно? Я по твоим записям ничё не нашёл...)
Post Reply

Return to “Документация *nix”